{"openapi":"3.1.0","info":{"title":"DelwaPay API","version":"2026-09-29","description":"Payments for Nigerian businesses. Amounts are in kobo (₦1 = 100). Every response is {\"status\", \"message\", \"data\"}. Test keys (…_test_…) never move money. Webhooks are signed: x-delwapay-signature is the HMAC-SHA512 of the raw body with your secret key."},"servers":[{"url":"https://api.delwapay.com"}],"tags":[{"name":"Meta"},{"name":"Transactions"},{"name":"Refunds"},{"name":"Invoices"},{"name":"Subscriptions"},{"name":"Disputes"},{"name":"Split payments"},{"name":"Dedicated accounts"},{"name":"Transfers"},{"name":"Settlements"}],"paths":{"/":{"get":{"tags":["Meta"],"summary":"Check the API is up","operationId":"get","security":[],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/merchant":{"get":{"tags":["Meta"],"summary":"The business these keys belong to","operationId":"getMerchant","security":[{"secretKey":[]},{"publicKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transaction/initialize":{"post":{"tags":["Transactions"],"summary":"Start a payment","operationId":"postTransactionInitialize","security":[{"secretKey":[]},{"publicKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["email","amount"],"properties":{"email":{"type":"string"},"amount":{"type":"integer","description":"Kobo"},"currency":{"type":"string","description":"NGN"},"reference":{"type":"string","description":"Yours, unique per mode"},"callback_url":{"type":"string"},"webhook_url":{"type":"string"},"channels":{"type":"array","description":"bank_transfer, card"},"metadata":{"type":"object"},"first_name":{"type":"string"},"last_name":{"type":"string"},"phone":{"type":"string"},"subaccount":{"type":"string","description":"SUB_…: share the payment"},"transaction_charge":{"type":"integer","description":"Kobo you keep; the subaccount gets the rest"},"bearer":{"type":"string","description":"account or subaccount: who pays the fee"},"split_code":{"type":"string","description":"SPL_…"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transaction":{"get":{"tags":["Transactions"],"summary":"List payments","operationId":"getTransaction","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"status","in":"query","schema":{"type":"string"}},{"name":"from","in":"query","description":"Date","schema":{"type":"string"}},{"name":"to","in":"query","description":"Date","schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transaction/verify/{reference}":{"get":{"tags":["Transactions"],"summary":"Check a payment by your reference","operationId":"getTransactionVerifyReference","security":[{"secretKey":[]}],"parameters":[{"name":"reference","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transaction/{id}":{"get":{"tags":["Transactions"],"summary":"Fetch a payment","operationId":"getTransactionId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/refund":{"post":{"tags":["Refunds"],"summary":"Refund a payment, in full or in part","operationId":"postRefund","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["transaction"],"properties":{"transaction":{"type":"string","description":"Reference or id"},"amount":{"type":"integer","description":"Kobo; default all that is left"},"merchant_note":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Refunds"],"summary":"List refunds","operationId":"getRefund","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/refund/{id}":{"get":{"tags":["Refunds"],"summary":"Fetch a refund","operationId":"getRefundId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/invoice":{"post":{"tags":["Invoices"],"summary":"Create (and optionally send) an invoice","operationId":"postInvoice","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["customer","items"],"properties":{"customer":{"type":"object","description":"{name, email, phone}"},"items":{"type":"array","description":"[{description, quantity, amount}]"},"discount":{"type":"integer"},"due_date":{"type":"string","description":"YYYY-MM-DD"},"notes":{"type":"string"},"send":{"type":"boolean"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Invoices"],"summary":"List invoices","operationId":"getInvoice","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"status","in":"query","description":"draft, sent, paid, void","schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/invoice/{id}":{"get":{"tags":["Invoices"],"summary":"Fetch an invoice by id or number","operationId":"getInvoiceId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/invoice/{id}/send":{"post":{"tags":["Invoices"],"summary":"Email an invoice","operationId":"postInvoiceIdSend","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/invoice/{id}/void":{"post":{"tags":["Invoices"],"summary":"Cancel an unpaid invoice","operationId":"postInvoiceIdVoid","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/plan":{"post":{"tags":["Subscriptions"],"summary":"Create a plan","operationId":"postPlan","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","amount","interval"],"properties":{"name":{"type":"string"},"amount":{"type":"integer"},"interval":{"type":"string","description":"weekly, monthly, quarterly, termly, yearly"},"cycles":{"type":"integer"},"due_days":{"type":"integer"},"description":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Subscriptions"],"summary":"List plans","operationId":"getPlan","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/subscription":{"post":{"tags":["Subscriptions"],"summary":"Subscribe a customer to a plan","operationId":"postSubscription","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["plan","customer"],"properties":{"plan":{"type":"string","description":"PLN…"},"customer":{"type":"object","description":"{name, email}"},"start_date":{"type":"string","description":"YYYY-MM-DD"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Subscriptions"],"summary":"List subscriptions","operationId":"getSubscription","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/subscription/{code}":{"get":{"tags":["Subscriptions"],"summary":"Fetch a subscription and its invoices","operationId":"getSubscriptionCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/subscription/{code}/cancel":{"post":{"tags":["Subscriptions"],"summary":"Stop billing","operationId":"postSubscriptionCodeCancel","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dispute":{"get":{"tags":["Disputes"],"summary":"List disputes","operationId":"getDispute","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dispute/{id}":{"get":{"tags":["Disputes"],"summary":"Fetch a dispute","operationId":"getDisputeId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dispute/{id}/respond":{"post":{"tags":["Disputes"],"summary":"Answer a dispute","operationId":"postDisputeIdRespond","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["response"],"properties":{"response":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dispute/{id}/accept":{"post":{"tags":["Disputes"],"summary":"Accept a dispute (the payer is repaid)","operationId":"postDisputeIdAccept","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/subaccount":{"post":{"tags":["Split payments"],"summary":"Add a subaccount","operationId":"postSubaccount","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["business_name","bank_name","account_number","account_name","share_type","share_value"],"properties":{"business_name":{"type":"string"},"email":{"type":"string"},"description":{"type":"string"},"bank_name":{"type":"string"},"bank_code":{"type":"string"},"account_number":{"type":"string"},"account_name":{"type":"string"},"share_type":{"type":"string","description":"percentage or flat"},"share_value":{"type":"integer","description":"Basis points (2000 = 20%) or kobo"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Split payments"],"summary":"List subaccounts","operationId":"getSubaccount","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"active","in":"query","schema":{"type":"boolean"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/subaccount/{code}":{"get":{"tags":["Split payments"],"summary":"Fetch a subaccount with its balances","operationId":"getSubaccountCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"tags":["Split payments"],"summary":"Change a subaccount","operationId":"putSubaccountCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"business_name":{"type":"string"},"bank_name":{"type":"string"},"account_number":{"type":"string"},"account_name":{"type":"string"},"share_type":{"type":"string"},"share_value":{"type":"integer"},"active":{"type":"boolean"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/split":{"post":{"tags":["Split payments"],"summary":"Save a split","operationId":"postSplit","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","type","subaccounts"],"properties":{"name":{"type":"string"},"type":{"type":"string","description":"percentage or flat"},"bearer":{"type":"string","description":"account, subaccount or all"},"bearer_subaccount":{"type":"string"},"subaccounts":{"type":"array","description":"[{subaccount, share}]"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Split payments"],"summary":"List splits","operationId":"getSplit","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/split/{code}":{"get":{"tags":["Split payments"],"summary":"Fetch a split","operationId":"getSplitCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"tags":["Split payments"],"summary":"Change a split","operationId":"putSplitCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"subaccounts":{"type":"array"},"bearer":{"type":"string"},"active":{"type":"boolean"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dedicated_account":{"post":{"tags":["Dedicated accounts"],"summary":"Give a customer their own account number","operationId":"postDedicatedAccount","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["customer"],"properties":{"customer":{"type":"string","description":"Email or customer code"},"first_name":{"type":"string"},"last_name":{"type":"string"},"phone":{"type":"string"},"subaccount":{"type":"string"},"split_code":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Dedicated accounts"],"summary":"List dedicated accounts","operationId":"getDedicatedAccount","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"active","in":"query","schema":{"type":"boolean"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dedicated_account/{id}":{"get":{"tags":["Dedicated accounts"],"summary":"Fetch one by id or account number","operationId":"getDedicatedAccountId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"tags":["Dedicated accounts"],"summary":"Close a dedicated account","operationId":"deleteDedicatedAccountId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/dedicated_account/{id}/simulate":{"post":{"tags":["Dedicated accounts"],"summary":"Test mode: pretend money was sent to it","operationId":"postDedicatedAccountIdSimulate","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["amount"],"properties":{"amount":{"type":"integer"},"sender_name":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/balance":{"get":{"tags":["Transfers"],"summary":"What you can send now","operationId":"getBalance","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transferrecipient":{"post":{"tags":["Transfers"],"summary":"Save a recipient","operationId":"postTransferrecipient","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","bank_name","account_number","account_name"],"properties":{"name":{"type":"string"},"email":{"type":"string"},"description":{"type":"string"},"bank_name":{"type":"string"},"bank_code":{"type":"string"},"account_number":{"type":"string"},"account_name":{"type":"string"},"type":{"type":"string","description":"nuban"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Transfers"],"summary":"List recipients","operationId":"getTransferrecipient","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transferrecipient/{code}":{"get":{"tags":["Transfers"],"summary":"Fetch a recipient","operationId":"getTransferrecipientCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"tags":["Transfers"],"summary":"Remove a recipient","operationId":"deleteTransferrecipientCode","security":[{"secretKey":[]}],"parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transfer":{"post":{"tags":["Transfers"],"summary":"Send money from your balance","operationId":"postTransfer","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["amount","recipient"],"properties":{"amount":{"type":"integer"},"recipient":{"type":"string","description":"RCP_…"},"reason":{"type":"string"},"reference":{"type":"string"},"source":{"type":"string","description":"balance"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"tags":["Transfers"],"summary":"List transfers","operationId":"getTransfer","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"status","in":"query","schema":{"type":"string"}},{"name":"recipient","in":"query","schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transfer/bulk":{"post":{"tags":["Transfers"],"summary":"Send several transfers, all or nothing","operationId":"postTransferBulk","security":[{"secretKey":[]}],"parameters":[{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key returns the first answer","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["transfers"],"properties":{"transfers":{"type":"array","description":"[{amount, recipient, reason, reference}]"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transfer/verify/{reference}":{"get":{"tags":["Transfers"],"summary":"Check a transfer by your reference","operationId":"getTransferVerifyReference","security":[{"secretKey":[]}],"parameters":[{"name":"reference","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/transfer/{id}":{"get":{"tags":["Transfers"],"summary":"Fetch a transfer","operationId":"getTransferId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/settlement":{"get":{"tags":["Settlements"],"summary":"List settlements","operationId":"getSettlement","security":[{"secretKey":[]}],"parameters":[{"name":"perPage","in":"query","description":"Up to 100 (default 50)","schema":{"type":"integer"}},{"name":"page","in":"query","schema":{"type":"integer"}},{"name":"status","in":"query","schema":{"type":"string"}},{"name":"from","in":"query","schema":{"type":"string"}},{"name":"to","in":"query","schema":{"type":"string"}},{"name":"subaccount","in":"query","description":"SUB_…","schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/settlement/{id}":{"get":{"tags":["Settlements"],"summary":"Fetch a settlement with every line","operationId":"getSettlementId","security":[{"secretKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"DelwaPay-Version","in":"header","required":false,"description":"Answer in this API version instead of the one your business is pinned to","schema":{"type":"string","enum":["2026-09-29"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"4XX":{"description":"Refused: status false and a message saying why","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"secretKey":{"type":"http","scheme":"bearer","description":"pri_test_… or pri_live_…, from your server only"},"publicKey":{"type":"http","scheme":"bearer","description":"pub_test_… or pub_live_…, for starting checkouts from a browser or app"}},"schemas":{"Envelope":{"type":"object","required":["status","message"],"properties":{"status":{"type":"boolean","const":true},"message":{"type":"string"},"data":{"description":"The object, or a list for list endpoints"},"meta":{"type":"object","description":"Lists: total, perPage, page, pageCount"}}},"Error":{"type":"object","required":["status","message"],"properties":{"status":{"type":"boolean","const":false},"message":{"type":"string"},"errors":{"type":"object","description":"Field => messages, for validation errors"}}}}}}