GET /v1/pay/transactions| Parameter | Type | Required | Description |
|---|---|---|---|
offset | integer | No | Number of items to skip |
limit | integer | No | Maximum number of items to return |
status | string | No | Filter by status |
start_date | string | No | Filter transactions after this date (ISO 8601) |
end_date | string | No | Filter transactions before this date (ISO 8601) |
pending - Transaction initiated, awaiting processingprocessing - Transaction being processed by payment providercompleted - Transaction completed successfullyfailed - Transaction failedcancelled - Transaction cancelledexpired - Transaction expired before completionrefunded - Transaction fully refundedpartially_refunded - Transaction partially refundedwave - Wave Mobile Moneyafrimoney - Afrimoney Mobile Moneycard - card (via payment gateway){
"data": {
"items": [
{
"id": "txn_abc123",
"payment_session_id": "ps_xyz789",
"object_type": "payment_link",
"object_id": "pl_def456",
"organization_id": "org_test123",
"customer_id": "cus_ghi789",
"amount": "100.00",
"fee": "2.50",
"net_amount": "97.50",
"currency": "GMD",
"payment_method": "wave",
"payment_method_transaction_id": "wave_txn_123",
"status": "completed",
"customer_email": "customer@example.com",
"customer_name": "John Doe",
"customer_phone": "+2207654321",
"payment_phone": "+2207654321",
"mode": "test",
"livemode": false,
"initiated_at": "2024-01-15T10:30:00Z",
"processing_at": "2024-01-15T10:30:05Z",
"completed_at": "2024-01-15T10:31:00Z",
"refunded_amount": "0.00",
"attempt_count": 1,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:31:00Z"
}
],
"count": 1,
"offset": 0,
"limit": 20
}
}GET /v1/pay/transactions/{id}{
"data": {
"id": "txn_abc123",
"payment_session_id": "ps_xyz789",
"object_type": "payment_link",
"object_id": "pl_def456",
"organization_id": "org_test123",
"customer_id": "cus_ghi789",
"amount": "100.00",
"fee": "2.50",
"net_amount": "97.50",
"currency": "GMD",
"payment_method": "wave",
"payment_method_transaction_id": "wave_txn_123",
"status": "completed",
"customer_email": "customer@example.com",
"customer_name": "John Doe",
"customer_phone": "+2207654321",
"payment_phone": "+2207654321",
"payment_details": {
"provider": "wave",
"reference": "wave_txn_123"
},
"mode": "test",
"livemode": false,
"initiated_at": "2024-01-15T10:30:00Z",
"processing_at": "2024-01-15T10:30:05Z",
"completed_at": "2024-01-15T10:31:00Z",
"failed_at": null,
"refunded_amount": "0.00",
"failure_reason": null,
"state_transitions": [
{
"status": "pending",
"timestamp": "2024-01-15T10:30:00Z"
},
{
"status": "processing",
"timestamp": "2024-01-15T10:30:05Z"
},
{
"status": "completed",
"timestamp": "2024-01-15T10:31:00Z"
}
],
"payment_method_response": {
"status": "success",
"provider_reference": "wave_txn_123"
},
"attempt_count": 1,
"metadata": {},
"processing_type": "async",
"recording_source": "payment_session",
"recorded_by": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:31:00Z"
}
}| Field | Type | Description |
|---|---|---|
id | string | Transaction ID |
payment_session_id | string | Associated payment session ID |
object_type | string | Type of object (payment_link, invoice, checkout, donation) |
object_id | string | ID of the related payment object |
organization_id | string | Organization ID |
customer_id | string | Customer ID |
amount | string | Transaction amount |
fee | string | Payment provider fee |
net_amount | string | Net amount after fees |
currency | string | Currency code |
payment_method | string | Payment method (wave, afrimoney, card) |
payment_method_transaction_id | string | Transaction ID from payment provider |
status | string | Transaction status |
customer_email | string | Customer email |
customer_name | string | Customer name |
customer_phone | string | Customer phone number |
payment_phone | string | Phone number used for payment |
payment_details | object | Additional payment method details |
mode | string | Payment mode (test, live) |
livemode | boolean | Whether transaction is in live mode |
initiated_at | string | When transaction was initiated (ISO 8601) |
processing_at | string | When transaction started processing (ISO 8601) |
completed_at | string | When transaction completed (ISO 8601) |
failed_at | string | When transaction failed (ISO 8601) |
refunded_amount | string | Amount refunded |
failure_reason | string | Reason for failure |
state_transitions | array | History of status changes |
payment_method_response | object | Raw response from payment provider |
attempt_count | integer | Number of payment attempts |
metadata | object | Additional metadata |
processing_type | string | Type of processing (sync, async) |
recording_source | string | Source of transaction record |
recorded_by | string | User who recorded the transaction |
created_at | string | Creation timestamp (ISO 8601) |
updated_at | string | Last update timestamp (ISO 8601) |
state_transitions array provides a complete audit trail of all status changes with timestamps, useful for debugging payment issues.