Monday, December 21, 2015
10:46 AM
Status Inquiry Payment
Merchant can inquiry several transaction status using this message. Whenever Merchant haven’t received notify payment pass due to the interval (see Create Payment Code) timer , merchant can request this message to get status of the transaction from the ATMBersama Transfer for Payment. Every transaction indicated by itemNN (NN indicates the transaction index number) tag. The message will use HTTP method POST and XML message as shown below.
Request Message Format
No | Name | Type | Status | Length | Description | |
---|---|---|---|---|---|---|
1 | type | String | M | 12 | Type of data that requested by Merchant, filled in accordance with the type of ongoing transactions: Value:reqtrxstatus |
|
2 | vaid | String | M | 12 | Payment Code that allocated for bookingid for Customer |
|
3 | booking_datetime | String | M | 19 | Created date of VAID that match with booking_datetime in Payment Code Request.Format: YYYY-MM-dd hh:mm:ss |
|
4 | username | String | M | 20 | Given Merchant user name provided by Artajasa | |
5 | signature | String | M | 32 | Signature will use MD5 with the component below: MD5(username+password+bookingID) |
Response Message Format
No | Name | Type | Status | Length | Description |
---|---|---|---|---|---|
1 | type | String | M | 10 | Filled in accordance with the type of ongoing transactions:Value: restrxstatus |
2 | bookingid | String | M | 25 | Booking ID (Received From Merchant, Unique) |
3 | clientid | String | M | 50 | Client ID that use by Merchant for identified each customer (Receive From Merchant, Unique) |
4 | customer_name | String | M | 25 | Customer name in which bookingid is attached to (Alphabet) |
5 | issuer_bank | String | M | 50 | Name of issuer bank |
6 | issuer_name | String | M | 30 | Name of issuer bank account name of ATM Bersama |
7 | amount | Int | M | 12 | Amount that customer should pay (should numeric, excluding decimal point) For example: IDR 1.892.221 will be denoted as 1892221 |
8 | productid | String | M | 2 | Product id from Merchant (must unique on Merchant’s side) |
9 | trxid | String | M | 34 | Combination of ATM Bersama transaction ID for transaction tracing. |
10 | trx_date | String | M | 19 | Date and time of the ATM Bersama transaction. Format (YYYY-MM-dd HH:mm:ss) |
11 | status | String | M | 3 | Transaction status code. |
12 | signature | String | M | 32 | Signature will use MD5 with the component below: MD5(username+password+bookingID) |
Here is the example of Transaction Status Inquiry message:
Request XML :
<?xml version="1.0" ?>
<notification>
<type>reqtrxstatus</type>
<item01>
<vaid>500100123456</vaid>
<booking_datetime>2011-11-08 22:20:33</booking_datetime>
<username>partner</username>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item01>
<item02>
<vaid>500100123457</vaid>
<booking_datetime>2011-11-08 22:20:53</booking_datetime>
<username>partner</username>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item02>
<item03>
<vaid>500100123458</vaid>
<booking_datetime>2011-11-08 22:21:33</booking_datetime>
<username>partner</username>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item03>
<itemNN>
<vaid>...</vaid>
<booking_datetime>...</booking_datetime>
<username>...</username>
<signature>...</signature>
</itemNN>
</notification>
Response XML :
<?xmlversion="1.0"?>
<notification>
<type>restrxstatus</type>
<item01>
<bookingid>123456789</bookingid>
<vaid>500100123456</vaid>
<clientid>1</clientid>
<customer_name>Faisal</customer_name>
<issuer_bank>Bank Rakyat Indonesia</issuer_bank >
<issuer_name>NAMA BIN NAMA</issuer_name>
<amount>1000000</amount>
<productid>01</productid>
<trxid>0000021805410607000014000000000000</trxid>
<trx_date>2013-09-08 21:20:33</trx_date>
<status>00</status>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item01>
<item02>
<bookingid>123456790</bookingid>
<vaid>500100123457</vaid>
<clientid>1</clientid>
<customer_name>Faisal</customer_name>
<issuer_bank>Bank Rakyat Indonesia</issuer_bank>
<issuer_name>NAMA BIN NAMA</issuer_name>
<amount>1000000</amount>
<productid>01</productid>
<trxid>0000021805410607000014000000000000</trxid>
<trx_date>2013-09-08 21:20:33</trx_date>
<status>00</status>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item02>
<item03>
<bookingid>123456791</bookingid>
<vaid>500100123458</vaid>
<clientid>1</clientid>
<customer_name>Faisal</customer_name>
<issuer_bank>Bank Rakyat Indonesia</issuer_bank>
<issuer_name>NAMA BIN NAMA</issuer_name>
<amount>1000000</amount>
<productid>01</productid>
<trxid>0000021805410607000014000000000000</trxid>
<trx_date>2013-09-08 21:20:33</trx_date>
<status>00</status>
<signature>9bb575179ef43032d7dee3e57bbb5575</signature>
</item03>
<itemNN>
<bookingid>...</bookingid>
<vaid>...</vaid>
<clientid>...</clientid>
<customer_name>...</customer_name>
<issuer_bank>...</issuer_bank>
<issuer_name>...</issuer_name>
<amount>...</amount>
<productid>...</productid>
<trxid>...</trxid>
<trx_date>...</trx_date>
<status>...</status>
<signature>...</signature>
</itemNN>
</notification>
Below are the list of all Transaction Status Code:
- “00” -> Transaction Success
- “05” -> Transaction failed / general error
- “13” -> INVALID AMOUNT
- “78” -> ALREADY PAID (Transaction Success)
- “76” -> Maturity time expired
- “101” -> Ilegal signature
- “312” -> Empty Stock (Optional)
- “300” -> No Transaction Found
- “400” -> Success Transfer, REVERSAL Rejected (Transaction Success)
- “401” -> Transfer Cancel, REVERSAL Approve
For status 00, 78, 400 merchant must flag that transaction status is success and not re-inquiry transaction status after receive those status.