Bearer token
Use Authorization: Bearer …. Tokens are shown once; disabling or rotating one revokes it.
Create invoices, open checkout and track payments.
https://api.example.comhttps://pay.example.comCurrent originLoading active service URLs, including custom subdomain names. Safe placeholders remain if settings are unavailable.
Examples use this installation’s active API and checkout URLs. Copy your project and store IDs and set WHOLLY_TOKEN on your server.
Enable store payment methods and back up their wallets. Check that nodes and rates are ready.
In API access, choose read/write and assign the project. Save the token securely.
Send decimal amounts as strings. Keep the same Idempotency-Key and body when retrying.
Send the customer to links.checkout. Verify settlement before fulfilling the order.
Use Authorization: Bearer …. Tokens are shown once; disabling or rotating one revokes it.
Read only retrieves data. Read + write also creates invoices and changes payment methods. Neither grants console access.
Assign each credential to its projects. Creating invoices also requires an enabled store in that project.
Optionally allow exact public IPv4/IPv6 egress addresses. CIDR ranges and private workstation addresses are not supported.
Enable the native chain before selecting its tokens. It needs ready wallets and scanner-compatible nodes.
Browse matching tokens or add a custom contract. On-chain verification is required; custom rates can be fixed in USD or linked to a DEX pool.
Select up to 64 payment methods per store. Only ready methods appear on new invoices.
Tokens share their chain wallet. Cached balances include invoice addresses; stale or unavailable data does not mean zero. Fiat values are advisory.
--restricted-rpc is incompatible because it denies subaddress creation. Poll using invoice_id, the same ID returned at creation and in callbacks, not internal id. Back off when unchanged.
Late transfers can change an expired invoice while monitoring continues. A cancelled invoice needs explicit reconciliation to reopen.
Save the highest sequence per invoice. Ignore older notifications so retries cannot roll back your order state.
Set ipn_url at creation, or inherit the store default. Create the store’s IPN signing secret first.
In Stores → Webhooks, choose URLs and events. Webhooks work independently of an invoice’s IPN URL.
Canonical JSON envelope
{
"error": {
"code": "invalid_payment_request",
"message": "must be greater than zero",
"details": { "field": "amount" }
}
}Branch on the HTTP status and stable error.code. Treat message as operator-facing context. details is optional.