Money movement and financial logic
Insurance platform testing
Insurance platform testing checks that quote engines, underwriting rules, policy changes, claims, and carrier or MGA data exchange produce the premium, decision, and payment the rules define. Insurtech companies and MGAs receive a rating and quote engine test matrix, underwriting rule scenarios, a policy lifecycle and claims workflow test suite, and a carrier and MGA integration test report.
What insurance platform testing covers
A defect in a rating, underwriting, or claims rule repeats on every policy or claim that takes the same path: a wrong premium, a policy bound outside the carrier's authority, or a late or duplicate claim payment. Licence context and state claim deadlines for insurtech are on the segment page. Sources were checked on 2026-09-16.
Rating and quote engines
Each rating factor band is tested below, at, and above its boundaries: driver age, property value, territory code, deductible, limit, and claims history. Tests confirm that the rate table version follows the policy effective date and that a quote reprices when an answer changes after quote.
Rounding is tested against the rating manual. On a synthetic auto policy with an annual base premium of $612.00 and factors of 1.137 and 0.915, rounding half up after each factor gives an annual premium of $636.69, and rounding half up only on the final premium gives $636.70. The matrix records the rule the manual states and fails the other result. Fee, tax, and instalment arithmetic is recalculated by financial calculation testing.
Underwriting rules and delegated authority
Knockout answers, referral thresholds, and accept or decline outcomes are tested per rule, with each third-party report response: hit, no hit, timeout, and a report that arrives after the decision. The NAIC Managing General Agents Act (Model 225, 2002 edition), the model for state MGA laws, lists appropriate underwriting guidelines among the minimum contract provisions in Section 4F(1): maximum annual premium volume, the basis of the rates, types of risks, maximum limits of liability, exclusions, territorial limitations, cancellation provisions, and the maximum policy period. Each guideline becomes a boundary test: a limit above the maximum, a risk address outside the territory, or a term one day longer than the maximum refers or declines instead of binding.
When an underwriting decision is based solely on automated processing, produces legal or similarly significant effects, and relies on the contract or explicit consent exception, GDPR Article 22(3) states that the controller shall implement suitable measures, at least the right to obtain human intervention, to express a point of view, and to contest the decision. Under Article 22(4), such decisions shall not be based on special categories of data, including data concerning health, unless Article 9(2)(a) or (g) applies and suitable safeguarding measures are in place. Tests send declined applications through the review route and check that health answers reach a decision only with a recorded Article 9(2) basis; see GDPR testing requirements.
Policy lifecycle
Scenarios move synthetic policies through quote, bind, issue, first payment, endorsement, renewal, cancellation, reinstatement, and non-renewal. Tests compare each transaction's effective date with its entry date, including a backdated endorsement that crosses a renewal, and check that billing, documents, and the bordereau pick up the change.
On a synthetic annual policy with a $1,200.00 premium and a 365-day term, cancellation by the insured after 73 days returns $960.00 on a pro rata basis (1,200.00 × 292 ÷ 365). At a 15% commission rate in the synthetic MGA contract, $144.00 of commission is clawed back on the next premium bordereau. Cancellation for non-payment is tested with payment retries in the grace period and the notice date the product rules set.
Claims workflows
Claims tests run from first notice of loss through coverage check, reserve, document requests, partial acceptance, denial, reopening, and payment. The coverage check uses the policy version in force on the date of loss. Where the contract lets the MGA settle claims, Model 225 Section 4I(2) lists when a copy of the claim file goes to the insurer: the claim has the potential to exceed an amount set by the commissioner or exceeds the company limit, whichever is less; involves a coverage dispute; may exceed the MGA's settlement authority; is open for more than six months; or is closed by payment of the lower of the commissioner's or company's amount. Each trigger gets a routing test on both sides of its threshold. Payout tests retry a payment after a timeout and check that the claimant receives one payment (idempotency guide).
Carrier and MGA integrations
Integration tests cover carrier rating and policy APIs, ACORD XML or AL3 policy messages, first notice of loss feeds, and premium and claims bordereaux. Bordereau tests reconcile each row with the policy and claims ledgers for the period, including late endorsements and cancellations. For Lloyd's business, the Coverholder Reporting Standards (version 5.2) set the core risk, premium, and claims data for binding authority agreements incepting since July 2017, and field checks run against that data set. Where electronic claims files exist, Model 225 Section 4J requires the contract to address their timely transmission, so tests measure the transfer time per claim file against the window in the contract.
Deliverables
Rating and quote engine test matrix
A matrix that tests each rating factor band below, at, and above its boundary against the rate version for the policy effective date and a reference premium from the rating manual, for actuarial and engineering leads.
Underwriting rule scenarios
Scenarios that run synthetic applications through each knockout, referral, and authority limit rule and record the accept, refer, or decline outcome that the carrier contract and underwriting guidelines require.
Policy lifecycle and claims workflow test suite
An automated suite that moves synthetic policies from quote to renewal or cancellation and synthetic claims from first notice of loss to payment, and checks premium, refunds, reserves, referrals, and payouts at each step.
Carrier and MGA integration test report
A report of each carrier API, policy message, claim file transfer, and premium or claims bordereau tested, with row-level reconciliation to the policy and claims ledgers, for the carrier's delegated authority team.
How insurance platform tests fit your release process
Pull requests. The rating and quote engine test matrix and the underwriting rule scenarios run in your CI on each change to rating code, a rule, or a referral threshold. A rule change without a matching scenario fails the build.
Rate and product changes. New rate tables, factor bands, and authority limits often ship as configuration with a future effective date. Each loaded version runs the matrix twice, with the test clock before and after the effective date, so quotes on the old version and renewals on the new version are both checked before go-live.
Test environments and data. Applicants, policies, and claims are synthetic, including health answers, claims histories, and bank details for refunds and payouts. No real policyholder data or payment account data enters a test environment; erasure and retention checks on claim files belong to data privacy testing. Lifecycle and claims suites run on a controlled clock, so one nightly run covers renewals, cancellation windows, and a claim open for six months.
Carrier onboarding. A new carrier or MGA contract triggers the integration suite against the carrier's sandbox or file specification: authority limits, bordereau layout, and claim file transfer. The carrier and MGA integration test report goes to the carrier before the first live policy.
After release. A smoke run quotes, binds, endorses, and cancels a flagged synthetic policy and files a claim on it, then checks the premium, documents, and bordereau line.
Evidence. Each release stores the matrix, scenario results, suite results, and integration report with the rate version and carrier contract version they cover. The files are ready for the on-site review of underwriting and claims operations that Model 225 Section 5C requires the insurer to conduct at least semi-annually.
Handover. Suites, rating reference worksheets, and synthetic data generators live in your repository. Your actuaries and underwriters own rates and rules, and your engineers run every suite without us.
Sample deliverable
Sample, synthetic data
| Rule ID | Rule and reference | Test values below, at, and above the boundary | Expected outcome | Actual outcome | Result |
|---|---|---|---|---|---|
| TM-STR-01 | Transaction monitoring structuring rule: open an alert when one customer makes two or more cash deposits on one business day, each below USD 10,000.00, that total more than USD 10,000.00. Built on 31 CFR 1010.313(b): multiple currency transactions shall be treated as a single transaction if the institution knows they are by or on behalf of any person and total more than $10,000 during any one business day | Below: two cash deposits totalling USD 9,999.99; at: two cash deposits totalling USD 10,000.00; above: two cash deposits totalling USD 10,000.01 | The USD 9,999.99 and USD 10,000.00 totals open no structuring alert; the USD 10,000.01 total opens a structuring alert and a currency transaction report flag | The USD 9,999.99 and USD 10,000.00 totals opened no structuring alert; the USD 10,000.01 total opened a structuring alert and a currency transaction report flag | Passed, 3 of 3 test values, run 2026-09-14 |
| SAN-SCORE-01 | Sanctions name-match score threshold: open a screening alert and hold the payment when the name match score against a sanctions list entry is 85 or higher. Configured screening policy; no regulation sets the score | Below: match score 84; at: match score 85; above: match score 86, each for a synthetic customer name against a synthetic list entry | Match score 84 opens no alert; match scores 85 and 86 open a screening alert and hold the payment | Match scores 84 and 85 opened no alert and released the payment; match score 86 opened a screening alert and held the payment | Failed: the comparator uses greater than 85 instead of 85 or higher; defect DEF-2210, critical severity, blocks release |
| CBK-DL-13.1 | Chargeback response deadline for Visa Dispute Condition 13.1 (Merchandise/Services Not Received): block submission of the response package after the network time limit. Visa Core Rules and Visa Product and Service Rules, 18 April 2026 edition, section 11.2.3, Table 11-2: the Dispute Response time limit is 30 calendar days from the Dispute Processing Date, with listed regional exceptions for some domestic transactions | Below: calendar day 29 after the Dispute Processing Date; at: calendar day 30; above: calendar day 31, all dates counted in UTC | Calendar days 29 and 30 accept the response package for submission; calendar day 31 blocks submission and marks the dispute case as expired | Calendar days 29 and 30 accepted the response package for submission; calendar day 31 blocked submission and marked the dispute case as expired | Passed, 3 of 3 test values, run 2026-09-14 |
| COL-CALL-01 | Regulation F call frequency: block a further collection call to a person about a particular debt after seven calls within seven consecutive days. 12 CFR 1006.14(b)(2)(i)(A) and (b)(2)(ii): subject to the exclusions in (b)(3), a debt collector is presumed to comply if it places a telephone call to a particular person about a particular debt not more than seven times within seven consecutive days, and is presumed to violate the rule if it places calls in excess of that frequency | Below: sixth call to one person about one debt within seven consecutive days; at: seventh call; above: eighth call | The sixth and seventh calls are placed; the eighth call is blocked by the dialer and rescheduled after the seven-consecutive-day period | The sixth and seventh calls were placed; the eighth call was blocked by the dialer and rescheduled after the seven-consecutive-day period | Passed, 3 of 3 test values, run 2026-09-14 |
| EXP-RCPT-01 | Expense policy receipt threshold: require a receipt before submission of a non-lodging expense of USD 75.00 or more. 26 CFR 1.274-5(c)(2)(iii)(A)(2): except as provided in (c)(2)(iii)(B), documentary evidence is required for any expenditure other than lodging of $75 or more, except that documentary evidence for transportation charges is not required if not readily available | Below: meal expense of USD 74.99; at: meal expense of USD 75.00; above: meal expense of USD 75.01 | The USD 74.99 meal expense submits without a receipt; the USD 75.00 and USD 75.01 meal expenses are blocked until a receipt is attached | The USD 74.99 and USD 75.00 meal expenses submitted without a receipt; the USD 75.01 meal expense was blocked until a receipt was attached | Failed: the rule uses greater than USD 75.00 instead of USD 75.00 or more; defect DEF-2213, medium severity, fix scheduled for the next release and does not block this release |
| MD-ENT-01 | Market data non-professional subscriber entitlement: grant the non-professional entitlement only to a natural person who is not registered or qualified in any capacity with the SEC, the CFTC, any state securities agency, or any securities exchange or association; not engaged as an investment adviser under Section 202(a)(11) of the Investment Advisers Act of 1940, whether or not registered; and not employed by an exempt bank or organization to perform functions that would require registration. Nasdaq Equity 7, Section 147(d)(4)(A), as quoted in SEC Release No. 34-94466 of 18 March 2022 | Below: natural person with no registration and no adviser role; at: natural person acting as an unregistered investment adviser; above: subscriber account opened in a company name | Only the natural person with no registration and no adviser role receives the non-professional entitlement; the unregistered investment adviser and the company account receive the professional entitlement | The natural person with no registration and the unregistered investment adviser received the non-professional entitlement; the company account received the professional entitlement | Failed: the status attestation checks registration only, so subscriber counts reported to the exchange are wrong; defect DEF-2211, high severity, blocks release |
| CLM-AUTO-01 | Claim auto-approval limit: approve a claim without adjuster review when the payable amount after the deductible is XTS 2,500.00 or less. Configured claims authority limit; no regulation sets the amount | Below: payable amount of XTS 2,499.99; at: payable amount of XTS 2,500.00; above: payable amount of XTS 2,500.01 | The XTS 2,499.99 and XTS 2,500.00 claims are approved automatically and queued for payment; the XTS 2,500.01 claim goes to adjuster review with no payment queued | The XTS 2,499.99 and XTS 2,500.00 claims were approved automatically and queued for payment; the XTS 2,500.01 claim went to adjuster review with no payment queued | Passed, 3 of 3 test values, run 2026-09-14 |
Rule IDs, defect IDs, customers, claims, and run dates are synthetic, USD appears only where a regulation states the threshold in USD while configured limits use XTS (the ISO 4217 test code), and rule references were checked on 2026-09-16 against eCFR, the Visa Core Rules and Visa Product and Service Rules of 18 April 2026, and SEC Release No. 34-94466.
Questions
How do insurance companies benefit from working with an MGA?
What is a policy administration system?
What is a bordereau?
Scope your insurance platform testing
Send your lines of business, rating manual, carrier contracts, and claims workflow, and we return a test scope that maps the four deliverables to your release process.
Scope your testing