One-phase card payment pattern:
formUrl
parameter).
formUrl
parameter in response to the order registration request. .
The results of checking the order for fraud are returned to the payment gateway.
In the event that, according to the store's settings, the payment must go over SSL, then the next step of the scenario (10) is performed.
If, according to the store's settings, the payment must be 3DS, the following actions will be performed
The payment gateway checks the card's enrolment in 3-D Secure.
If authorization through ACS is not required for this card, then the next step of the scenario (10) is executed.
If authorization through ACS is required, the following actions will be performed:
The store's system requests the order payment status from the payment gateway (by the unique order ID in the payment system, which was received when the order was registered in the orderId
parameter).
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
Cancellation of order payment is available to stores if they have the appropriate rights (in agreement with the bank). For one-phase payments, payment cancellation is possible for orders in the Completed/Deposited state.
Order payment is cancelled by standard means:
Using the API, through REST/WS interfaces. The request specification is presented in the following sections:
If the cancellation operation is successful, the order will be transferred from the Completed/Deposited state to the Canceled/Reversed state..
A full or partial refund for paid orders (in the Completed/Deposited state) is carried out by standard means:
Using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
After IPS receives a refund request sent by one of the above methods, IPS returns the specified amount to the client's account.
The system allows the store to independently verify the enrolment of the bank card in 3-D Secure, if necessary. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
The system allows you to add additional parameters to the order if necessary. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
The system allows you to generate statistics on payments for a certain period using the API, through SOAP / REST interfaces. The request specification is presented in the following sections:
Two-phase card payment pattern:
orderId
parameter) and the URL to which the user must be redirected to receive the payment form (in the formUrl
parameter).
formUrl
parameter in response to the order registration request.
The results of checking the order for fraud are returned to the payment gateway.
In the event that, according to the store's settings, the payment must go over SSL, then the next step of the scenario (10) is performed.
If, according to the store's settings, the payment must be 3DS, the following actions will be performed:
The payment gateway checks the card number to determine whether the use of 3-D Secure technology is required when making a payment.
If authorization through ACS is not required for this card, then the next step of the scenario (10) is executed.
If authorization through ACS is required, the following actions will be performed:
The store's system requests the order payment status from the payment gateway (by the unique order ID in the payment system, which was received when the order was registered in the orderId
parameter).
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
Cancellation of order payment is available to stores if they have the appropriate rights (in agreement with the bank). For two-phase payments, payment can be canceled for an order in the Confirmed/Approved state.
Order payment is cancelled by standard means:
Using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
If the cancellation operation is successful, the order will be transferred from the Confirmed/Approved state to the Canceled/Reversed state.
A full or partial refund for paid orders (in the Completed/Deposited state) is carried out by standard means:
Using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
After IPS receives a refund request sent by one of the above methods, IPS returns the specified amount to the client's account.
(2)
The system allows the store to independently verify the enrolment of the bank card in 3-D Secure, if necessary. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
The system allows you to add additional parameters to the order if necessary. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
(2)
The system allows you to generate statistics on payments for a certain period using the API, through SOAP / REST interfaces. The request specification is presented in the following sections:
clientId
parameter. For registration, parameters such as the debit amount, the order number in the store's system, and the client's return URL are also used. The request specification is presented in the following sections:
orderId
parameter) and the URL to which the user must be redirected to receive the payment form (in the formUrl
response parameter).
formUrl
parameter in response to the order registration request.
The payment gateway checks the card's enrolment in 3-D Secure.
If authorization through ACS is not required, then the next step of the scenario (11) is executed.
If authorization through ACS is required, the following actions will be performed:
clientId
parameter).
The store's system requests the order status from the payment gateway (by the unique order identifier in the payment system, which was received in step 3 in the orderId
parameter).
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
orderStatus
parameter), as well as the unique identifier of the binding (in the bindingId
parameter).
The store's system sends to the client's browser a page with the payment results – a successful payment or an unsuccessful one.
After successful initial payment the store enables the Autopayment service to the client (determines the date and amount of the debit for this client). In the future, the store independently tracks the date when it is necessary to make the next autopayment, and initiates payment by the binding ID.
When the date of the next autopayment comes, the store initiates the payment according to the following scenario:
clientId
parameter. For registration, parameters such as the debit amount, the order number in the store's system, and the client's return URL are also used. The request specification is presented in the following sections:
orderId
parameter).
The store's system requests the order status from the payment gateway (by the unique order identifier in the payment system, which was received in step 2 in the orderId
parameter).
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
orderStatus
parameter).
The store can get a list of IDs of existing bindings for a specific clientId
by sending a corresponding request to the payment gateway. The request specification is presented in the following sections:
The system allows stores, if necessary, to deactivate existing bindings using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
Request to deactivate a binding (REST).
In the future, the deactivated binding can be activated again. To do this, the store must send a corresponding request to the payment gateway. The request specification is presented in the following sections:
A change in the validity period of a binding may be required in case of reissue of the client's card. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
clientId
parameter. For registration, parameters such as the debit amount, the order number in the store's system, and the client's return URL are also used. The request specification is presented in the following sections:
orderId
parameter) and the URL to which the user must be redirected to receive the payment form (in the formUrl
response parameter).
formUrl
parameter in response to the order registration request.
After receiving the payment details, the payment gateway checks the card's enrolment in 3-D Secure.
If authorization through ACS is not required, then the next step of the scenario (11) is executed.
If authorization through ACS is required, the following actions will be performed:
clientId
parameter).
The store's system requests the order status from the payment gateway (by the unique order identifier in the payment system, which was received in step 3 in the orderId
parameter).
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
orderStatus
parameter), as well as the unique identifier of the binding (in the bindingId
parameter).
The payment gateway returns the result of processing the request. The order status is not refundable. To receive an order, one must send a corresponding request to the gateway, as described in step 15.
After successful initial payment the store enables the Autopayment service to the client (determines the date and amount of the debit for this client). In the future, the store independently tracks the date when it is necessary to make the next autopayment, and initiates payment by the binding ID.
When the date of the next autopayment comes, the store initiates the payment according to the following scenario:
clientId
parameter. For registration, parameters such as the debit amount, the order number in the store's system, and the client's return URL are also used. The request specification is presented in the following sections:
orderId
parameter).
The payment gateway makes a payment (holding funds on the client's card account) and returns the result of processing the request. The order status is not refundable. To receive an order, one must send a corresponding request to the gateway.
The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
orderStatus
parameter).
The store can get a list of IDs of existing bindings for a specific clientId
by sending a corresponding request to the payment gateway. The request specification is presented in the following sections:
The system allows stores, if necessary, to deactivate existing bindings using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
Request to deactivate a binding (REST).
In the future, the deactivated binding can be activated again. To do this, the store must send a corresponding request to the payment gateway. The request specification is presented in the following sections:
A change in the validity period of a binding may be required in case of reissue of the client's card. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
This functionality is used to link the card number to the buyer's ID in the store's system (for example, to the login).
If, after authorization on the store's website and successful payment of the order by card, the client re-places an order on this website under the same id, then when redirected to the payment page, they will be prompted to autofill all card data, excluding CVC/CVV.
If the merchant is supposed to use the functionality of bindings, the payment page may contain a form for selecting a binding to pay for the order. The form design must meet the following conditions:
id="formBinding"
.
"display: none;"
CSS property.
name="bindingId"
name.
<option value="" selected="selected">other</option>
, when selected the user makes a regular payment by card, without using the functionality of bindings.
name="cvc"
name.
<input value="Pay" type="button" id="buttonBindingPayment">
with the id="buttonBindingPayment"
identifier.
class="rbs_hidden"
class. When choosing a payment option without using the bindings functionality, these elements will be hidden by setting the "display: none;"
CSS property.
Form example:
<form action="" id="formBinding" style="display: none;">
<table cellpadding="10">
<tbody>
<tr valign="TOP">
<td valign="top" width="50%" align="right">
<span>Select a card:</span>
</td>
<td valign="top">
<select name="bindingId">
<option value="" selected="selected">other</option>
</select>
</td>
</tr>
<tr class="rbs_hidden">
<td align="right">
<span>Enter CVC2/CVV2/CID code :</span><br>(located on the back of the card)
</td>
<td>
<input name="cvc" maxlength="4" type="password" autocomplete="off"/>
</td>
</tr>
<tr class="rbs_hidden">
<td></td>
<td valign="top">
<input value="Pay" type="button" id="buttonBindingPayment">
</td>
</tr>
</tbody>
</table>
</form>
clientId
parameter. For registration, parameters such as the debit amount, the order number in the store's system, and the client's return URL are also used. The request specification is presented in the following sections:
orderId
parameter) and the URL to which the user must be redirected to receive the payment form (in the formUrl
response parameter).
formUrl
parameter in response to the order registration request.
If a binding has not yet been created for this clientId
, the client fills in the received form with the card details and checks the "Remember the data of this card" box. The client then sends the data to the payment gateway server.
If one or more linked cards exist for this clientId
, they are displayed in the drop-down list in the PAN input field. The client selects the desired card (it is also possible to enter the details of a new card). The client then sends the data to the payment gateway server.
The results of checking the order for fraud are returned to the payment gateway.
If the store's settings require a SSL payment, then the next step of the scenario (10) is executed.
If, according to the store's settings, the payment must be 3DS, the following actions will be performed:
After receiving the payment details, the payment gateway checks the card number to determine whether the use of 3-D Secure technology is required when making a payment.
If the use of 3DS technology is not required, then the next step of the scenario (10) is executed.
If the payment must be 3DS, then the following actions will be performed:
orderId
parameter). The specification of the normal order status request is presented in the following sections:
Order status request (REST).
The specification of the advanced order status request is presented in the following sections:
If at Step 5 of the scenario, the client entered the details of a new card on the payment page and ticked "Remember the details of this card", then in case of successful payment, a unique binding identifier will be created on the payment gateway side. The store can get a list of IDs of existing bindings for a specific clientId
by sending a corresponding request to the payment gateway. The request specification is presented in the following sections:
If the appropriate permissions are available, the store can request a list of all bindings related to a particular bank card. One can do this by card number or by a known binding identifier. The request specification is presented in the following sections:
The system allows stores, if necessary, to deactivate existing bindings using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
Request to deactivate a binding (REST).
In the future, the deactivated binding can be activated again. To do this, the store must send a corresponding request to the payment gateway. The request specification is presented in the following sections:
A change in the validity period of a binding may be required in case of reissue of the client's card. This can be done using the API, via SOAP/REST interfaces. The request specification is presented in the following sections:
The PayByClick system is another payment means of the payment gateway along with payment by bank cards. At the same time, the pattern of interaction between the online store and the payment gateway does not change.
Payment via PayByClick is intended for clients of Alfa-Click online banking.
The integration pattern depends on the method of using the Alfa-Click payment method:
The seller accepts payments only through Alfa-Click. In this case, a payment request via Alfa-Click is created to redirect the client to the PayByClick system. A description of the payment process is provided in the "Using Alfa-Click only" section.
The PayByClick system does not provide for the possibility of partial debit of a pre-authorized order (with a two-phase process), partial payment, partial or full refund (reversal or refund). Payment is possible only in rubles. There is no possibility of placing the data entry page for payment on the side of the store's website.
The existing registers of e-invoicing payments are used for reconciliation.
If the store uses Alfa-Click along with e-commerce, then when creating a payment page, in addition to the standard requirements described in the "Payment page layout" document, a requirement is added to place a button element on the page:
<input type="button" class="alfaclick" id="buttonPaymentAlfa" value="Pay via Alpha Click" />"
It is also possible to upload a standard payment page to the store, where a button is already placed to proceed to payment via Alpha-Click.
The client's browser requests a form of authorization with the transfer of parameters:
The main process of payment through the PayByClick system is described below (without negative scenarios) if the store accepts payment only through the PayByClick system:
ALFA_ALFACLICK
value in the paymentWay
parameter, as well as the order ID. The request specification is presented in the following sections:
The client's browser requests a form of authorization with the transfer of parameters:
The transition to the PayByClick system is carried out:
The page for payment via Alfa-Click will open at http://217.12.96.193/PayByClick/login.xhtml?faces-redirect=true:
Enter the Alpha-Click login and password, and then click "Continue". Test details:
The "Authorization" page opens:
The page for selecting the debit account opens:
getOrderStatus
) and wait for the order to go to the DEPOSITED state (funds are debited).
The UPOP tool is a payment means of the payment gateway that enables to make payments through the China UnionPay (CUP) system. At the same time, the pattern of interaction between the online store and the payment gateway does not change.
Payment via UPOP is available for China UnionPay cardholders.
The integration pattern depends on the method of using the UPOP payment method.
The seller accepts payments only through UPOP. In this case, a payment request via UPOP is created to redirect the client to the CUP system. A description of the payment process is provided in the "Using UPOP only" section.
The CUP system does not provide for the possibility of two-phase payment.
If the store uses UPOP along with e-commerce, then when creating a payment page, in addition to the standard requirements described in the "Payment page layout" document, a requirement is added to place a button element on the page:
<input type="button" class="alfaclick" id="buttonPaymentUpop" value="Pay via UPOP" />"
By pressing the button, a request for payment using UPOP is made. The description of the request is presented in the sections:
Request for payment via an external payment system (REST).
It is also possible to upload a standard payment page to the store, where a button is already placed to proceed to payment via UPOP.
The main payment process through the CUP system is described below (negative scenarios are not taken into account):
The main process of payment through the CUP system is described below (without negative scenarios) if the store accepts payment only through the CUP system:
After the client confirms the order, the store registers the order in IPS. For registration, parameters such as the debit amount, the order number in the store's system (an alphanumeric value from 8 to 32 characters long), as well as the client's return URL are used. The request specification is presented in the following sections:
The store sends a request for order payment to IPS via UPOP, transferring the order ID received in step 3. To do this, an alternative payment request is used with the mandatory transfer of the UPOP
value in the paymentWay
parameter, as well as the order ID. The request specification is presented in the following sections:
The client's browser requests a form of authorization with the transfer of parameters:
To test making a payment via UPOP:
The transition to the CUP system is carried out:
The authorization page in the CUP system opens at http://202.101.25.184/beta/index.action?transNumber=201311062352028710592
:
The confirmation page opens:
Click "Confirm and Pay". A page opens with the payment result:
When the Return Merchant button is clicked, one will be redirected back to the store page specified during the order registration in the returnUrl parameter (if registration was done via REST/SOAP), or in the return address parameter (when registering via the form).
getOrderStatus
) and wait for the order to go to the DEPOSITED state (funds are debited).
The cards presented in this section are intended only for testing payment via UPOP:
Debit cards:
Type of card information | Meaning |
---|---|
Card number | 6223 1649 9123 0014 |
Mobile phone number | +130 12345678 |
PIN | 111111 |
CVN2 | 123 |
Expiration Date | month 12 year 33 |
SMS Code on PC | 111111 |
SMS Code on Mobile | 123456 |
Type of card information | Meaning |
---|---|
Card number | 6250 9470 0000 0014 |
Mobile phone number | +852 11112222 |
CVN2 | 123 |
Expiration Date | month 12 year 33 |
SMS Code on PC | 111111 |
SMS Code on Mobile | 123456 |
A card issued outside of China:
Type of card information | Meaning |
---|---|
Card number | 4938 8112 3456 2006 |
Mobile phone number | 11112222 |
CVN2 | 123 |
Expiration Date | month 11 year 22 |
SMS Code on PC | 111111 |
A full or partial refund for orders paid through UPOP is carried out by standard means:
Using the API, through REST/SOAP interfaces. The request specification is presented in the following sections:
Request for a refund of the order payment (REST).
After IPS receives a refund request sent by one of the above methods, IPS sends a refund request to the UPOP system. In case of a successful response, the specified amount will be returned to the Client's account.
Currently, payments are supported using mobile apps. Also, the seller can place a special button on its website that allows accepting payments through the Apple Pay system. The description of the preparation of the seller's website for accepting Apple Pay payments is not included in the objectives of this document.
Before accepting payments using Apple Pay, generate a key pair in your personal area and upload a public key certificate signing request.
The procedure is described in the Administrator's instructions for working with the console.
To create your Merchant ID (Seller's identifier), follow these steps.
To complete this procedure, you must have an Apple Developer account.
In the Merchant ID Description and Identifierfields, enter a description of your Apple Merchant ID and the ID itself, respectively.
Note. The identifier should start with the word merchant, while specifying the address of your main website in reverse order. For example, for sale.test.ru website the ID will have the merchant.ru.test.sale value.
This value must be specified in the Apple Id field in the personal area of the internet acquiring in the "Working with Apple Pay keys" section
To create a certificate for your Merchant ID, follow these steps.
Click Choose File specify the path to the certificate signing request file downloaded from the payment gateway's personal area.
Note. The procedure for creating a certificate signing request file is presented in the "Administrator's instructions for working with the console" document.
After downloading the certificate click Done.
If you have completed the above steps, you can start developing the interaction of your mobile app or website with the payment gateway.This certificate must be used to interact with Apple Pay, it does not need to be added to the personal area of Internet acquiring.
When paying using Apple Pay, the interaction takes place according to the following pattern.
The pattern description is given below.
PKPaymentToken Object
is created in the Apple Pay system, which contains the paymentData
property (for more information, see Apple Pay documentation - in English).
paymentData
property from the received PKPaymentToken Object
and encodes its contents in Base64.
paymentData
property received from the Apple Pay system response and encoded in Base64, and sends it to the payment gateway for processing - see the Request for Payment via Apple Pay (Web Service) and Request for Payment via Apple Pay (REST) sections.
To initiate recurrent payments, one needs to create an appropriate binding. To do this, one need to make a payment request and specify the clientId clientId
value in the request:
For subsequent requests for recurrent payments, the recurrentPayment
request is used:
Request for recurring payments via Apple Pay (REST).
When using the recurrentPayment
request, the procedure for encrypting and decrypting payment data is not used.
The table below provides links to the reference information about Apple Pay.
Description | Link |
---|---|
A section of the Apple.com webite containing general information about Apple Pay. | https://www.apple.com/apple-pay |
A section of the Apple.com, website intended for developers and containing links to various documents and background information related to Apple Pay. | https://developer.apple.com/apple-pay |
A section of the Apple.com website containing information about testing. | https://developer.apple.com/support/apple-pay-sandbox |
A PDF document containing general information about Apple Pay and links to reference information. | https://developer.apple.com/apple-pay/Getting-Started-with-Apple-Pay.pdf |
A PDF document containing recommendations for the design of websites and mobile apps in the Apple style. | https://developer.apple.com/apple-pay/Apple-Pay-Identity-Guidelines.pdf |
A section of the Apple.com website containing a programming reference. | https://developer.apple.com/library/ios/ApplePay_Guide |
A section of the App Store reference guide dedicated to Apple Pay apps.. | https://developer.apple.com/app-store/review/guidelines/#apple-pay |
API Reference (programming interface for apps). | https://developer.apple.com/library/ios/documentation/UserExperience/Reference/PassKitFramework/index.html#//appleref/doc/uid/TP40012158 |
Description of the PKPaymentToken Object structure.
|
https://developer.apple.com/library/ios/documentation/PassKit/Reference/PaymentTokenJSON/PaymentTokenJSON.html#//apple_ref/doc/uid/TP40014929 |
The login page for the development environment. | https://devforums.apple.com/community/ios/connected/applepay |
The seller registers the order in the payment gateway.
Single-phase payment:
Two-phase payment:
There are several options for implementing the possibility of payment using the Google Pay system.
Implementation of the payment method | Description |
---|---|
From the mobile app | Payment is made from the mobile app from the user's mobile device. In this scenario, the app requests encrypted data from Google Pay. This data must be transferred to the payment gateway. |
Payment scenario with user redirection to ACS | If the user has chosen the payment option via Google Pay with a non-tokenized card, in response to the payment request, data will be returned to the payment gateway to redirect the user to the issuer's ACS. The interaction pattern is presented below. |
From a web page, while the payment page is located on the seller's side | Payment is made from a web page. The user selects payment on the seller's website, while the seller requests encrypted payment data from the Google Pay system. Then the seller must send this data to the payment gateway. |
From a web page, while the payment page is located on the side of the payment gateway | Payment is made from a web page. The seller redirects the user to the payment gateway page, then the payment gateway exchanges data with the Google Pay system, after which the payment is made. |
The appl sends a Google Pay payment request to the payment gateway, indicating the token received from the Google Pay system:
The appl sends a Google Pay payment request to the payment gateway, indicating the token received from the Google Pay system:
The user goes to the ACS website and authenticates.
In order for the client to get to the ACS page, the seller redirects them to the payment gateway page of the following type:
https://web.rbsuat.com/ab/acsRedirect.do?orderId=< >, where < > is the client's unique order number.
Before accepting payments using Google Pay, please read all the Google requirements and conditions.
Connecting an Android app to the Google Pay API:
Connection documentation:
Recommendations for connecting an Android app to Google Pay:
If the payment page is located on the Google Pay side, the payment takes place according to the following pattern.
The online store system generates a request to the payment gateway for Google Pay payment, indicating the encrypted payment data received:
Before accepting payments using Google Pay, please read all the Google requirements and conditions.
Connecting a web page to the Google Pay API:
Connection documentation:
Recommendations for connecting a web page to Google Pay:
The seller registers the order in the payment gateway.
Single-phase payment:
Two-phase payment:
Before accepting payments via Samsung Pay, the seller must register on the Samsung partner portal. After that, in the personal area of the payment gateway, the seller must generate a key pair, export the certificate signing request and upload it to the Samsung partner portal.
Below is a pattern of interaction when making a payment using a mobile app.
3ds.data
parameter with encrypted payment data.
paymentToken
parameter includes the content of 3ds.data
received from Samsung:
paymentToken
and makes the payment.