Checkout
Initiate Checkout Payment
Create a checkout session and return the payment options available for the requested amount and currency.
Authorization
BearerAuth AuthorizationBearer <token>
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/checkout/initiate" \ -H "Content-Type: application/json" \ -d '{ "currency": "NGN", "first_name": "John", "last_name": "Doe", "email": "john.doe@example.com", "amount": 200 }'{
"requestId": "abcd1234-5678-90ef-ghij-1234567890kl",
"requestTimestamp": "2025-07-16 09:15:00",
"message": "Checkout Transaction Initiated successfully.",
"statusCode": 200,
"data": {
"checkoutUrl": "https://checkout.tryduplo.com?ref=CHK_6WZSIYEK43",
"checkoutReference": "CHK_6WZSIYEK43",
"amount": {
"value": 1000,
"currency": "NGN",
"formatted": "NGN 1000.00"
},
"sourceReference": "SRC_6WZSIYEK43"
}
}{
"requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
"requestTimestamp": "2025-09-04 11:49:40",
"message": "Invalid request data.",
"statusCode": 400
}{
"requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
"requestTimestamp": "2025-09-04 11:49:40",
"message": "Invalid API key.",
"statusCode": 401
}{
"requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
"requestTimestamp": "2025-09-04 11:49:40",
"message": "The given data was invalid.",
"errors": {
"email": [
"The email field is required."
]
},
"statusCode": 422
}{
"requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
"requestTimestamp": "2025-09-04 11:49:40",
"message": "An error occurred while processing your request.",
"statusCode": 500
}How is this guide?