SUCCESS, FAILED, CANCELLED, or RETURNED) is reached.đź’ˇ Best Practice: Implement exponential backoff when polling. Do not refund the sender unless the status explicitly requires it.
| Parameter | Description | Data Type | Requirement |
|---|---|---|---|
transactionReference | The partner may use either: - The GeoSwift-generated transaction reference, or - The partner-generated unique reference ( requestingOrganisationTransactionReference)to query transaction status. | String | Mandatory |
| Parameter | Description | Data Type |
|---|---|---|
requestDate | The creation date and time of the transaction as sent in the Create Transaction request (YYYY-MM-DD HH:mm:ss.SSSZ). | String |
amount | Payout amount as originally submitted. | String |
currency | Payout currency in ISO-4217 format (e.g., PHP, KES). | String |
type | Transaction type: p2p, p2b, b2p, or b2b. | String |
requestingOrganisationTransactionReference | Unique transaction reference generated by the sending partner. | String |
transactionStatus | Human-readable status description (e.g., "Payout Processed"). | String |
transactionReference | Unique transaction ID generated by GeoSwift. | String |
status | Machine-readable final status. One of: - SUCCESS: Paid out successfully. DO NOT REFUND SENDER- FAILED: Transaction failed. REFUND SENDER- CANCELLED: Cancelled by sender/partner. REFUND SENDER- RETURNED: Reversed by payout network. REFUND SENDER- PENDING: Awaiting final settlement. DO NOT REFUND SENDER — continue polling or wait for callback. | String |
creditingOrganisationTransactionReference | Unique identifier assigned by the receiving partner (if applicable). | String |
| Parameter | Description | Data Type |
|---|---|---|
key | Identifier type (e.g., msisdn, bankaccountno). | String |
value | Sender’s account identifier (e.g., mobile number, IBAN). | String |
| Parameter | Description | Data Type |
|---|---|---|
key | Identifier type (e.g., msisdn, bankaccountno, pan). | String |
value | Beneficiary’s account identifier. | String |
⚠️ Returned when the query itself fails (e.g., invalid reference, system error), not when the underlying transaction fails.
| Parameter | Description | Data Type |
|---|---|---|
serverCorrelationId | Partner-provided transaction reference (requestingOrganisationTransactionReference). | String |
clientCorrelationId | GeoSwift-generated transaction reference (transactionReference). | String |
errorCategory | High-level error category (e.g., VALIDATION_ERROR, SYSTEM_ERROR). | String |
errorCode | Specific error code for diagnostics (e.g., ERR_TXN_NOT_FOUND). | String |
errorDescription | Human-readable error explanation. | String |
errorDateTime | UTC timestamp when the error occurred (YYYY-MM-DDTHH:mm:ss.SSSZ). | String |
status | Current transaction status (same enum as above). Included if transaction exists but query encountered an issue. | String |