To get the status of a transaction, you can send a request to DOKU Check Status API. It will response with the transaction status. This method requires the transaction order.invoice_number (or Request-Id) as the identifier.
Hit Check status after 60 seconds after payment completion!
To get the status for the transaction, please ensure your application is already hit after 60 seconds after payment completion.
Transaction Status Mapping
Here is the list of status that DOKU will provide for the transaction.status:
Name
Description
Final Status
Merchant Action
Applicable for Channels
PENDING
Transaction is waiting to be paid by the customer
NO
Wait for HTTP Notification or Call Check Status API to get final status
Unique random string (max 128 characters) generated from merchant side to protect duplicate request
request-timestamp
Timestamp request on UTC time in ISO8601 UTC+0 format. It means to proceed transaction on UTC+7 (WIB), merchant need to subtract time with 7. Ex: to proceed transaction on September 22th 2020 at 08:51:00 WIB, the timestamp should be 2020-09-22T01:51:00Z
signature
Signature Generation for GET Method
For GET Method, you don't need to generate a Digest. Learn more on this section.
API Response
The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it out yourself.
Convenience store
Alfa
Indomaret
The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.
The invoice number that sent when initate the payment
order.amount
string
Mandatory
The amount of the transaction
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, TIMEOUT
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Mandatory
The acquirer that processed the transaction
channel.id
string
Mandatory
The channel of the transaction
jdm.journey_id
string
Mandatory
Journey id for transaction
online_to_offline_info.created_date
string
Mandatory
Created date for Transaction
online_to_offline_info.expired_date
string
Mandatory
Expired date for Transaction
online_to_offline_info.reusable_status
string
Mandatory
Reusable status for Payment Code
online_to_offline_payment.identifier
array
Mandatory
Identifier for Transaction
Indomaret O2O Notification Explanation
Parameter
Type
Mandatory
Description
order.invoice_number
string
Mandatory
The invoice number that sent when initate the payment
order.amount
string
Mandatory
The amount of the transaction
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, TIMEOUT
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Mandatory
The acquirer that processed the transaction
channel.id
string
Mandatory
The channel of the transaction
jdm.journey_id
string
Mandatory
Journey id for transaction
online_to_offline_info.created_date
string
Mandatory
Created date for Transaction
online_to_offline_info.expired_date
string
Mandatory
Expired date for Transaction
online_to_offline_info.reusable_status
string
Mandatory
Reusable status for Payment Code
online_to_offline_payment.identifier
array
Mandatory
Identifier for Transaction
e-Wallet
DANA
ShopeePay
DOKU e-Wallet
OVO Push Payment
OVO Recurring
Link Aja
The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Mandatory
The acquirer that processed the transaction
channel.id
string
Mandatory
The channel of the transaction
card_payment.masked_card_number
string
Optional
The masked card number that charged for this transaction
card_payment.payment_id
string
Optional
The token that will be use for this transaction
card_payment.response_code
string
Optional
DOKU / Acquirer response code
Possible value: see here
card_payment.response_message
string
Optional
DOKU / Acquirer response code
Possible value: see here
Cards
Sale
Recurring
Authorize
Capture
The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Conditional
The acquirer that processed the transaction.
Mandatory if transaction.status value SUCCESS.
channel.id
string
Mandatory
The channel of the transaction
card_payment.card_masked
string
Conditional
The masked card number that charged for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.approval_code
string
Conditional
Acquirer approval code for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_code
string
Conditional
Acquirer response code.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_message
string
Conditional
Acquirer response code
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
card_payment.acquiring_off_us_status
string
Mandatory
Payment acquiring_off_us_status
Possible value: true, false
card_payment.request_id
string
Mandatory
Request ID for transaction
card_payment.card_type
string
Conditional
Card type.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: CREDIT, DEBIT
card_payment.three_dsecure_status
string
Optional
Three dsecure status
Possible value: TRUE, FALSE
card_payment.issuer
string
Conditional
Card issuer.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.transaction_status
string
Mandatory
Transaction status
Possible value: SUCCESS, FAILED, PENDING
card_payment.brand
string
Conditional
Card brand.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.date
string
Optional
Transaction card date
card_payment.authorize_id
string
Optional
Transaction authorize ID
card_payment.authentication_id
string
Optional
Transaction authentication ID
Parameter
Type
Mandatory
Description
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Conditional
The acquirer that processed the transaction.
Mandatory if transaction.status value SUCCESS.
channel.id
string
Mandatory
The channel of the transaction
card_payment.card_masked
string
Conditional
The masked card number that charged for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.approval_code
string
Conditional
Acquirer approval code for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_code
string
Conditional
Acquirer response code.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_message
string
Conditional
Acquirer response code
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
card_payment.acquiring_off_us_status
string
Mandatory
Payment acquiring_off_us_status
Possible value: true, false
card_payment.request_id
string
Mandatory
Request ID for transaction
card_payment.card_type
string
Conditional
Card type.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: CREDIT, DEBIT
card_payment.three_dsecure_status
string
Optional
Three dsecure status
Possible value: TRUE, FALSE
card_payment.issuer
string
Conditional
Card issuer.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.transaction_status
string
Mandatory
Transaction status
Possible value: SUCCESS, FAILED, PENDING
card_payment.brand
string
Conditional
Card brand.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.date
string
Optional
Transaction card date
card_payment.authorize_id
string
Optional
Transaction authorize ID
card_payment.authentication_id
string
Optional
Credit Card Notification Explanation
Credit Card Notification Explanation
Parameter
Type
Mandatory
Description
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Conditional
The acquirer that processed the transaction.
Mandatory if transaction.status value SUCCESS.
channel.id
string
Mandatory
The channel of the transaction
card_payment.card_masked
string
Conditional
The masked card number that charged for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.approval_code
string
Conditional
Acquirer approval code for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_code
string
Conditional
Acquirer response code.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_message
string
Conditional
Acquirer response code
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
card_payment.acquiring_off_us_status
string
Mandatory
Payment acquiring_off_us_status
Possible value: true, false
card_payment.request_id
string
Mandatory
Request ID for transaction
card_payment.card_type
string
Conditional
Card type.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: CREDIT, DEBIT
card_payment.three_dsecure_status
string
Optional
Three dsecure status
Possible value: TRUE, FALSE
card_payment.issuer
string
Conditional
Card issuer.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.transaction_status
string
Mandatory
Transaction status
Possible value: SUCCESS, FAILED, PENDING
card_payment.brand
string
Conditional
Card brand.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.date
string
Optional
Transaction card date
card_payment.authorize_id
string
Optional
Transaction authorize ID
card_payment.authentication_id
string
Optional
Transaction authentication ID
Credit Card Notification Explanation
Parameter
Type
Mandatory
Description
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Conditional
The acquirer that processed the transaction.
Mandatory if transaction.status value SUCCESS.
channel.id
string
Mandatory
The channel of the transaction
card_payment.card_masked
string
Conditional
The masked card number that charged for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.approval_code
string
Conditional
Acquirer approval code for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_code
string
Conditional
Acquirer response code.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_message
string
Conditional
Acquirer response code
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
card_payment.acquiring_off_us_status
string
Mandatory
Payment acquiring_off_us_status
Possible value: true, false
card_payment.request_id
string
Mandatory
Request ID for transaction
card_payment.card_type
string
Conditional
Card type.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: CREDIT, DEBIT
card_payment.three_dsecure_status
string
Optional
Three dsecure status
Possible value: TRUE, FALSE
card_payment.issuer
string
Conditional
Card issuer.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.transaction_status
string
Mandatory
Transaction status
Possible value: SUCCESS, FAILED, PENDING
card_payment.brand
string
Conditional
Card brand.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.date
string
Optional
Transaction card date
card_payment.authorize_id
string
Optional
Transaction authorize ID
card_payment.authentication_id
string
Optional
Transaction authentication ID
Credit Card Notification Explanation
Parameter
Type
Mandatory
Description
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, FAILED, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Conditional
The acquirer that processed the transaction.
Mandatory if transaction.status value SUCCESS.
channel.id
string
Mandatory
The channel of the transaction
card_payment.card_masked
string
Conditional
The masked card number that charged for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.approval_code
string
Conditional
Acquirer approval code for this transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_code
string
Conditional
Acquirer response code.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.response_message
string
Conditional
Acquirer response code
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.type
string
Conditional
Type for Credit Card Transaction.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND
card_payment.acquiring_off_us_status
string
Mandatory
Payment acquiring_off_us_status
Possible value: true, false
card_payment.request_id
string
Mandatory
Request ID for transaction
card_payment.card_type
string
Conditional
Card type.
Mandatory if transaction.status value SUCCESS or FAILED.
Possible value: CREDIT, DEBIT
card_payment.three_dsecure_status
string
Optional
Three dsecure status
Possible value: TRUE, FALSE
card_payment.issuer
string
Conditional
Card issuer.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.transaction_status
string
Mandatory
Transaction status
Possible value: SUCCESS, FAILED, PENDING
card_payment.brand
string
Conditional
Card brand.
Mandatory if transaction.status value SUCCESS or FAILED.
card_payment.date
string
Optional
Transaction card date
card_payment.authorize_id
string
Optional
Transaction authorize ID
card_payment.authentication_id
string
Optional
Transaction authentication ID
Paylater
The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
payment.merchant_unique_reference
string
Mandatory
The merchant unique reference that sent when initiate the payment
Parameter
Type
Mandatory
Description
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Mandatory
The acquirer that processed the transaction
channel.id
string
Mandatory
The channel of the transaction
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
payment.merchant_unique_reference
string
Mandatory
The merchant unique reference that sent when initiate the payment
Response Explanation
Parameter
Type
Mandatory
Description
service.id
string
Mandatory
The service that is used for the transaction
acquirer.id
string
Mandatory
The acquirer that processed the transaction
channel.id
string
Mandatory
The channel of the transaction
order.invoice_number
string
Mandatory
Same as the request that merchant sent on the payment initiation
order.amount
number
Mandatory
Same as the request that merchant sent on the payment initiation
transaction.status
string
Mandatory
The transaction status to be use to update the status on merchant side
Possible value: SUCCESS, PENDING
transaction.date
string
Mandatory
The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)
transaction.original_request_id
string
Mandatory
The request ID that sent when initiate the payment
payment.merchant_unique_reference
string
Mandatory
The merchant unique reference that sent when initiate the payment
Security parameter that needs to be generated on merchant Backend and placed to the header request to ensure that the request is coming from valid merchant. Please refer to to generate the signature