Skip to main content

Transaction Status Codes

The table below lists common respcd values returned by QFPay APIs.
respcd = 0000 indicates the API request was processed successfully.The actual transaction result should be determined using business fields such as txstatus or by calling the Transaction Enquiry API.

Successful Response


Request & Signature Errors

Integration Guidance
  • Validate required parameters
  • Ensure correct signature algorithm and sorting
  • Ensure out_trade_no is unique per merchant

Device & Store Status Errors

Integration Guidance
  • Verify merchant onboarding configuration
  • Confirm device/store activation status
  • Contact technical support if persistent

Order State Conflicts

Integration Guidance
  • Always query transaction status before retrying
  • Avoid resubmitting payment requests blindly
  • Ensure idempotent handling in your system

Processing / Pending States

Integration Guidance
  • Do not immediately retry
  • Implement delayed polling via Transaction Enquiry API
  • Prevent duplicate payment submission

Payment Channel Errors

Integration Guidance
  • Allow customer to retry payment
  • Suggest alternative payment method if applicable

Refund Restrictions

Integration Guidance
  • Verify original transaction status before refund
  • Check refundable balance
  • Confirm payment channel refund rules

System / Risk / Network Errors

Integration Guidance
  • Retry only when appropriate (e.g. 1295, 1296)
  • Do not automatically retry risk-related errors (e.g. 1294)
  • Log full request and response for troubleshooting

Recommended Handling Strategy

  1. Implement idempotency using out_trade_no
  2. Query transaction status before retrying
  3. Apply retry logic only for safe retry codes
  4. Log all error responses for audit and reconciliation