Page History
...
Parameter | Mandatory field | Adopted values | Default value | Description |
Ordernumber | Yes | String, 128 characters | Order number | |
Merchant_ID | Yes | Number | The enterprise identifier in IPS Assist | |
Login | Yes | 8 - 20 characters | Login (Latin letters, digits and symbol _) | |
Password | Yes | 8 - 20 characters | Password (Latin letters and digits) | |
StartYear | No | Year in "2011" format | Minus three days from the current date | Sampling start date (GMT) |
StartMonth | No | 1 - 12 | Minus three days from the current date | |
StartDay | No | 1 - 31 | Minus three days from the current date | |
StartHour | No | 0 - 23 | Minus three days from the current date | |
StartMin | No | 0 - 59 | Minus three days from the current date | |
EndYear | No | Year in "2011" format | Current year | Sampling end date (GMT) |
EndMonth | No | 1 - 12 | Current month | |
EndDay | No | 1 - 31 | Current day | |
EndHour | No | 0 - 23 | Current hour | |
EndMin | No | 0 - 59 | Current minute | |
Language | No | RU EN | EN | Language of the results output |
Format | Yes/No | 3 – - XML | 3 | Format of the results output. Passed only for a request in POST format (by default, the response will be returned in XML format). For other formats, the response is returned in the same format in which the request was made. |
...
Parameter | Value |
Order parameters | |
billnumber | Unique order number in IPS Assist |
ordernumber | Order number |
testmode | Test mode |
ordercomment | Comment |
orderamount | Original amount of order |
ordercurrency | Original currency of order |
firstname | Payer's first name |
lastname | Payer's last name |
middlename | Payer's middle name |
Payer's e-mail | |
orderdate | Date of order |
orderstate | Order status |
errorcode2 | |
packetdate | Request issue date |
signature | 1) For signature type MD5 - empty; 2) For PGP type – - an X value, signed by IPS Assist secret key and converted into BASE64 string. |
checkvalue | 1) For PGP type – - empty; 2) For MD5 type –- uppercase(md5(uppercase(md5(SALT) + md5(Х)))), where SALT - – - secret word; Х – - result of the following parameters string concatenation: merchant_id, ordernumber, orderamount, ordercurrency, orderstate (without delimiters), + means string concatenation. |
Operation parameters | |
billnumber | Extended format of billnumber |
operationtype | Operation type |
operationstate | Operation status |
amount | Operation amount |
currency | Currency of operation |
ipaddress | Payer's IP-address |
clientip | Transactor's IP-address |
meantype_id | Type of payment means |
meansubtype | Payment means subtype |
meannumber | Number of payment means |
cardholder | Payment means holder |
cardexpirationdate | Card expired date |
issuebank | Name of issue bank |
bankcountry | Country of issue bank |
responsecode | Response code |
message | Operation result message |
customermessage | Result message for a customer |
recommendation | Recommendation |
approvalcode | Authorization code |
protocolname | Protocol |
processingname | Processing |
operationdate | Operation date and time (GMT) |
authresult | 3Ds authorization result (Y – - success, N - fail, A - Attempt, U – - unknown, R – - rejection, C –not -not completed for any reason, E - error) |
authrequired | The card involvement in 3Ds check result (1 – - involved, 0 – - not involved, -1 – - unknown, null – - error appear during involvement check) |
slipno | Financial transaction identifier |
errorcode2 | |
externalrefundid1 | External refund ID |
3DSecure parameters | |
version | 3DSecure protocol version |
alphaauthresult | 3Ds authorization result (Y – - success, N - fail, A - Attempt, U – - unable to authenticate, R – - rejection, C –not -not completed for any reason, E - error, I - Informational Only) |
challenge | Interaction with the cardholder (C – - yes, F – - no, D - Decoupled Authentication) |
eci | Electronic Commerce Indicator (5 – - full authentication, 6 – - authentication attempt, 7 – - without authentication) |
Anchor | ||||
---|---|---|---|---|
|
...
1The parameter is sent only if it was sent in the cancellation request using the wscancel service and the results output format is JSON or XML.
Anchor | ||||
---|---|---|---|---|
|
2To transfer this parameter, please, contact the support service (support@belassist.by).
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
The parameter is useful for orders in Declined and Timeout statuses, it helps to identify a payment error (for example, to build a report on various errors), but it does not determine the payment status. The parameter will be present in both the operation data block and the order data block. In most cases, the errorcode parameter will be 0 for an order. This does not mean that the order has been successfully paid. This means that there is no error code at the order level. The payment status is determined by the orderstate and the responsecode. In addition, an order that does not contain an operation can be created (and subsequently closed with an error). An example of a request result for an order without an operation:
An example of a request result for an order with an operation:
|
Warning |
---|
Attention! Please, note that several operations can be created within one order (payment, payment confirmation, cancellation). Furthermore, there can be several payment operations within one order, if some of them were unsuccessful. The order can have the only one successful payment operation. Thus there can be several enclosed operations within one order number in the response to a request for the operations results. |
Warning |
---|
Attention! The testmode value of response has to be checked. If the payment was made in test mode (testmode = 1), then the shipment of goods or providing of services for the current request is not required. |
Warning |
---|
There are performance limitations when using the service. |
An example of a request result in XML format:
Code Block | ||
---|---|---|
| ||
<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<!DOCTYPE result [
<!ATTLIST result
firstcode CDATA #REQUIRED
secondcode CDATA #REQUIRED
count CDATA #REQUIRED>
<!ELEMENT result (order*)>
<!ELEMENT order (ordernumber?,billnumber?,testmode?,ordercomment?,orderamount?,ordercurrency?,firstname?,lastname?,middlename?,email?,orderdate?,orderstate?,packetdate?,signature?,checkvalue?,operation*)>
<!ELEMENT ordernumber (#PCDATA)>
<!ELEMENT billnumber (#PCDATA)>
<!ELEMENT testmode (#PCDATA)>
<!ELEMENT ordercomment (#PCDATA)>
<!ELEMENT orderamount (#PCDATA)>
<!ELEMENT ordercurrency (#PCDATA)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT middlename (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT orderdate (#PCDATA)>
<!ELEMENT orderstate (#PCDATA)>
<!ELEMENT packetdate (#PCDATA)>
<!ELEMENT signature (#PCDATA)>
<!ELEMENT checkvalue (#PCDATA)>
<!ELEMENT operation (billnumber?,operationtype?,operationstate?,amount?,currency?,clientip?,ipaddress?,meantype_id?,meantypename?,meansubtype?,meannumber?,cardholder?,cardexpirationdate?,issuebank?,bankcountry?,responsecode?,message?,customermessage?,recommendation?,approvalcode?,protocoltypename?,processingname?,operationdate?,authresult?,authrequired?, slipno?)>
<!ELEMENT operationtype (#PCDATA)>
<!ELEMENT operationstate (#PCDATA)>
<!ELEMENT amount (#PCDATA)>
<!ELEMENT currency (#PCDATA)>
<!ELEMENT clientip (#PCDATA)>
<!ELEMENT ipaddress (#PCDATA)>
<!ELEMENT meantype_id (#PCDATA)>
<!ELEMENT meantypename (#PCDATA)>
<!ELEMENT meansubtype (#PCDATA)>
<!ELEMENT meannumber (#PCDATA)>
<!ELEMENT cardholder (#PCDATA)>
<!ELEMENT cardexpirationdate (#PCDATA)>
<!ELEMENT issuebank (#PCDATA)>
<!ELEMENT bankcountry (#PCDATA)>
<!ELEMENT responsecode (#PCDATA)>
<!ELEMENT message (#PCDATA)>
<!ELEMENT customermessage (#PCDATA)>
<!ELEMENT recommendation (#PCDATA)>
<!ELEMENT approvalcode (#PCDATA)>
<!ELEMENT protocoltypename (#PCDATA)>
<!ELEMENT processingname (#PCDATA)>
<!ELEMENT operationdate (#PCDATA)>
<!ELEMENT authresult (#PCDATA)>
<!ELEMENT authrequired (#PCDATA)>
<!ELEMENT slipno (#PCDATA)>]>
<result firstcode='0' secondcode='0' count='1'>
<order>
<ordernumber>0001-01</ordernumber>
<billnumber>511111100000001</billnumber>
<testmode>1</testmode>
<ordercomment>тестовый платеж</ordercomment>
<orderamount>100.00</orderamount>
<ordercurrency>BYN</ordercurrency>
<firstname>Test</firstname>
<lastname>Testov</lastname>
<middlename>Testovich</middlename>
<email>test@testpost.by</email>
<orderdate>06.07.2016 11:23:13</orderdate>
<orderstate>Approved</orderstate>
<packetdate>06.07.2016 12:05</packetdate>
<signature></signature>
<checkvalue> </checkvalue>
<operation>
<billnumber>511111100000001.1</billnumber>
<operationtype>100</operationtype>
<operationstate>Success</operationstate>
<amount>100.00</amount>
<currency>BYN</currency>
<clientip>111.23.11.23</clientip>
<ipaddress>0.0.0.0</ipaddress>
<meantype_id>1</meantype_id>
<meantypename>VISA</meantypename>
<meansubtype>Classic</meansubtype>
<meannumber>411111****1111</meannumber>
<cardholder>TEST</cardholder>
<cardexpirationdate>12/20</cardexpirationdate>
<issuebank>New Bank</issuebank>
<bankcountry>Russia</bankcountry>
<responsecode>AS000</responsecode>
<message> </message>
<customermessage> </customermessage>
<recommendation></recommendation>
<approvalcode>F41412</approvalcode>
<protocoltypename>NET</protocoltypename>
<processingname>Name</processingname>
<operationdate>06.07.2016 11:24:13</ operationdate>
<authresult>Y</authresult>
<authrequired>1</authrequired>
</slipno></operation>
<threedsdata>
<version>1.0.0</version>
<alphaauthresult>Y</alphaauthresult>
<challenge>C</challenge>
<eci>5</eci>
</threedsdata>
<operation>
<billnumber>511111100000001.2</billnumber>
<operationtype>200</operationtype>
<operationstate>Success</operationstate>
<amount>100.00</amount>
<currency>BYN</currency>
<clientip>111.23.11.23</clientip>
<ipaddress>0.0.0.0</ipaddress>
<meantype_id>1</meantype_id>
<meantypename>VISA</meantypename>
<meansubtype>Classic</meansubtype>
<meannumber>411111****1111</meannumber>
<cardholder>TEST</cardholder>
<cardexpirationdate>12/20</cardexpirationdate>
<issuebank>New Bank</issuebank>
<bankcountry>Russia</bankcountry>
<responsecode>AS000</responsecode>
<message> </message>
<customermessage> </customermessage>
<recommendation></recommendation>
<approvalcode></approvalcode>
<protocoltypename></protocoltypename>
<processingname>Name</processingname>
<operationdate>06.07.2016 19:24:13</operationdate>
<authresult></authresult>
<authrequired></authrequired>
</slipno>
</operation></order></result> |
An example of request result in XML format, returning the error (wrong password):
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<!DOCTYPE result [...]>
<result firstcode="7" secondcode="102" count="0"></result> |
For the description of the first and second codes of the automated interfaces refer to the table "Error codes". Tables "Order state", "Operation type", "Response Codes", "Currency codes" also include the descriptions of possible order statuses, types of operations, response codes and currency codes, respectively. The first 6 digits and the last 4 digits of the card number are returned as the field <meannumber> value; the other digits are hidden under symbol *.
The WEB-service description for SOAP format can be seen on page:
https://<SERVER-NAME>/orderresult/orderresult.wsdl.
Note |
---|
If the order payment attempt was unsuccessful (card is not authorized or timeout), then the payment repeat will create a new unique number (billnumber) in the IPS Assist for the same order number of internet-shop, which will be reflected in the response to the order status request. In this case, the response to the request contains all the operations performed under this order number with all relevant unique billnumbers of IPS Assist in order of implementation of them. |
An example of request result in SOAP format for the case of successful payment order at the second attempt, the first attempt was closed due to a timeout, and the second (successful) consists of two operations:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://www.paysecure.ru/ws/"><soapenv:Body>
<ws:orderresultResponse><orderresult>
<order>
<ordernumber>13032014_122</ordernumber>
<billnumber>5500069208498005</billnumber>
<testmode>1</testmode>
<ordercomment>тестовый платеж</ordercomment>
<orderamount>100.00</orderamount>
<ordercurrency>BYN</ordercurrency>
<firstname>Test</firstname>
<lastname>Testov</lastname>
<middlename>T.</middlename>
<email>test@test.by</email>
<orderdate>06.07.2016 13:38:24</orderdate>
<orderstate>Timeout</orderstate>
<packetdate>06.07.2016 14:55</packetdate>
<signature></signature>
<checkvalue>863F176DC699131758B2230EA93BC911</checkvalue>
</order>
<order>
<ordernumber>13032014_122</ordernumber>
<billnumber>5500069208498070</billnumber>
<testmode>1</testmode>
<ordercomment>тестовый платеж</ordercomment>
<orderamount>100.00</orderamount>
<ordercurrency>BYN</ordercurrency>
<firstname>Test</firstname>
<lastname>Testov</lastname>
<middlename>T.</middlename>
<email>test@test.by</email>
<orderdate>06.07.2016 14:52:09</orderdate>
<orderstate>Approved</orderstate>
<packetdate>06.07.2016 14:55</packetdate>
<signature></signature>
<checkvalue>E458CD73F1AA3F994F4D97C40613FD0A</checkvalue>
<operation>
<billnumber>5500069208498070.1</billnumber>
<operationtype>100</operationtype>
<operationstate>Success</operationstate>
<amount>100.00</amount>
<currency>BYN</currency>
<clientip>10.10.10.10</clientip>
<ipaddress>0.0.0.0</ipaddress>
<meantype_id>1</meantype_id>
<meantypename>VISA</meantypename>
<meansubtype>Busines</meansubtype>
<meannumber>462710****4724</meannumber>
<cardholder>TEST</cardholder>
<cardexpirationdate>12/20</cardexpirationdate>
<issuebank>Bank</issuebank>
<bankcountry>RUS</bankcountry>
<responsecode>AS000</responsecode>
<message> </message>
<customermessage> </customermessage>
<recommendation></recommendation>
<approvalcode>X53576</approvalcode>
<protocoltypename>NET</protocoltypename>
<processingname>Fake</processingname>
<operationdate>06.07.2016 14:52:10</operationdate>
<authresult></authresult>
<authrequired>0</authrequired>
<slipno></slipno>
<threedsdata>
<version>1.0.0</version>
<alphaauthresult>C</alphaauthresult>
<challenge>C</challenge>
<eci></eci>
</threedsdata>
</operation>
<operation>
<billnumber>5500069208498070.2</billnumber>
<operationtype>200</operationtype>
<operationstate>Success</operationstate>
<amount>100.00</amount>
<currency>BYN</currency>
<clientip>10.10.10.10</clientip>
<ipaddress>0.0.0.0</ipaddress>
<meantype_id>1</meantype_id>
<meantypename>VISA</meantypename>
<meansubtype>Busines</meansubtype>
<meannumber>462710****4724</meannumber>
<cardholder>TEST</cardholder>
<cardexpirationdate>12/20</cardexpirationdate>
<issuebank>Bank</issuebank>
<bankcountry>RUS</bankcountry>
<responsecode>AS000</responsecode>
<message> </message>
<customermessage> </customermessage>
<recommendation></recommendation>
<approvalcode></approvalcode>
<protocoltypename></protocoltypename>
<processingname>Fake</processingname>
<operationdate>06.07.2016 14:53:37</operationdate>
<authresult></authresult>
<authrequired>0</authrequired>
<slipno></slipno>
<threedsdata>
<version>1.0.0</version>
<alphaauthresult>Y</alphaauthresult>
<challenge>C</challenge>
<eci>5</eci>
</threedsdata>
</operation>
</order>
</orderresult></ws:orderresultResponse></soapenv:Body></soapenv:Envelope> |
Warning | ||
---|---|---|
| ||
The following root certificates have to be installed on the requester side in the Trusted Root Certification Authorities Store for correct work with WEB-services via secure communication over TLS:
Before to start, check the presence of these certificates in the trust store and add tit if necessary. |