If you have configured callbacks, pawaPay will POST a callback to your configured callback URL for each refund when it reaches a final status. Read more about handling callbacks and callback URLs.

If you have not configured callbacks, you can always call our Check Refund Status endpoint to get the latest status and details of a specific refund request.

Headers

Following headers are only included if you have enabled signed callbacks.

Read more about how to implement signed callbacks.

Content-Digest
string

SHA256 or SHA-512 hash of the request body.

Signature
String

Signature of the request according to RFC-9421.

Signature-Input
String

Signature input according to RFC-9421.

Signature-Date
String

Timestamp when signature was created. This is a custom field and is not part of RFC-9421.

Accept-Signature
String

Expected signature algorithm of the response according to RFC-9421.

Accept-Digest
String

Expected digest algorithm of the response according to RFC-9421.

Body

refundId
string
required

A UUIDv4 based ID specified by you, that unqiuely identifies the refund.

Required string length: 36
status
enum<string>
required

The final status of the payment.

  • COMPLETED - The payment has been successfully processed.
  • FAILED - The payment request has been proceessed, but failed.
Available options:
COMPLETED,
FAILED
amount
string
required

The amount to be collected or disbursed.

Amount has to follow below requirements or the request will be rejected:

  • Between zero and two decimal places can be supplied, depending on what the specific MNO supports. Learn about all MNO supported decimal places.
  • The maximum amount depends on the limits of the specific MNO. You can find them from the Active Configuration endpoint.
  • The minimum amount depends on the limits of the specific MNO. You can find them from the Active Configuration endpoint.
  • Leading zeroes are not permitted except where the value is less than 1. For any value less than one, one and only one leading zero must be supplied.
  • Trailing zeroes are permitted.

Valid examples: 5, 5.0, 5.00, 5.5, 5.55, 5555555, 0.5

Not valid examples: 5., 5.555, 5555555555555555555, .5, -5.5, 00.5, 00.00, 00001.32

Required string length: 1 - 23
currency
string
required

The currency in which the amount is specified.

Format must be the ISO 4217 three character currency code in upper case. Read more from https://en.wikipedia.org/wiki/ISO_4217#Active_codes.

You can find all the supported currencies that the specific correspondent supports from here.

The active configuration endpoint provides the list of correspondents configured for your account together with the currencies.

country
string
required

The country in which the MNO operates.

Format is ISO 3166-1 alpha-3, three character country code in upper case. Read more from https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3#Officially_assigned_code_elements.

correspondent
string
required

The correspondent code refers to the specific MNO that the specified phone number (MSISDN) has an active mobile money wallet with.

You can find all the supported correspondents listed here.

The active configuration endpoint provides the list of correspondents configured for your account.

You can use the predict correspondent enpoint to predict the correct correspondent to use based on the phone number (MSISDN).

recipient
object
required

The phone number (MSISDN) of the recipient or payer must be specified as the <code>value</code> of the <code>address</code>

customerTimestamp
string
required

The timestamp for when you initiated the refund process. Format defined by 'date-time' in RFC3339 section 5.6 (https://tools.ietf.org/html/rfc3339#section-5.6)

created
string
required

The timestamp of when the refund was created in the pawaPay platform. Format defined by 'date-time' in RFC3339 section 5.6 (https://tools.ietf.org/html/rfc3339#section-5.6)

statementDescription
string

Short description for the transaction. Depending on the specific MNO performing the transaction this message may be visible to the customer in the SMS receipt or within their transaction history.

Required string length: 4 - 22
receivedByRecipient
string

When the payment was received by the recipient. Format defined by 'date-time' in RFC3339 section 5.6 (https://tools.ietf.org/html/rfc3339#section-5.6)

correspondentIds
object

The financial ids used by the MNO to unqiuely identify this payment

failureReason
object
metadata
object

The metadata that was provided in the original initation request in a JSON object format.