Built for Canadian PHSPs and health spending accounts. We check every decision against CRA eligible expense rules and provincial practitioner registers, and we attach the full reasoning.
Eligible under ITA s.118.2(2)(a). The practitioner is authorized in the province of service.
Every receipt eats minutes of a trained reviewer's day. Claim volume grows with your book. Your adjudication team can't.
The same claim gets a different answer from a different reviewer on a different afternoon. Claimants notice, and so do plan sponsors.
Approve an ineligible expense or an unauthorized practitioner and the problem lands on your plan documents, not on the claimant.
Send a receipt image and claimant details through the API or the review dashboard. Batches, webhooks, or one at a time.
We read the receipt, then check the METC expense category, prescription and certification requirements, practitioner authorization in the province of service, and duplicates.
We automate clear approvals and denials. Ambiguous claims go to your reviewers with the relevant CRA rule cited and the context already assembled.
Models handle extraction. Adjudication itself is deterministic. The same claim against the same rules produces the same decision, and every decision names the rule it rests on.
Every decision names the specific CRA provision and provincial register it checked.
Ambiguous claims always go to your reviewers. You hold final authority on every claim.
We timestamp every extraction, check, and decision. You can export it claim by claim.
Nothing to rip out. Keep your portal, your plan documents, and your claimant relationships. ClaimSpring slots in behind them.
$ curl https://api.claimspring.ca/v1/claims \ -H "Authorization: Bearer sk_live_…" \ -d claimant_id=clm_8f3a \ -d province=ON \ -d plan_id=plan_hsa_std \ -F receipt=@receipt.jpg
{
"decision": "approved",
"amount_eligible": 142.50,
"category": "paramedical.massage_therapy",
"citations": ["ITA s.118.2(2)(a)"],
"reasoning": "Rendered by an RMT authorized in ON…"
}Your logo, your colours, your domain. Claimants never see ClaimSpring.
Log in and work the queue. Nothing to integrate.
Adjudication is a unit cost. Yours should be too.
You pay per adjudicated claim, with volume tiers as your book grows. No platform fees. No seat licences. We price to your claim mix on a call.
We check CRA's eligible medical expense rules under ITA s.118.2(2), prescription and certification requirements, each province's authorized practitioner registers, your plan's own limits and riders, and duplicates across the claimant's history.
They go to your reviewers with the extraction, the rule analysis, and the specific CRA provision already assembled. Most reviews take a minute instead of an afternoon.
You do. You can override any automated decision, and your team always decides flagged claims. Claimants only ever see your brand.