A programmable clearinghouse and settlement rail, with the gate built in. Build on a HIPAA clearinghouse that does not just move transactions — it authorizes them through a deterministic compliance gate you can reason about. Typed refusals instead of silent failures; unconfigured integrations make zero network calls; production never simulates success. Eligibility, claims, remits, reconciliation, and settlement are one coherent surface. The base URL is your deployment origin; every request and response is JSON over HTTPS.
Pick the entry point that matches how you learn. Every path lands on the same deterministic sandbox surface.
Three steps — authenticate, scope to a tenant, then call the gate. Money is always integer cents, never floating dollars. The gate returns a disposition; it never fabricates a pass.
Every /api/* request is authenticated before it reaches a handler. Sign in for a session, then step up for sensitive money or clinical actions.
# 1. Authenticate against your sandbox origin.
# Sign in to obtain a session credential, then step up for sensitive actions.
curl -X POST https://your-sandbox-origin.example/api/auth/step-up \
-H "Content-Type: application/json" \
-H "Cookie: $SESSION" \
-d '{ "reason": "settlement-gate-eval" }'Tenancy is derived from your credentials on every request — you never pass an organization or clinic identifier in the body or a param.
# 2. Every request is scoped to your organization automatically from
# your credentials — you never pass an organization in the body or a param.
# Pass an x-correlation-id and it is echoed back for tracing.
curl https://your-sandbox-origin.example/api/settlement/instructions/$ENCOUNTER_ID \
-H "Cookie: $SESSION" \
-H "x-correlation-id: 3b9c-quickstart"POST /api/settlement/gate/{encounterId} evaluates the six conditions in conjunction and returns a disposition.
# 3. Evaluate the six-condition settlement gate for an encounter.
# Scope: shtegpay:read. The gate returns a disposition; it never fakes a pass.
curl -X POST https://your-sandbox-origin.example/api/settlement/gate/$ENCOUNTER_ID \
-H "Cookie: $SESSION" \
-H "x-correlation-id: 3b9c-quickstart"Response — a halted disposition names the first failed condition; it never fabricates a pass:
{
"code": "GATE_EVALUATED",
"passed": false,
"status": "halted",
"firstFailed": "provider_screened"
}Money is always integer cents. Every amount on every endpoint is a conserving integer cent — never a floating dollar.
Five things that hold across every endpoint.
shtegpay:read/write, claims:read/write — are enforced on each route.encounterId / idempotencyKey, so a retried request never double-posts.503 with zero network calls — never a simulated success.x-correlation-id on any request and it is echoed back on the response for end-to-end tracing across the loop.Grouped index of the documented surface. Every path is a real route; nothing here simulates success.
When an integration is unconfigured, the endpoint returns a typed refusal (503) with zero network calls; production never fabricates an acknowledgment, a remittance, or a passed gate. The sandbox runs the real gate and reconciliation cores at zero advance — test mode is the real logic, not a mock.
Each endpoint states its availability: available in the sandbox, or not yet available while an integration or approval is pending.