Skip to main content

Check Transaction Status

Retrieves the current transaction status from the database.

Endpoint

GET https://api.paysecurez.com/api/v1/transactions/{txNo}/status

Response

Returns the current transaction data:

{
"TransactionId": "txn_mhuph5pq",
"Status": "Captured",
"Amount": 25.00,
"Currency": "USD",
"Reference": "abc_1234567890",
"DeclineReason": null,
"CreatedAt": "2025-10-03T06:29:55.7233604Z",
"ProviderTransactionId": "ps_96f1df74-252c-456a-90eb-5c6f557b47b6",
"ProviderStatus": "Captured",
"ProviderMessage": "Payment completed successfully",
"UserDefinedField1": "Custom Value 1",
"UserDefinedField2": "Custom Value 2",
"UserDefinedField3": "Custom Value 3"
}
Important

Always use the Status field as the authoritative source of truth for transaction state. While ProviderStatus and ProviderMessage provide additional context from the payment processor, your business logic should always be based on the Status field.

Response Fields

FieldTypeDescription
TransactionIdstringUnique ZepoPay transaction identifier
StatusstringTransaction status (Pending, Captured, Failed, Declined, etc.)
AmountdecimalTransaction amount
CurrencystringCurrency code (e.g., USD, AUD)
ReferencestringYour custom reference/order ID
DeclineReasonstringReason for decline (if applicable)
CreatedAtdatetimeTransaction creation timestamp
ProviderTransactionIdstringExternal payment processor transaction ID
ProviderStatusstringExternal payment processor status
ProviderMessagestringMessage from payment processor
SuccessUrlstringURL for successful payment redirects
PendingUrlstringURL for pending payment redirects
FailureUrlstringURL for failed payment redirects
UserDefinedField1-3stringCustom fields you provided during creation

Decline Reasons

When a transaction has Status: "Declined" or Status: "Failed", the DeclineReason field provides details about why the transaction was not successful.

Common Decline Reasons

Decline ReasonDescription
Transaction ExpiredCustomer did not complete the payment within the allowed time window
Payment Cancelled By UserCustomer explicitly cancelled the payment
Declined By BankThe issuing bank declined the transaction
Insufficient FundsCustomer's account does not have sufficient balance
Provider ErrorThe payment processor encountered a technical error
Country Not Supported On Payment MethodThe customer's country is not supported by the selected payment method
Currency Not SupportedThe transaction currency is not supported by the payment method
Payment Method Not AvailableThe selected payment method is temporarily unavailable
Invalid Card DetailsCard number, CVV, or expiry date is invalid
Card ExpiredThe payment card has expired
3DS Authentication FailedCustomer failed 3D Secure verification
Suspected FraudTransaction flagged by fraud detection system
Daily Limit ExceededTransaction exceeds customer's daily spending limit
Restricted CardCard is restricted by the issuing bank
tip

Always display the DeclineReason to your customer when available, as it helps them understand what action to take (e.g., use a different card, contact their bank, etc.).

Status Values

StatusDescription
PendingTransaction initiated, awaiting processing
CapturedPayment successfully completed
FailedPayment processing failed
DeclinedPayment declined by processor
RefundedPayment refunded to customer
AuthorizedPayment authorized but not yet captured
ChargebackCustomer disputed the transaction
Use Case

Use this endpoint for manual verification, customer support inquiries, or debugging. For production transaction monitoring, always rely on webhook notifications.

note

This endpoint returns the current stored status without making external API calls to payment processors. For real-time status updates, your webhook endpoint will receive notifications automatically.