Authentication
Crypto checkout merchant APIs use organisation API keys with request signing. JWT bearer tokens used by the dashboard are not accepted on these endpoints.Headers
Signature
- Use the raw request body exactly as sent on the wire
- For requests with no body, sign using the same raw body the server sees (often an empty string when
rawBodyis unset) - Reject locally if
|now - timestamp| > 5 minutesto avoid wasted retries - Rotate keys from the dashboard if a secret is exposed
Scopes
API keys carry scopes. A valid signature with the wrong scope still returns401.
Security checklist
- Never embed the API secret in a mobile app or browser
- Prefer server-to-server calls from your backend
- Store secrets in a vault or encrypted secret manager
- Verify webhook signatures with the organisation webhook secret (separate from the API key secret)