Ndeight API
Developer documentation covers payments, webhooks, organization & merchant settings, currencies, payment links (dashboard-only), and subscriptions (merchant lifecycle; USD/EUR).
Base URL
https://api.sandbox.nd8.com/api
Use Sandbox or Production in the API Reference when both are listed; set API_BASE_URL (and sandbox URL if applicable) in your environment.
Quick overview
| Topic | What it is |
|---|---|
| Authentication | API keys for server-to-server calls |
| Create payment | POST /api/checkout/create/ — hosted checkout (USD or EUR; currency optional, defaults USD) |
| Currencies (USD & EUR) | Supported charge currencies |
| Organization & merchant | Org profile, API keys, webhooks (dashboard session) |
| Payment links (dashboard) | Shareable links — created in the dashboard, not with API keys |
| Subscriptions | Recurring billing — USD/EUR; merchant lifecycle via dashboard |
| Webhooks | Payment status events to your endpoint |
| Deposit attempts | Card retry / decline history on payments |
| Get payment by id | GET /api/transactions/<id>/ |
| Refunds | POST /api/transactions/<id>/refund/, list/get refunds |
Two ways to call the API
- API key —
Authorization: Api-Key …for checkout, payment reads, and refunds (integration from your backend). - Dashboard session —
Authorization: Token …for organization, payment links, and other merchant tools while a user is logged into the web app (Organization & merchant).
Payment links are only available with dashboard session authentication, not API keys (Payment links).
1. Create payment
Start a payment (hosted checkout):
POST /api/checkout/create/— Requires API key. Send billing, products, optional currency (USDorEUR, defaults USD); receivecheckout_urlandtoken.- Redirect the customer to
checkout_url. On completion or failure, use webhooks or Get payment by id.
Details: Create payment.
2. Webhooks
Configure Endpoint URL and Secret under Organization → API & Webhooks in the dashboard.
- Event
transaction.status_changedincludes payment identifiers,amount,status,currency,depositAttempts, timestamps. - Verify with
X-Webhook-Signature(HMAC-SHA256 of the raw body).
Details: Webhooks.
3. Get payment by id
GET /api/transactions/<id>/— Requires API key. Use the public ID (e.g.TXabc123) or numeric id.
Details: Get payment by id.