Check Transaction Status
Request the check status service when the authorization status is pending.
The check status service returns the latest status of a transaction. The request ID links
the check status request to the payment or refund transaction.
- To check the status of the sale service, include the request ID value returned in the sale service reply.
- To check the status of the refund service, include the request ID value returned in the refund service reply.
Cybersource
recommends waiting 30 seconds before requesting the check
status service.If the check status reply is pending, wait 5 minutes before making the check
status request again. If there is still no status change, wait 20 minutes before
making another check status request. After 20 minutes, the status should be
settled
, abandoned
, or failed
.When the payment is confirmed, the customer is directed to your success URL. Your success
URL should point to a static web page that confirms the order is being processed. When
the payment completes, notify the customer using email or a dedicated web page.
Do not ship your goods until the payment status is
settled
.Endpoints
Set the
apCheckStatusService_run
field
to true
, and send the request to one of these
endpoints:Production:
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
Test:
https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor
Response Statuses
The check status service responds with one of these statuses in the
apCheckStatusReply_paymentStatus
field.- Abandoned: the customer did not complete the transaction within 15 minutes.
- Failed: the payment failed. Look at thereasonCodeics_rmsgfield for a description.
- Pending: the payment was initiated. Do not ship the goods.
- Settled: the payment is complete. You can ship the goods.
The check status service also responds with a reason code in the
apCheckStatusReply_reasonCode
field. For more information
about reason codes, see the Reason Codes and Response Codes for the Simple Order API.Required Fields for Checking Transaction Status
- apCheckStatusService_checkStatusRequestID
- To check the status of a sale, include the value of therequestIDfield that was returned in the sale service reply.
- apPaymentType
- Set toMCH.
- merchantID
- merchantReferenceCode
Example: Checking Transaction Status
Check Transaction Status Service Request
12345678<="urn:schemas-cybersource-com:transaction-data-1.126"> <merchantID>mid43210</merchantID> <merchantReferenceCode>refnum1234</merchantReferenceCode> <apPaymentType>MCH</apPaymentType> <apCheckStatusService run="true"> <checkStatusRequestID>4703329437356002101200</checkStatusRequestID> </apCheckStatusService> </>
Response to a Successful Check Transaction Status Service Request
12345678910111213<:c="urn:schemas-cybersource-com:transaction-data-1.126"> <merchantReferenceCode>refnum1234</merchantReferenceCode> <requestID>52391098509302958393020294</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <apCheckStatusReply> <reasonCode>100</reasonCode> <reconciliationID>TC38480966</reconciliationID> <paymentStatus>settled</paymentStatus> <processorResponse>000004</processorResponse> <dateTime>2020-01-11T15:16:14Z</dateTime> </apCheckStatusReply> </>