Information
- OpenAPI version:
3.1.0
Create invoices, render branded PDFs and email them to your customers from your own software.
bd_test_…) under Developers → API keys.bd_live_…).Send your secret key as a bearer token on every request:
Authorization: Bearer bd_test_4eC39HqLyjWDarjtT1zdp7dc
Keys are secret. Use them from your server only and never ship them in a browser or mobile app. The key decides the environment: sandbox keys only see sandbox data and production keys only see production data.
All money is an integer in the currency’s minor unit: 150000 with NGN is ₦1,500.00, 1500 with USD is $15.00.
Zero-decimal currencies such as JPY use whole units.
Send an Idempotency-Key header (any unique string, e.g. a UUID) on POST and PATCH requests.
If a request times out you can safely retry with the same key: you get the original response back,
with the header Idempotent-Replayed: true, and nothing is created twice. Keys are kept for 24 hours.
List endpoints return { "object": "list", "data": [...], "has_more": true, "next_cursor": "inv_…" }, newest first.
Pass next_cursor as starting_after to get the next page.
Errors use conventional HTTP status codes and always have the same shape:
{ "error": { "type": "invalid_request_error", "code": "parameter_missing",
"message": "currency is required.", "param": "currency", "request_id": "…" } }
Branch on type and code, not on message. Include request_id when contacting support.
You can also look the request up in Developers → Request logs.
Your secret key: bd_test_… for sandbox or bd_live_… for production.
Security scheme type: http