DisburseCloud
Developers

One API. Eight rails. Real-time webhooks back to your claims system.

REST + JSON, signed webhooks, idempotent writes, and SDKs for the languages your engineers actually use. Built so an integration ships in days, not quarters.

curl · disbursements.create
$ curl https://api.disbursecloud.com/v1/disbursements \
  -H "Authorization: Bearer dc_live_…" \
  -H "Idempotency-Key: clm-A2049-1" \
  -d '{
    "amount":      4820.00,
    "claim_id":    "A-2049",
    "payee":       { "id": "py_8K2…" },
    "modalities":  ["vcc","ach","instant","check"],
    "metadata":    { "line": "auto", "gl": "204" }
  }'
REST Endpoints

The whole API on one page.

REST over HTTPS, JSON in and out. Versioned. Idempotent. Backwards-compatible by policy — we never break a v1 contract.

MethodPathDescription
POST/v1/disbursementsCreate a payment instruction. Returns a disbursement object the payee can act on.
GET/v1/disbursements/{id}Retrieve a disbursement and its current status, modality selection, and timeline.
POST/v1/disbursements/{id}/cancelCancel a disbursement before the payee selects a modality. Funds remain on your ledger.
POST/v1/payeesCreate or upsert a payee. Set per-payee modality defaults, language, and contact channel.
GET/v1/ledgers/{line}/balanceRead the segregated balance for a single business line. Tabulates daily for tie-out.
POST/v1/webhooksRegister a webhook endpoint. Signed payloads, replay protection, retry with backoff.
Webhooks

Status, the instant it changes.

Every state transition fires a signed webhook to your endpoint. Median latency under a second. We never go quiet — failed deliveries retry with exponential backoff up to 24 hours, and you can replay any event from the dashboard.

  • HMAC-SHA256 signed payloads
  • Replay protection via timestamps
  • Exponential backoff, manual replay
  • Per-environment endpoints (test / live)
Webhook payload · disbursement.modality_selected 200 OK · 184ms
{
  "id":         "evt_2049_03",
  "type":       "disbursement.modality_selected",
  "created":    "2026-05-07T14:32:09Z",
  "data": {
    "disbursement_id": "dsb_8K2_2049",
    "claim_id":        "A-2049",
    "modality":        "instant_deposit",
    "amount":          4820.00,
    "payee":           { "id": "py_8K2_marisol" }
  },
  "signature":  "v1=t=1746693129,sha256=…"
}
disbursement.created
Carrier created a payment instruction.
disbursement.modality_offered
Payee was sent the modality picker.
disbursement.modality_selected
Payee chose a rail. Includes the choice.
disbursement.funds_sent
Funds left our ledger toward the chosen rail.
disbursement.completed
Funds settled. Final, terminal event.
disbursement.failed
Rail rejected. Auto-retry per your policy.
disbursement.canceled
Carrier-initiated cancel before settlement.
payee.updated
Payee changed modality defaults or contact.
SDKs

Native libraries for the languages your team writes in.

First-party SDKs with idempotency keys, automatic retries, and typed event payloads. Or hit the REST API directly — we don’t gatekeep features behind the SDK.

TypeScript / Node
npm i @disbursecloud/node
Python
pip install disbursecloud
Java
implementation 'com.disbursecloud:dc-sdk:1.x'
.NET / C#
dotnet add package DisburseCloud
Go
go get github.com/disbursecloud/dc-go
Ruby
gem install disbursecloud
Auth & Environments

Test against real rails, ship to live without rewriting code.

Bearer tokens

Per-environment keys, scoped per business line. Rotate without downtime; old keys grace for 24h.

dc_live_… · dc_test_…
Sandbox

A full replica of live with deterministic test payees and modality outcomes — including the failure paths your QA needs.

api.test.disbursecloud.com
Idempotency

Every write accepts an Idempotency-Key. Replay any request safely — duplicates collapse to a single disbursement.

Idempotency-Key: clm-A2049-1