Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.veridianhp.com/llms.txt

Use this file to discover all available pages before exploring further.

Quickstart

This walk-through takes you from an empty Veridian account to a completed sandbox ACH payment in about 15 minutes. No production credentials, no real money, no real PHI.
1

Get your sandbox API key

After your account is provisioned, sign in to the Veridian dashboard and create a sandbox API key from Settings → API keys.Sandbox keys look like:
vbk_sb_xxxxxxxxxxxxxxxxxxxxxx
Sandbox keys never touch live money and are safe to use in development. Keep them out of public repos anyway.
2

Create a payment session

A session represents one patient invoice that’s ready to be paid. Create one from your server:
curl -X POST https://api.veridianhp.com/api/practice/sessions \
  -H "Authorization: Bearer $VERIDIAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "invoiceId": "INV-2026-001",
    "amountCents": 14500,
    "patient": {
      "firstName": "Jane",
      "lastName": "Patient"
    }
  }'
You’ll get back a sessionId and a hostedUrl. The hosted URL is what you send to the patient.
3

Open the hosted payment page

Open the hostedUrl from the previous step in a browser. You’ll see the Veridian Bridge — a branded, mobile-friendly page showing the patient what they owe and inviting them to pay.In sandbox, you can use the test bank credentials provided in the Veridian dashboard to simulate a successful or failed bank connection.
4

Listen for the webhook

When the payment completes, Veridian sends a signed webhook to the URL you configured in Settings → Webhooks.A successful payment looks like:
{
  "type": "session.payment.succeeded",
  "data": {
    "sessionId": "ses_xxxxxxxxxx",
    "invoiceId": "INV-2026-001",
    "amountCents": 14500,
    "status": "succeeded",
    "settledAt": "2026-05-27T15:32:00Z"
  }
}
Verify the signature using the secret shown in the webhook settings page. See Webhooks for the verification recipe.
5

Check the session status

You can always query the current state of a session:
curl https://api.veridianhp.com/api/practice/sessions/$SESSION_ID/status \
  -H "Authorization: Bearer $VERIDIAN_API_KEY"
Returns the current status (pending, processing, succeeded, failed, or cancelled) along with timestamps and the amount.

You’re done

You just ran the same path a real patient would: create session → patient pays → webhook fires → status updates. The only differences in production are the API host, your live API key, and that the money actually moves.

What’s next

Production integration

Move from sandbox to live with confidence — checklist included.

Webhook patterns

Retries, idempotency, signature verification, replay protection.