Login

1. Formulate Payload

You should start by using the data in the table below, which contains a list of the parameters you can pass when initializing a transaction.

Parameters

KeyValue TypeRequiredDescription
merchant_transaction_idStringYesUnique merchant reference for the request raised for express checkout.
account_numberStringYesAccount number for the customer on the merchant system. This is the reference the customer will pay to.
msisdnStringYesCustomer's Phone number is formatted as given in the E.164 phone numbering
country_codeStringYes3 digit ISO code of the country you wish to collect payment for.
currency_codeStringYes3 digit ISO code of the currency the merchant is invoicing for.
due_dateStringYesTime window a customer should complete making a payment. A future date when the request expires in UTC with the date format YYYY-MM-DD HH:mm:ss. If not passed passed time defaults to 12 hours.
request_amountDoubleYesAmount you wish to start collecting for.
service_codeStringYesThe service code assigned to the merchant on the tingg portal
callback_urlStringYesString of the endpoint we are to send the webhook request to.
success_redirect_urlStringYesWhere we will redirect the customer to after a successful payment is made.
fail_redirect_urlStringYesWhere we will redirect the customer to when the payment time passed above expires
customer_first_nameStringNoCustomer's first name
customer_last_nameStringNoCustomer's last name
customer_emailStringNoCustomer's email address.
payment_option_codeStringNoPayment option code of the payment options the merchant wishes to collect for.
pending_redirect_urlStringNoWhere we redirect the customer to after the customer clicks back to the merchant
request_descriptionStringNoShows the description of the item being purchased.
language_codeStringNoLanguage code you wish to display instructions for payment for. E.g
  • fr - French
  • en - English
  • ar - Arabic
  • pt - Portuguese
prefill_msisdnBooleanNoWhen set to false the phone number provided above will not be pre-filled in the payment form. Defaults to true
charge_beneficiariesJSONArrayNoExtra charge client we should settle to

Charge_beneficiaries:

KeyValue TypeRequiredDescription
charge_beneficiary_codeStringNoThis is the client who we are to settle to on behalf of the customer
amountDoubleNoAmount we should settle the service provider above

{
   "msisdn":"+254700000000",
   "account_number":"oid39",
   "country_code":"KEN",
   "currency_code":"KES",
   "customer_email":"[email protected]",
   "customer_first_name":"John",
   "customer_last_name":"Doe",
   "due_date":"2021-11-18 16:15:30",
   "fail_redirect_url":"https://webhook.site/6c933f61-d6da-4f8e-8a44-bf0323eb8ad6",
   "merchant_transaction_id":"txn_id_342",
   "payment_option_code":"",
   "callback_url":"https://webhook.site/6c933f61-d6da-4f8e-8a44-bf0323eb8ad6",
   "pending_redirect_url":"https://webhook.site/6c933f61-d6da-4f8e-8a44-bf0323eb8ad6",
   "request_amount":"100",
   "request_description":"Dummy merchant transaction",
   "success_redirect_url":"https://webhook.site/6c933f61-d6da-4f8e-8a44-bf0323eb8ad6",
   "invoice_number":"",
   "language_code":"en",
   "service_code":"ABCDEXAMPLEONLINE",
   "charge_beneficiaries":[
      {
         "charge_beneficiary_code":"KRA",
         "amount":30
      },
      {
         "charge_beneficiary_code":"GLOVO",
         "amount":70
      }
   ]
}