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 the
    reasonCode
    ics_rmsg
    field 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 the
requestID
field that was returned in the sale service reply.
apPaymentType
Set to
MCH
.
merchantID
merchantReferenceCode

Example: Checking Transaction Status

Light Dark
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> </>