<[object Object]>

# Airtime

As a PesaWay merchant, you can send airtime to your customers / employees through various networks. The Airtime API is applicable in various use cases such as Selling Airtime, Airtime allowance distribution, etc.

Alt test Endpoint: https://sandbox.pesaway.com/api/v1/airtime/send-airtime/

# Supported Networks

Country Network
Kenya Safaricom, Airtel, Telkom
Uganda MTN, Airtel
Tanzania Tigo, Vocacom, Airtel, Zantel, Viettel, TTCL

# Request Parameters

Field Type Description Examples
Amount Number The amount of money being sent to the customer. 30.00
ExternalReference Alpha-Numeric A unique identifier of the transaction generated by the Merchant system. "1234"
PhoneNumber Numeric This is the customer mobile where the funds are to be received. Mobile number must include country code eg. 254712345678 2547*******8
Reason Alpha-Numeric The reason for airtime transacton. "Airtime of project ABC"
ResultsUrl URL This is the URL to be specified in your request that will be used to send notification upon processing of the airtime transacton request "https://yourdomain.com/result_url"

# Sample Request

curl --location --request POST 'https://sandbox.pesaway.com/api/v1/airtime/send-airtime/' \
--header 'Authorization: Bearer MWU1NzI1YzhhN2Y1YTExMmU5ZWI4NGNlMDdjODc5' \
--header 'Content-Type: application/json' \
--data-raw '{
    "ExternalReference": "1234",
    "Amount": 30,
    "PhoneNumber": "25471\*\*\*\***8",
    "Reason": "Airtime of project ABC of transportation fee",
    "ResultsUrl": "https://yourdomain.com/result_url"
}'

# Response Parameters

Field Type Description Example
code String This is a status code for either success or failure of the transaction "200.001"
TransactionID String An identifier for the transaction request returned by PesaWay upon successful request submission. This is generated by PesaWay API. "PHY20ADFASFASFS"
OriginatorReference String An identifier for the transaction request from the merchant side. It is the input given as TransactionReference when sending B2C request. "123344"

# Response Sample

{
  "code": "200.001",
  "Status": "Active",
  "TransactionID": "PHYADFADSFWADS",
  "OriginatorReference": "4040359-0f8",
  "ResponseDescription": "Transaction of 50 to 2547*****677 is being processed"
}

# Results Response

Field Type Description Example
ResultCode Numeric The numeric status of the results, sent to the callback url 0 means success, while any other code indicates that an error occurred. field
ResultDesc String This is a message from the API that gives the status of the request processing and usually maps to a specific result code value. "The service request is processed successfully"
TransactionID String This is a unique PesaWay transaction ID for every airtime transacton request. Same value is sent to the customer over SMS upon successful processing. PR52
TransactionReceipt String This is a unique transaction ID dependent on the channel for every airtime transacton request. Same value is sent to the customer over SMS upon successful processing. QTD6ADFSAs
TransactionAmount Number This is the amount that was transacted. It is usually returned under the ResultParameter array. "10.00"
OriginatorReference Decimal A unique identifier of the transaction generated by the Merchant system. "254******77"
TransactionCompletedDateTime String This is the date and time that the transaction completed PesaWay. "20220305103101"
AccountAvailableFunds Decimal This is the available balance after the transaction. 564.00

# Sample Result Response

{
  "ResultType": 0,
  "ResultDesc": "The service request is processed successfully.",
  "Originator": "PW_TEST_01",
  "TransactionID": "PHY0A0AE3JF2",
  "TransactionAmount": "50.00",
  "AccountAvailableFunds": "5.00",
  "TransactionCompletedDateTime": "2022-11-27 14:37:49.690634+00:00"
}