SeerBit API Reference (1.0)

Download OpenAPI specification:Download

Authentication

Bearer

Security Scheme Type API Key
Header parameter name: Authorization

Basic

Security Scheme Type HTTP
HTTP Authorization Scheme basic

AUTHENTICATION

Generate Encrypted Secret Key

To make API calls on SeerBit, you will be required to pass a bearer token. To generate a token simply pass your pubic and secret key to rceive a token to process further API calls.

Request Body schema: application/json
key
required
string

This consist of the PrivateKey and the publicKey separated with a '.' in the middle(eg:{privateKey.publicKey}

Responses

Request samples

Content type
application/json
{
  • "key": "SBTESTSECK_9Cb8dbqR5Rc2JwZaa77P5QYHzQaeGUcrkEMD1dEi.SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u"
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

STANDARD CHECKOUT

Generate Hash

This is used to ensure the request payload has not been altered

Request Body schema: application/json
publicKey
required
string

This is the merchant public key.

amount
required
string

This is the amount to be paid.

currency
required
string

This is the currency the transaction is to be carried out in.

country
required
string

This is the country from which the transaction is been carried out from

paymentReference
required
string

This is the unique identifier for a transaction, to be generated by merchant.

email
required
string

This is the email of the customer.

productId
required
string

This is the product id entered by the merchant.

productDescription
required
string

This is the product description supplied by the merchant.

callbackUrl
required
string

Responses

Request samples

Content type
application/json
{
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "amount": "10.00",
  • "currency": "NGN",
  • "country": "NG",
  • "paymentReference": "3791090233047WZ73QN",
  • "email": "mamadou.diouf@intouchgroup.net",
  • "productId": "15013",
  • "productDescription": "touch badge",
  • "callbackUrl": "https://gutouch.com"
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Payment Link From Checkout

SeerBit Checkout Standard Initialises a transaction from merchants server to generate a payment link which redirects your customers to a page to make payment and after payment has been made the customer is redirected back to the merchants website.

Authorizations:
Request Body schema: application/json
publicKey
required
string

This is the merchant public key.

amount
required
string

This is the amount to be paid.

currency
required
string

This is the currency the transaction is to be carried out in.

country
required
string

This is the country from which the transaction is been carried out from

paymentReference
required
string

This is the unique identifier for a transaction, to be generated by merchant.

email
required
string

This is the email of the customer.

productId
required
string

This is the product id entered by the merchant.

productDescription
required
string

This is the product description supplied by the merchant.

callbackUrl
required
string

This is the callback url supplied by the merchant so that Seerbit can redirect back to it .

hash
required
string

This is the hash of the concatenated string for payment. Check hash module for more clarification.

hashType
required
string

This refers to the hash type used in generating the hash

Responses

Request samples

Content type
application/json
{
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "amount": "10.00",
  • "currency": "NGN",
  • "country": "NG",
  • "paymentReference": "P791090233047WZ73QN",
  • "email": "mamadou.diouf@intouchgroup.net",
  • "productId": "15013",
  • "productDescription": "touch badge",
  • "callbackUrl": "https://gutouch.com",
  • "hash": "cfb5464ea21cce315ea72fb28f7ea45c4b61c443783eeff82dea98e57d445e15",
  • "hashType": "sha256"
}

Response samples

Content type
application/json
{}

ORDER CHECKOUT

Create Order Before Payment

Create an order before payment

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "email": "test@mvaa.com",
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "paymentReference": "2PPTG108Q13432E29P23R5L6W93I9",
  • "fullName": "",
  • "orderType": "BULK_BULK",
  • "mobileNumber": "",
  • "country": "NG",
  • "currency": "NGN",
  • "amount": "250.00",
  • "orders":
    [
    ]
}

Response samples

Content type
application/json
{}

Create Order After Payment

Create an order after payment

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "0w0eimkizc41602513327447",
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "orders":
    [
    ]
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Update Order

Update an order

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "0w0eimkizc41602513327447",
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "orders":
    [
    ]
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Get Orders

Get a list of orders

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Get an Order with Payment Reference

Get order details with payment reference

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Get Order with Order Id

Get order details with OrderId

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

PAYMENT METHOD

Initiate Payment

Accept more payments with our unified payments API. Accept payments from all major cards and the most popular local and alternative payment methods all in a single integration.

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
Example
{
  • "fullName": "john doe",
  • "email": "johndoe@gmail.com",
  • "mobileNumber": 248360953,
  • "publicKey": "SBPUBK_QGOX9NBAHWDYY1PAFSG2PTDOSSZYEWXM",
  • "paymentReference": "O456S5077907982QWEuWAT05M",
  • "deviceType": "nokia 3310",
  • "sourceIP": "1.0.1.0",
  • "currency": "GHS",
  • "productDescription": "snacks",
  • "country": "GH",
  • "network": "MTN",
  • "voucherCode": "",
  • "fee": "0.00",
  • "amount": "1.00",
  • "productId": "grocery",
  • "paymentType": "MOMO"
}

Response samples

Content type
application/json
Example
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Get Banks

Get list of banks

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

MOMO

OTP Momo

When making MOMO transfers, and OTP is required to complete the payment

Authorizations:
Request Body schema: application/json
linkingReference
required
string

This is the internal gateway reference

otp
required
string

This is the TOKEN sent to customer’s phone or email

Responses

Request samples

Content type
application/json
{
  • "linkingReference": "CF630837081601460887752",
  • "otp": "81015"
}

Response samples

Content type
application/json
Example
null

NON 3DS PAYMENT

Charge Card

This payment option is used to charge non 3d transactions

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "publicKey": "SBTESTPUBK_dhrpzbRpR34l6VmqkCFOKA94L5E1jSTu",
  • "amount": "10.00",
  • "fullName": "Diei Okechukwu Peter",
  • "mobileNumber": 8030540611,
  • "currency": "NGN",
  • "country": "NG",
  • "paymentReference": "NGN0000037Q35",
  • "email": "okechukwu.diei2@gmail.com",
  • "productId": "Foods",
  • "productDescription": "RASPBERRY",
  • "cardNumber": "5123450000000008",
  • "expiryMonth": "05",
  • "expiryYear": "21"
}

Response samples

Content type
application/json
Example
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

CARD

Check Status

This Operation allows you to check the status of a transaction via the status check api. This is done by making a Get request to the endpoint below with your payment reference.

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

ACCOUNT

Validate Transaction

This option is used to complete an account transaction, when OTP is required

Authorizations:
Request Body schema: application/json
linkingReference
required
string

This is the internal gateway reference

otp
required
string

This is the TOKEN sent to customer’s phone or email

Responses

Request samples

Content type
application/json
{
  • "linkingReference": "F092648971601293723061",
  • "otp": "123456"
}

Response samples

Content type
application/json
Example
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

TOKENIZE

Tokenize a Card

In order to store your customers payment details, you need to pass some additional parameter when making the first payment request using the payments/tokenize endpoint, the Cvv field and pin are optional(this could be null). After the first payment is made, the payment details is collected and a token is generated for it which is then stored for future use.

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "publicKey": "SBPUBK_OMX6ZNRZPLIHQ9Y0ZG6FCNR0EAYIGIAT",
  • "amount": "0.00",
  • "fullName": "john doe",
  • "mobileNumber": 8033456599,
  • "currency": "NGN",
  • "country": "NG",
  • "paymentReference": "KES0092992991",
  • "email": "johndoe@gmail.com",
  • "productId": "Foods",
  • "productDescription": "RASPBERRY",
  • "cardNumber": "5123450000000008",
  • "cvv": "100",
  • "expiryMonth": "05",
  • "expiryYear": "21"
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

AUTHORISE

Authorise

In SeerBit API, the term “authorisation” indicates, that payment is authorised but not captured. This allows a merchant to cancel transaction at their discretion, typically based but not limited to fraud-related activities. This authorisation state is valid for a limited period of time, which provides a window to cancel the transaction.

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
Example
{
  • "paymentReference": "PREAUTH124456789798765k3K1CB0",
  • "publicKey": "SBTESTPUBK_dhrpzbRpR34l6VmqkCFOKA94L5E1jSTu",
  • "cardNumber": "5123450000000008",
  • "cvv": "100",
  • "expiryMonth": "05",
  • "expiryYear": "21",
  • "currency": "NGN",
  • "country": "NG",
  • "productDescription": "preauth test capture",
  • "amount": "100.00",
  • "email": "johndoe@gmail.com",
  • "fullName": "john doe"
}

Response samples

Content type
application/json
Example
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

3DS Authorise

PIN and CVV are not Required to complete Transaction. Authorization is completed on 3DS.

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "30451B789S987643108hgfdsfP6W",
  • "publicKey": "SBPUBK_OMX6ZNRZPLIHQ9Y0ZG6FCNR0EAYIGIAT",
  • "cardNumber": "5242820813772165",
  • "cvv": "865",
  • "expiryMonth": "02",
  • "expiryYear": "22",
  • "currency": "NGN",
  • "country": "NG",
  • "productDescription": "preauth test capture",
  • "amount": "1.00",
  • "email": "johndoe@gmail.com",
  • "fullName": "john doe",
  • "callbackUrl": "https://google.com"
}

Response samples

Content type
application/json
Example
{}

PREAUTHORIZATION

Capture

Captures a payment if supported by the payment method.

Authorizations:
Request Body schema: application/json
paymentReference
required
string

This is the unique identifier for a transaction, to be generated by merchant.

currency
required
string

This is the currency the transaction is to be carried out in.

country
required
string

This is the country the customer is doing the transaction from

productDescription
required
string

This is the product description supplied by the merchant.

amount
required
string

This is the amount to be paid.

publicKey
required
string

This is the merchant public key.

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "PREAUTH124456789798765k321CB0",
  • "currency": "NGN",
  • "country": "NG",
  • "productDescription": "preauth test capture",
  • "amount": "5.10",
  • "publicKey": "SBTESTPUBK_dhrpzbRpR34l6VmqkCFOKA94L5E1jSTu"
}

Response samples

Content type
application/json
Example
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Refund

Refunds a payment if supported by the payment method.

Authorizations:
Request Body schema: application/json
paymentReference
required
string

This is the unique identifier for a transaction, to be generated by merchant.

currency
required
string

This is the currency the transaction is to be carried out in.

country
required
string

This is the country the customer is doing the transaction from

productDescription
required
string

This is the product description supplied by the merchant.

amount
required
string

This is the amount to be paid.

publicKey
required
string

This is the merchant public key.

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "PREAUTH124456789798765432CB0",
  • "currency": "NGN",
  • "country": "NG",
  • "productDescription": "preauth test capture",
  • "amount": "5.10",
  • "publicKey": "SBTESTPUBK_dhrpzbRpR34l6VmqkCFOKA94L5E1jSTu"
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

Cancel

Cancel a payment if supported by the payment method.

Authorizations:
Request Body schema: application/json
paymentReference
required
string

This is the unique identifier for a transaction, to be generated by merchant.

publicKey
required
string

This is the merchant public key.

country
required
string

This is the country the customer is doing the transaction from

productDescription
required
string

This is the product description supplied by the merchant.

Responses

Request samples

Content type
application/json
{
  • "paymentReference": "PREAUTH124456789798765k3L1CB0",
  • "publicKey": "SBTESTPUBK_dhrpzbRpR34l6VmqkCFOKA94L5E1jSTu",
  • "country": "NG",
  • "productDescription": "test void"
}

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}

RECURRENT

Initiate Subscription

To complete this transaction, merchant is expected to redirect to the 3DSecure site via the redirect URL provided with the response below. However if the redirect url is not returned and the code is S20 and the message is transaction is pending, the Validate OTP endpoint should be called as the customer would have received a token either by email or sms on the customers phone. To get the subscription created or the status of a subscription for the customer, the GET Subscription endpoint is called by passing the paymentReference as billingId.

Authorizations:
Request Body schema: application/json

Responses

Request samples

Content type
application/json
{
  • "publicKey": "SBTESTPUBK_9sN3TuLgW6a9redEfY48cKKkUa09Pz2u",
  • "paymentReference": "TPR2181t55PKR540RPP1U1W4392WO",
  • "planId": "",
  • "cardNumber": "5123450000000008",
  • "expiryMonth": "05",
  • "callbackUrl": "https://www.google.com",
  • "expiryYear": "21",
  • "cvv": "100",
  • "amount": "1000.00",
  • "currency": "NGN",
  • "productDescription": "Pilot Test Subscription",
  • "productId": "Terrain",
  • "country": "NG",
  • "startDate": "2020-02-25 00:00:00",
  • "cardName": "Kolade Samuel",
  • "billingCycle": "WEEKLY",
  • "email": "akintoyekolawole@gmail.com",
  • "mobileNumber": "08033456500",
  • "customerId": "12345678901234",
  • "pin": "0999",
  • "type": "3DSECURE",
  • "billingPeriod": "1",
  • "subscriptionAmount": true
}

Response samples

Content type
application/json
{}

Get a Subscription

Get customer subscription

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "status": "SUCCESS",
  • "data":
    {
    }
}