Welcome to JumiaPay API Documentation!
JumiaPay API will allow you to easily start accepting payments online through a secure one step checkout experience.
With that said, start learning how to integrate our API on your application.Authenticate your API calls by including the apikey header of every request you make. API requests made without authentication will fail with the status code 401: Unauthorized.
Note that API keys both for staging and production will be shared by our team via encrypted email.
For more details about this process check out these 'Get Started' steps.
When calling our API, include the URL to the API service for the corresponding environment:
Payment Options API is an API responsible for listing all shops and their respective payment options available for a specific merchant
userType required | string user type must be either "regular" or "guest" |
apikey required | string Fill in with the API key shared by our team |
Content-Type required | string Example: application/json The Content-Type (only application/json is supported) |
merchantIdentifier required | string The email of the merchant. |
Success response if the merchant is active, if not, data list will be empty
Bad Request: The request was unacceptable, due to missing required parameter
Unauthorized: Missing or invalid apiKey provided
HTTP method not supported
Something went wrong while communicating with the server
Sandbox URL
Production Url
{- "merchantIdentifier": "[email protected]"
}
{- "available_options": [
- {
- "shopConfigurationId": "f1866880-9e0c-11eb-a4fd-0209510531db",
- "paymentMethods": [
- {
- "id": "9225337c-646f-11ef-a069-02a6417381c7",
- "type": "cash",
- "status": "active",
- "options": [
- {
- "id": "922fbaef-646f-11ef-a069-02a6417381c7",
- "name": "Paystack",
- "status": "active",
- "minAmount": 100,
- "maxAmount": null
}, - {
- "id": "922fb34f-646f-11ef-a069-02a6417381c7",
- "name": "PayPal",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922fb416-646f-11ef-a069-02a6417381c7",
- "name": "InterswitchRedirect",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922fb4ec-646f-11ef-a069-02a6417381c7",
- "name": "BankTransfer",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922fb5ae-646f-11ef-a069-02a6417381c7",
- "name": "MonnifyUSSD",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}
]
}, - {
- "id": "92253f8a-646f-11ef-a069-02a6417381c7",
- "type": "card",
- "status": "active",
- "options": [
- {
- "id": "922f9a82-646f-11ef-a069-02a6417381c7",
- "name": "Visa",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922f9e60-646f-11ef-a069-02a6417381c7",
- "name": "Mastercard",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}
]
}, - {
- "id": "92251654-646f-11ef-a069-02a6417381c7",
- "type": "bnpl",
- "status": "active",
- "options": [
- {
- "id": "922fba2e-646f-11ef-a069-02a6417381c7",
- "name": "EasyBuy",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922fb96d-646f-11ef-a069-02a6417381c7",
- "name": "CredPal",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}
]
}, - {
- "id": "92253c40-646f-11ef-a069-02a6417381c7",
- "type": "mobile_money",
- "status": "active",
- "options": [
- {
- "id": "922fbdf7-646f-11ef-a069-02a6417381c7",
- "name": "Opay",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}, - {
- "id": "922fbd32-646f-11ef-a069-02a6417381c7",
- "name": "Palmpay",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}
]
}, - {
- "id": "92253d08-646f-11ef-a069-02a6417381c7",
- "type": "mobile_payment_account",
- "status": "active",
- "options": [
- {
- "id": "922fb4ec-646f-11ef-a069-02a6417381c7",
- "name": "BankTransfer",
- "status": "active",
- "minAmount": 200,
- "maxAmount": 200
}, - {
- "id": "922fb5ae-646f-11ef-a069-02a6417381c7",
- "name": "MonnifyUSSD",
- "status": "active",
- "minAmount": 200,
- "maxAmount": 200
}
]
}
]
}, - {
- "shopConfigurationId": "f1867038-9e0c-11eb-a4fd-0209510531db",
- "paymentMethods": [
- {
- "id": "9225337c-646f-11ef-a069-02a6417381c7",
- "type": "cash",
- "status": "active",
- "options": [
- {
- "id": "922fbaef-646f-11ef-a069-02a6417381c7",
- "name": "Paystack",
- "status": "active",
- "minAmount": 100,
- "maxAmount": null
}, - {
- "id": "922fb34f-646f-11ef-a069-02a6417381c7",
- "name": "PayPal",
- "status": "active",
- "minAmount": null,
- "maxAmount": null
}
]
}
]
}
]
}
The Create Purchase V2 request allows you to process transactions through JumiaPay. For detailed information about how our Purchases feature works, the purchases possible status and how to simulate them, give a look at our Integration Guides.
shopConfigId required | string <uuid> Merchant shop configuration id provided by JumiaPay. |
apikey required | string Fill in with the API key shared by our team |
Content-Type required | string Example: application/json The Content-Type (only application/json is supported) |
description required | string [ 2 .. 254 ] characters Brief description of the purchase. This description is for internal use only, it will not be visible to the customer. |
amount required | object Order amount object |
consumer required | object Customer's information necessary to create a purchase. |
merchant required | object Merchant fields object |
basket required | object Object with product(s) or service(s) data. This data will be shown to the customer in the Cart Detail on JumiaPay website. |
expirationTime | integer [ 1 .. 262980 ] The period of time in minutes provided by the merchant to JumiaPay for the customer to finish his purchase. The customer has 30 minutes if the value is not given by default. |
shippingAddress | object Shipping data to which the products will be delivered. |
billingAddress | object Billing data information. |
additionalData | object <= 4096 characters Additional data with all extra information about the purchase |
Created
Bad Request: The request was unacceptable, due to missing required parameter
Unauthorized: Missing or invalid apiKey provided
The merchant does not have access to create new purchases.
The resource provided was not found
HTTP method not supported
The request was well-formed but was unable to be followed due to semantic errors
Something went wrong while communicating with JumiaPay
Sandbox URL
Production Url
{- "description": "JumiaPay order",
- "expirationTime": 30,
- "amount": {
- "value": 390,
- "currency": "NGN",
- "fee": 10
}, - "merchant": {
- "referenceId": "<YOUR_UNIQUE_MERCHANT_REFERENCE_ID>,",
- "token": "<YOUR_UNIQUE_MERCHANT_TOKEN>",
- "paymentOption": {
- "type": "d85cf934-13b3-47ee-92bb-1476388f4850",
- "option": "cc5cf934-13b3-47ee-92bb-1476388f4850"
}
}, - "consumer": {
- "ipAddress": "172.16.0.1",
- "country": "NG",
- "mobilePhoneNumber": "+2348021234567",
- "language": "en",
- "firstName": "John",
- "lastName": "Doe",
- "name": "John Doe",
- "dateOfBirth": "1985-04-03",
- "identityDocument": {
- "identification": "AA122XYZ",
- "type": "national_id_number"
}, - "sessionId": "d85cf934-13b3-47ee-92bb-1476388f4850"
}, - "basket": {
- "items": [
- {
- "name": "Lagos Airport Hotel",
- "amount": "230",
- "quantity": "1",
- "currency": "NGN",
- "categoryCode": "Hotel"
}, - {
- "name": "Lagos Airport Hotel",
- "amount": "80",
- "quantity": "2",
- "currency": "NGN",
- "categoryCode": "Hotel"
}
], - "currency": "NGN",
- "shippingAmount": "0"
}, - "shippingAddress": {
- "addressLine1": "11 Commercial Avenue Sabo",
- "addressLine2": "Yaba",
- "city": "Lagos",
- "district": "Lagos",
- "province": "Lagos",
- "zip": "",
- "country": "NG",
- "name": "Test Booking",
- "firstName": "Test",
- "lastName": "Booking",
- "mobilePhoneNumber": "+2348021234567"
}, - "billingAddress": {
- "addressLine1": "11 Commercial Avenue Sabo",
- "addressLine2": "Yaba",
- "city": "Lagos",
- "district": "Lagos",
- "province": "Lagos",
- "zip": "",
- "country": "NG",
- "name": "Test Booking",
- "firstName": "Test",
- "lastName": "Booking",
- "mobilePhoneNumber": "+2348021234567"
}, - "additionalData": "{value1: value 1, value2: value 2}"
}
{- "purchaseId": "AAEAAADoKU7Uu5tJ9YDGV0bgjb4-siGzk4ackv3oao8qsZH3F1SidiKU",
- "status": "PENDING",
- "links": [
- {
- "method": "GET"
}
], - "jpay_trace_id": "42a20463bbec1f35e4c85139691bfc8f"
}
The Verify Status of Purchase request gives you visibility on the status changes of a purchase until its current status.
apikey required | string Fill in with the API key shared by our team |
Content-Type required | string Example: application/json The Content-Type (only application/json is supported) |
shopConfig required | string (ShopConfig) Merchant token provided by JumiaPay to identify your shop. This parameter can be found on JumiaPay Business, in the ‘ShopConfigurations’ sub-module with the name Shop Key. |
transactionId required | string transactionId corresponds to the Purchase Id provided by JumiaPay. This parameter is sent on the success response of Create Purchase request. |
transactionType required | string Value: "Purchase" Type of the transaction. The allowed value is "Purchase". |
Success
Bad Request