OTT

OTT are a South African alternative payment method provider. They provide a series of payment options for merchants operating in South Africa; including creating and redeeming vouchers, and bank-2-bank electronic funds transfers.

You can use OTT as a Payment Method for:

REST APIWebSDKHosted Payment Page
Payments✅ Available⛔️ Unavailable⛔️ Unavailable
Split Auth & Capture⛔️ Unavailable⛔️ Unavailable⛔️ Unavailable
Payouts✅ Available⛔️ Unavailable⛔️ Unavailable
Refunds⛔️ Unavailable⛔️ Unavailable⛔️ Unavailable

Payment

The BR-DGE ottVoucher Payment Instrument can be used to redeem OTT vouchers. BR-DGE takes the OTT pin and sends it to OTT to redeem.

The outcome of a voucher redemption is either CAPTURED or REJECTED.

Transaction Status Flow


BR-DGE StatusDescription
CAPTUREDIf the voucher is successfully redeemed, then the BR-DGE payment status will be set to CAPTURED.
REJECTEDIf the voucher could not be redeemed, the BR-DGE payment will be updated with a REJECTED status.

Payment API Examples

OTT Voucher Redemption

When making a payment request with an OTT voucher code you can set the amount to 0. Doing so will redeem the full value of the voucher. The amount that is redeemed from the voucher, when setting the request amount to 0, will be returned to you in the amount field of the API response.

Any other positive integer value in the amount field will result in that amount, in the given currency, being redeemed from the voucher.

If you redeem an amount less than the value of the voucher, the remaining balance will be stored in the customer’s OTT Vault. They will be notified of this balance via an SMS, which will include a link they can use to generate a new voucher using the balance in their vault.

Request

To create a OTT payment, you need to send a request similar to the following to the BR-DGE POST /v1/payments REST API Endpoint.

The following examples contain only the minimum required to perform a successful payment using OTT. For a full view of all available API request fields please view the Create a Payment REST API endpoint documentation directly.

{
    "merchantTransactionId": "ff163246-eb94-4763-9a2a-f5d6d48b026e",
    "amount": 0,
    "customerOrderCode": "ff163246-eb94-4763-9a2a-f5d6d48b026e",
    "orderDescription": "Taxi fare",
    "channel": "ios",
    "currencyCode": "ZAR",
    "paymentInstrument": {
        "type": "ottVoucher",
        "pin": "607276415871",
        "mobile": "+27721234567"
    }
}

Response

You should expect to receive a response similar to the below indicating whether the voucher redemption was successful, or not.

{
    "code": "1000",
    "message": "Approved",
    "id": "691ca00b78759f29aa82ec4597b2d512",
    "paymentId": "8f48a327-e043-4e91-ab07-e2d645a95c84",
    "amount": 5000,
    "currencyCode": "ZAR",
    "actionRequired": false,
    "psp": {
        "name": "OTT Mobile",
        "transactionId": "1759676"
    },
    "pspId": "OTT",
    "customerOrderCode": "ff163246-eb94-4763-9a2a-f5d6d48b026e",
    "merchantTransactionId": "ff163246-eb94-4763-9a2a-f5d6d48b026e"
}

Onboarding & Support

To enable OTT on your BR-DGE retail channels, please get in contact with support.