To notify the merchant about payment results in real-time the IPS Assist provides the service for synchronous sending the results of the payment to the merchant server. After completion of the buyer payment (by bankcard or by e-cash) the message is being sent to the merchant server via HTTP POST method with parameters of the payment.
In the Personal Account you can specify the URL for sending the results, the type of signature and the secret word.
After you configure and activate the service the results of payments by bankcards and electronic cash will be sent to the enterprise server. The results of payment confirmation, refunds and cancellations are not sent. Also the result of a payment which is closed by timeout is not sent.
Attention! For security reasons results are sent only on ports 443, 8443, 80, 8080. No other ports can be used to receive the results!
To use the service through HTTPS a certificate from the trusted certification authority must be used.
The list of the sent parameters:
Parameter | Value |
merchant_id | The merchant identifier in IPS Assist |
ordernumber | Order number |
billnumber | Unique order number in IPS Assist |
testmode | Test mode |
ordercomment | Comment |
orderamount | Original amount of order |
ordercurrency | Original currency of order |
amount | Order amount |
currency | Order currency |
rate | Currency rate |
firstname | Payer's first name |
lastname | Payer's last name |
middlename | Payer's middle name |
Payer's e-mail | |
clientip | Customer IP-address |
ipaddress | Payer's IP-address |
meantype_id | Payment means ID |
meantypename | Type of payment means |
meansubtype | Subtype of payment means |
meannumber | Number of payment means |
cardholder | Payment means holder |
cardexpirationdate | Card expired date |
issuebank | Issuing bank name |
bankcountry | Country of issuing bank |
orderdate | Date of order(GMT) |
orderstate | Order status |
responsecode | Response code |
message | Message |
customermessage | Result message for customer |
recommendation | Recommendation |
approvalcode | Authorization code |
protocoltypename | Protocol |
processingname | Processing name |
operationtype | Operation type |
operationdate | Operation date and time(GMT) |
authresult | 3Ds authorization result (Y – success, N - fail, A - Attempt, U – unknown, R – rejection, C –not completed for any reason, E - error, I - Informational Only) |
authrequired | The card involvement in 3Ds check result (1 – involved, 0 – not involved, -1 – unknown, null – error appear during involvement check) |
packetdate | Request date (GMT) |
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 | Request validation code 1) For signature type MD5 – calculated as: uppercase(md5(uppercase(md5(SALT) + md5(Х)))), where SALT – the secret word; Х – is string concatenation of merchant_id, ordernumber, orderamount, ordercurrency, orderstate string representations (without delimiters). 2) For PGP type – empty |
slipno | Financial transaction identifier (not used) |
personalaccount | The the ERIP personal account number, on which the payment was made. Attention! The parameter is added at the request of the merchant (if there are prepayments) to the IPS Assist technical support service (support@belassist.by) |
3DSecure parameters | |
version | 3DSecure protocol version |
alphaauthresult | 3Ds authorization result (Y – success, N - fail, A - Attempt, U – unable to authenticate, R – rejection, C – not completed for any reason, E - error ) |
challenge | Interaction with the cardholder (C – yes, F – no) |
eci | Electronic Commerce Indicator (5 – full authentication, 6 – authentication attempt, 7 – without authentication) |
If the expected response setting is different from HTTP 200, then in response to the message about the payment results, the IPS Assist expects an xml package from the enterprise system.
In case of the successful receiving and processing message the format of the replay packet should be:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <SOAP-ENV:Body> <m:PushPaymentResultResponse xmlns:m="http://www.assist.ru/wsdl"> <return xmlns:si="http://www.assist.ru/type/" xsi:type="si:SOAPStruct"> <billnumber>5696145241469255.1</billnumber> <packetdate>26.06.2019 08:44:00</packetdate> </return> </m:PushPaymentResultResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
In case of failure:
<?xml version="1.0" encoding="windows-1251"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Fault> <faultcode>5</faultcode> <faultstring>143</faultstring> <detail /> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
For the description of the first and second codes of the automated interfaces refer to table "Error codes"
If there is no answer from the merchant (either about success or about failure in the message handling), and at the same time the expected response setting is different from HTTP 200, the system repeats sending the payment result message with increasing intervals during the four hours but not more than 8 times.
Attention! When the received replay indicates a failure in message handling the sending of payment results is not repeated. Values of firstcode, secondcode are used for used to diagnose the problems.
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.