Do a trial purchase

This operation is identical to the purchase operation except that no voucher is returned (for voucher based products) or no product will be applied to the MSISDN (for direct top-ups). This operation carries no financial impact. The purpose of the operation is to determine whether it is worth proceeding to a tender step, i.e. is a subsequent purchase likely to to be successful (in which case the downstream should move to the tender step) or fail (in which case the downstream should not take tender).

Request
Security:
Request Body schema: application/json

An airtime request.

Array of objects (TransactionLabel)

A list containing labels that can be used to discover this transaction or group it with other transactions sharing labels with the same label name and value. Transaction labels should never be used to make transaction processing decisions.

id
required
string

The randomly generated UUID identifying this transaction, as defined for a variant 4 UUID in RFC 4122

time
required
string <date-time>

The date and time of the message as recorded by the sender. The format shall be as defined for date-time in RFC 3339 section 5.6. It is recommended that the optional time-secfrac be included up to millisecond precision

required
object (Originator)

The Originator object encapsulates data relating to the originator of the transaction

required
object (Institution)

Originating, acquiring, processing, or receiving institution details

object (Institution)

Originating, acquiring, processing, or receiving institution details

object (Institution)

Originating, acquiring, processing, or receiving institution details

required
Array of objects (ThirdPartyIdentifier)

An array of identifiers which each identify the transaction within each entity's system.

object (SlipData)

Data that may be printed on the customer slip for information purposes

basketRef
string

Used to group multiple transactions which would otherwise be considered independent.

tranType
string

Data relating to the type of transaction taking place (i.e. cash withdrawal, goods and services etc.).

Enum: "GOODS_AND_SERVICES" "CASH_WITHDRAWAL" "DEBIT_ADJUSTMENT" "GOODS_AND_SERVICES_WITH_CASH_BACK" "NON_CASH" "RETURNS" "DEPOSIT" "CREDIT_ADJUSTMENT" "GENERAL_CREDIT" "AVAILABLE_FUNDS_INQUIRY" "BALANCE_INQUIRY" "GENERAL_INQUIRY" "CARD_VERIFICATION_INQUIRY" "CARDHOLDER_ACCOUNTS_TRANSFER" "GENERAL_TRANSFER" "PAYMENT_FROM_ACCOUNT" "GENERAL_PAYMENT" "PAYMENT_TO_ACCOUNT" "PAYMENT_FROM_ACCOUNT_TO_ACCOUNT" "PLACE_HOLD_ON_CARD" "GENERAL_ADMIN" "CHANGE_PIN" "CARD_HOLDER_INQUIRY" "POINTS_INQUIRY"
srcAccType
string

This specifies the type of source account being used in the transaction (i.e. cheque, savings).

Enum: "DEFAULT" "SAVINGS" "CHEQUE" "CREDIT" "UNIVERSAL" "ELECTRONIC_PURSE" "GIFT_CARD" "STORED_VALUE"
destAccType
string

This specifies the type of destination account being used in the transaction (i.e. cheque, savings).

Enum: "DEFAULT" "SAVINGS" "CHEQUE" "CREDIT" "UNIVERSAL" "ELECTRONIC_PURSE" "GIFT_CARD" "STORED_VALUE"
stan
string

The System Trace Audit Number can be used to locate transactions across different systems.

rrn
string

This is a reference set by the original source of the transaction.

object (Amounts)

Amounts which make up the transaction. Absent amounts have zero value.

required
object (Product)

Product related data.

Array of objects (Tender)

An array of tenders used to pay for the transaction. This is used if payment is tendered at the point of sale. A Tender differs from a PaymentMethod in that the former represents a payment that has already been collected at the point of sale, whereas the latter represents a payment that still needs to be collected from a third party.

Array of objects (PaymentMethod)

An array of payment methods to be used as payment for the transaction. This is used if payment is not tendered at the point of sale, but is effected through one or more calls to third party payment providers as part of the request. A PaymentMethod differs from a Tender in that the former represents payment that still needs to be collected from a third party, whereas the latter represents payment that has already been collected at the point of sale.

object (Msisdn)

Msisdn related data.

object (Msisdn)

Msisdn related data.

Responses
200

OK

400

Bad Request

500

Internal Server Error

503

Service Unavailable

504

Gateway Timeout

post/purchases/trials
Request samples
application/json
{
  • "transactionLabels": [
    ],
  • "id": "string",
  • "time": "2019-08-24T14:15:22Z",
  • "originator": {
    },
  • "client": {
    },
  • "settlementEntity": {
    },
  • "receiver": {
    },
  • "thirdPartyIdentifiers": [
    ],
  • "slipData": {
    },
  • "basketRef": "string",
  • "tranType": "GOODS_AND_SERVICES",
  • "srcAccType": "DEFAULT",
  • "destAccType": "DEFAULT",
  • "stan": "string",
  • "rrn": "string",
  • "amounts": {
    },
  • "product": {
    },
  • "tenders": [
    ],
  • "paymentMethods": [
    ],
  • "recipientMsisdn": {
    },
  • "senderMsisdn": {
    }
}
Response samples
application/json
{
  • "transactionLabels": [
    ],
  • "id": "string",
  • "time": "2019-08-24T14:15:22Z",
  • "originator": {
    },
  • "client": {
    },
  • "settlementEntity": {
    },
  • "receiver": {
    },
  • "thirdPartyIdentifiers": [
    ],
  • "slipData": {
    },
  • "basketRef": "string",
  • "tranType": "GOODS_AND_SERVICES",
  • "srcAccType": "DEFAULT",
  • "destAccType": "DEFAULT",
  • "stan": "string",
  • "rrn": "string",
  • "amounts": {
    },
  • "product": {
    },
  • "msisdn": {
    },
  • "voucher": {
    }
}
Copyright © Electrum Payments (Pty) Ltd. 2019-2022. All right reserved.