- GETList all accounts
- POSTCreate an account
- GETFetch account details
- GETFetch parent account details
- GETFetch account balance
- GETFetch parent account balance
- PUTSuspend an account
- PUTReactivate an account
- GETFetch terminals assigned to an account
- GETFetch terminals assigned to the parent account
- PUTUpdate access to account
- POSTCreate virtual account
- POSTFilter virtual accounts
- GETFetch a virtual account
- PUTUpdate a virtual account
- DELExpire a virtual account
- POSTCreate an online checkout order
- POSTCharge a customer using tokenized card data
- GETList tokenized cards
- POSTUpdate tokenzied card data
- DELUpdate tokenzied card data
- GETFetch checkout transaction
- GETGet Order details based on the generated Order reference
- POSTSubmit customer card details
- POSTSubmit customer card OTP
- POSTResend OTP to customer's phone
- POSTFetch checkout transaction details
- GETFetch checkout Flash account number for transfer payment
- POSTRequest user OTP
- POSTRequest user OTP
- POSTSubmit user OTP
- GETGet user saved cards
- POSTCancel Checkout transaction
- GETFetch bank codes and names
- POSTPerform bank account lookup
- POSTPerform bank account transfer from the parent account
- POSTPerform bank account transfer from account
- POSTPerform wallet transfer from the parent account
- POSTPerform wallet transfer from account
- POSTAssign a terminal to an account
- POSTAssign a terminal to the parent account
- POSTUn-assign terminal from an account
- POSTUn-assign a terminal from the parent account
- GETFetch credit/debit transactions on an account
- GETFetch credit/debit transactions on the parent account
- GETFetch transactions on an account
- POSTFilter account transactions
- GETFetch transactions on the parent account
- POSTFilter parent account transactions
- GETFetch a single transaction on an account
- GETFetch a single transaction on the parent account
Accounts
Virtual Accounts
Online Checkout
Charge
Transfers
Terminals
Transactions
Submit customer card details
Use this endpoint to submit the customers card details
Nomba authenticates API calls with OAuth2 HTTP bearer tokens. There are two methods of authentication; Client-Credentials method and PKCE (Proof Key for Code Exchange) method. In each of the methods, You will get an ACCESS_TOKEN
. You need to use an "Authorization"
HTTP header to provide your ACCESS_TOKEN
. For example: Authorization: {ACCESS_TOKEN}
.
Stringified card details
encryption key is data encrption is in use, else empty string
the order reference returned when the order was created
if true, this this user cardn will be saved for the user's future use. Note the process is not complete until the user-card verification endpoints are called to authenticate the user's phone number.
Contains browser information for the device making the api calls
Browser language
true if Java is enabled in the browser in use
true if Javascript is enabled in the browser in use
Browser color depth
Browser scren height
Browser screen weidth
Browser time difference
Browser user agent
Device channel
curl --request POST \
--url https://api.nomba.com/v1/checkout/checkout-card-detail \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"cardDetails": "{\"cardCVV\": 11,\"cardExpiryMonth\": 3,\"cardExpiryYear\": 2050,\"cardNumber\": \"5190752909999995\",\"cardPin\": 1111}",
"key": "<string>",
"orderReference": "c4307d58-2513-41d8-b7f7-dfecd5f9fdbe",
"saveCard": "true",
"deviceInformation": {
"httpBrowserLanguage": "en-GB",
"httpBrowserJavaEnabled": "true",
"httpBrowserJavaScriptEnabled": "true",
"httpBrowserColorDepth": "30",
"httpBrowserScreenHeight": "900",
"httpBrowserScreenWidth": "1500",
"httpBrowserTimeDifference": "-60",
"userAgentBrowserValue": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)",
"deviceChannel": "Browser"
}
}'
{
"code": "00",
"description": "Success",
"data": {
"status": "true",
"message": "Success",
"responseCode": "00",
"transactionId": "c4307d58-2513-41d8-b7f7-dfecd5f9fdbe",
"secureAuthenticationData": {
"jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"md": "6775843012",
"acsUrl": "https://ip:port/merchant.com/callback",
"termUrl": "https://ip:port/merchant.com/callback"
}
}
}
Authorizations
Nomba authenticates API calls with OAuth2 HTTP bearer tokens. There are two methods of authentication; Client-Credentials method and PKCE (Proof Key for Code Exchange) method. In each of the methods, You will get an ACCESS_TOKEN
. You need to use an "Authorization"
HTTP header to provide your ACCESS_TOKEN
. For example: Authorization: {ACCESS_TOKEN}
.
Body
Stringified card details
encryption key is data encrption is in use, else empty string
the order reference returned when the order was created
if true, this this user cardn will be saved for the user's future use. Note the process is not complete until the user-card verification endpoints are called to authenticate the user's phone number.
Contains browser information for the device making the api calls
Browser language
true if Java is enabled in the browser in use
true if Javascript is enabled in the browser in use
Browser color depth
Browser scren height
Browser screen weidth
Browser time difference
Browser user agent
Device channel
Response
Response Code
Response description
true if the card details were submitted successfully
Response message describing the transaction status or further instruction for the user like the case of OTP
response code from the payment gate way. 00 means transaction was successful and completed, T0 means an OTP has been sent to the user and should be entered next, SO means 3D Secure authentication is required and the client application needs to redirect to the 3D secure page based on the information provided in the secureAuthenticationData field
the unique id of the transaction just created by the submittion of the card details. This value should be passed back to all API calls that require it.
Authentication data returned from the payment gateway when the payment card requires 3D Secure authentication. This data will be passed to the
jwt token
encryption key is data encrption is in use, else empty string
the order reference returned when the order was created
the order reference returned when the order was created
curl --request POST \
--url https://api.nomba.com/v1/checkout/checkout-card-detail \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"cardDetails": "{\"cardCVV\": 11,\"cardExpiryMonth\": 3,\"cardExpiryYear\": 2050,\"cardNumber\": \"5190752909999995\",\"cardPin\": 1111}",
"key": "<string>",
"orderReference": "c4307d58-2513-41d8-b7f7-dfecd5f9fdbe",
"saveCard": "true",
"deviceInformation": {
"httpBrowserLanguage": "en-GB",
"httpBrowserJavaEnabled": "true",
"httpBrowserJavaScriptEnabled": "true",
"httpBrowserColorDepth": "30",
"httpBrowserScreenHeight": "900",
"httpBrowserScreenWidth": "1500",
"httpBrowserTimeDifference": "-60",
"userAgentBrowserValue": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)",
"deviceChannel": "Browser"
}
}'
{
"code": "00",
"description": "Success",
"data": {
"status": "true",
"message": "Success",
"responseCode": "00",
"transactionId": "c4307d58-2513-41d8-b7f7-dfecd5f9fdbe",
"secureAuthenticationData": {
"jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"md": "6775843012",
"acsUrl": "https://ip:port/merchant.com/callback",
"termUrl": "https://ip:port/merchant.com/callback"
}
}
}