Diagnose Interface

The Diagnose interface allows you to make a request to the Payment Gateway which will verify the status of the transaction. If the requested transaction has a capture or chargeback, the status of this will be sent back.
If the Diagnose requests are sent correctly to the system, the Diagnose interface will send back the transactions via XML Response.

When you use the diagnose interface you can specify what type or status of transaction you need.

Request with transaction type

To initiate a diagnose interface for the specific transaction type you need to send a request to

POST https://sandbox.payabl.com/pay/backoffice/tx_diagnose

In your request, include:

  • merchantid: The merchant identification number is issued during account creation.
  • type: The type of transaction like capture, chb (chargebacks), refund, retrieval_request, cft
  • start_date: Start time frame, from what date you want to request transactions.
  • end_date: The end time frame.
  • signature: The signature field contains a 40-figure hexadecimal value. This signature value is a checksum designed to protect the merchant account from unauthorized access.

📘

Note

The end_date is inclusive, e.g. if you want to get a list of all transactions imported into the payment gateway on the 1st of May 2015 for example, your start_date and end_date would both be <01.05.2015>.


📘

Note

Please specify filters and don't set up date range more than months. In case of 504 error, specify your request and reduce the timeframe.

Request example

merchantid=api_test&type=capture&start_date=01.01.2012&end_date=13.02.2012&signature=b46676315eefecf32df9831e31398565f7e1d4eb

Response example

<?xml version="1.0" encoding="ISO-8859-1"?>
<response>
<process>
<error_message/>
<process_time>13.02.2012 16:41:19</process_time>
<status>0</status>
</process>
<transaction>
<amount>1.23</amount>
<booking_date>10.02.2012 16:52:25</booking_date>
<currency>EUR</currency>
<issue_date>10.02.2012 16:19:10</issue_date>
<order_id>1234-123456789-4321</order_id>
<transaction_id> 6905370</transaction_id>
</transaction>
</response>

📘

Possible tx types in response

invoice -> authorized
booked -> captured
refund
chargeback
retrieval_request
partial booking -> partial capture
reversal

Request with transaction status

To initiate a diagnose interface for the specific transaction status you need to send a request to

POST https://sandbox.powercash21.com/pay/backoffice/tx_diagnose

In your request, include:

  • merchantid: The merchant identification number is issued during account creation.
  • type: The type of transaction like pending, failed
  • start_date: Start time frame, from what date you want to request transactions.
  • end_date: The end time frame.
  • signature: The signature field contains a 40-figure hexadecimal value. This signature value is a checksum designed to protect the merchant account from unauthorized access.

Request example

merchantid=api_test&type=failed&start_date=01.01.2012&end_date=13.02.2012&signature=33c35b230870582a0916419cbac7fba9d940d1b1

Response example

<?xml version="1.0" encoding="ISO-8859-1"?>
<response>
<process>
<error_message/>
<process_time>13.02.2012 17:04:31</process_time>
<status>0</status>
</process>
<transaction>
<amount>1.23</amount>
<currency>EUR</currency>

<error_code>-5000</error_code>
<order_id>1234-123456789-4321</order_id>
<transaction_date>12.01.2012 13:33:26</transaction_date>
<transaction_id>6904865</transaction_id>
</transaction>
</response>

Request with transaction ID or order ID

To initiate a diagnose interface for the specific transaction status you need to send a request to

POST https://sandbox.payabl.com/pay/backoffice/tx_diagnose

In your request, include:

  • merchantid: The merchant identification number is issued during account creation.
  • type: tx for transaction ID and orderid for Order ID
  • transactionid OR orderid
  • signature: The signature field contains a 40-figure hexadecimal value. This signature value is a checksum designed to protect the merchant account from unauthorized access.

If you send a request with a transaction id or order id, you don't need to specify start_date or end_date.

Request example

merchantid=api_test&type=tx&transactionid=6907711&signature=fd4ad8563aa13c3ffc3e1108496bc6ad4aa848ea

Response example

<?xml version="1.0" encoding="ISO-8859-1"?>
<response>
<process>
<error_message></error_message>
<process_time>24.05.2012 14:11:37</process_time>
<status>0</status>
</process>
<transaction>
<transaction_id>6907711</transaction_id>
<transaction_status>
<step1>
<amount>1.23</amount>
<creation_date>24.05.2012 14:07:43</creation_date>
<currency>EUR</currency>
<custom1> </custom1>
<error_code>0</error_code>
<order_id>1234-123456789-4321</order_id>
<type>invoice</type>
</step1>
<step2>
<amount>1.23</amount>
<creation_date>24.05.2012 14:11:07</creation_date>
<currency>EUR</currency>
<custom1> </custom1>
<error_code>0</error_code>
<order_id>1234-123456789-4321</order_id>
<type>booked</type>
</step2>
</transaction_status>
</transaction>
</response>