Business
Business API and webhooks
Trigger payouts, reconcile, and track invoice status from your own systems, without exposing anything on-chain.
Status: pre-launch. Noirpay is being built. This page describes the design as specified in the whitepaper; nothing on it is live on Robinhood Chain yet, and details can change before launch. See What's live today.
The API is being designed alongside the product. The shape below is the intent; endpoint names and fields are not final and no keys are issued yet.
Principles
- Nothing sensitive leaves the client. The API orchestrates; signing and note decryption happen in a client you run (a signer service you control, under your treasury policy).
- Idempotent writes. Every payout request carries an idempotency key.
- Webhooks for state, not polling.
Resources (draft)
| Resource | Operations |
|---|---|
| Payouts | Create a single payout or a batch; list; get status |
| Invoices | Create an invoice link; list; get status |
| Vaults | List vaults and policy-visible balances |
| Viewing keys | Issue, list, revoke (admin role) |
| Webhooks | Register endpoints and subscriptions |
Webhook events (draft)
| Event | When |
|---|---|
payout.approved / payout.settled / payout.failed | A payout or batch line changes state |
invoice.paid | An invoice link received its payment |
treasury.threshold | A vault crossed a configured balance threshold |
key.issued / key.revoked | A viewing key was issued or revoked |
Webhooks are signed; verify the signature before acting.
Reconciliation
Reconcile from your own copy of the books: pull payouts and invoices by external reference, or generate the tax and accounting export from a viewing key scoped to the period.