In accordance with Russian law, merchants must send electronic versions of checks to the fiscal data operator via the Internet. There is an opportunity to simplify this procedure: you will send the necessary data in requests, and Sberbank will register receipts on POS equipment.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The payer chooses goods or services on the merchant website and picks bank card as a payment option. | |
2 | The merchant sends an order registration request to the payment gateway: Among others, the following parameters are passed in the request:
| The merchant sends an order registration with pre-authorization request to the payment gateway: Among others, the following parameters are passed in the request:
|
3 | Payment gateway returns a response which, among others, includes the following parameters:
|
|
4 | Merchant passes to payer the URL specified in formUrl parameter of the response. |
|
5 | Payer's browser opens a form for entering card details. The payer fills in the received form and sends the data to the payment gateway server. | |
6 | Further actions depend on whether the customer's card supports 3-D Secure or not.
|
|
7 | Payment gateway debits funds from payer's account. | Payment gateway holds (reserves) funds on payer's account. |
8 | After the payment is carried out, the Payment Gateway redirects the Customer to the return URL (the return URL that is passed by the Store in request for order registration). | |
9 | Customer's browser requests from the Store the payment result page. | |
10 |
The merchant requests from payment gateway the order payment status by passing a unique identifier that was received upon order registration in |
|
11 | The payment gateway returns payment status and the merchant passes to the customer's browser the page with payment result. | |
12 | Not applicable | To debit funds from the Customer's account, the Merchant needs to send to the Payment Gateway an order completion request: |
13 | Not applicable | The payment gateway returns the result of processing the request. The order status is not returned. To get the status of the order, an order status request should be sent to the gateway: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
Reversal of a payment for an order is available to Merchants provided that they have the corresponding permissions and approval of Sberbank.
The table below shows how the merchant and the payment gateway interact when a payment is reversed.
1 | The merchant makes a request to reverse the payment: |
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
The Payment Gateway allows full or partial refunds for paid orders.
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
To get information about a sales receipt (for example, to then pass this data to a customer) use the getReceiptStatus.do request. Currently, this request can only be made through the REST interface.
Recommended version of WordPress for working with the Sberbank payment plugin: not lower than 4.8.3.
You can download the required version of WooCommerce on github.com (link leads to WooCommerce version history).
The WooCommerce plugin is not compatible with all WordPress themes. Here, the Storefront theme is used as example. This theme is designed by WooCommerce developers.
Meanings of terms highlighted on this page in bold font are given in theglossary.
One-phase payments are preferable if the product or service is provided immediately after payment. Two-phase payments should be used if some time elapses between the buyer's decision to pay and the delivery of the selected product or service.
The need for verification using 3-D Secure depends on the buyer's bank card, as well as on the settings configured for the Merchant upon agreement with Sberbank.
In case of one-phase payments, the reversal operation is possible only before the close of the day, that is, until 24:00 (Moscow time) on the day when the payment was made.
Regardless of the chosen connection method, you are given access to the personal account on the payment gateway server.
You can use test cards to try out the functionality.
The available payment acceptance methods depend on settings configured for you. If in doubt, check with a Sberbank representative which method of accepting payments you can use.
The value of this parameter goes in the registration request as the clientId
parameter.
The page of your site on which the payment solution will be used must be saved in UTF-8 encoding, and it must also have a meta-tag <meta name=«viewport» content=«width=device-width»>
.
The links point to test environment. Once done with testing, update the links so that they point to the production environment.
The server on which the content management system is located must support the TLS 1.2 protocol. If in doubt, check with your hosting provider.
The minimum amount of funds to be debited is 100 rubles.
If the cart and fiscalization data are not passed in the request, the default values specified in the personal account are passed to the Fiscal Data Operator (see setting up fiscalization data for more details).
To enable sending this field to the processing system, contact the technical support service.
Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be unsuccessful.
By default, the following fields are passed to the Bank processing system:
orderNumber
– order number in the store system;description
– order description (no more than 24 characters; %, +, carriage return \r, and line feed \n cannot be used).
It is mandatory to pass one of the two parameters: email
or phone
.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the section is optional and missing, then the parameters included in it should not be passed.
Access to personal account is granted regardless of the chosen connection method.
Functions available in the personal account depend on the configured settings. If in doubt, please contact a Sberbank representative.
For more details on the differences between editions, see the website «1C-Bitrix».
1C-Bitrix version used for installation and configuration: 1C-Bitrix: Site Manager, Small Business Edition, version16.5.4.
In the 1C-Bitrix interface, a «payment system» is a payment method that a customer can choose, for example: «in cash to a courier», «by bank card», etc. The term «payment method» is used throughout this description.
The order of fields and settings may differ depending on the edition of your 1C-Bitrix instance.
In this description, the setting is shown using the example of the Default tab. If the tabsIndividual and Entity have not been edited before, the changes made will apply to these tabs.
If the plugin is running in test mode, you should specify the password for the test user account. If the plugin is running in standard (production) mode, you should specify the password for the production user account.
If the plugin is running in test mode, you should specify the login for the test user account. If the plugin is running in production mode, you should specify the password for the production user account.
If you want to change the order in which a payment method is displayed for a customer, click on the icon opposite the required payment method and, while holding the left mouse button, move this payment method to the required position.
The payment plugin was tested for compatibility with CS-Cart version 4.6.x.
In the CS-Cart interface, modules that extend the site's functionality are called «add-ons». In this description, the term «plugin» is used.
The description contains only those settings that relate directly to the payment plugin. The rest of the settings are related to the content management system (CMS).
In the Drupal interface, add-ons are called «modules». The payment plugin falls into the same category, however the term «plugin» is used in this description.
A combined distribution Commerce Kickstart version 7.x-2.45 was used for the purposes of this description. This distribution combines Drupal version 7.54 and Drupal Commerce version 7.x-1.13.
The plugin was tested on OpenCart/ocStore version 2.3.0.2.
The event log files are located here:
<site folder>/system/storage/logs/
The instructions for installing and configuring the plugin for PrestaShop version 1.7.x are given as example.
The plugin is compatible with Netcat versions 5.9.x and higher and has been tested on E-commmerce editions.
This situation can be avoided in one of the following ways:
Use the following URL to connect to the Test Service (WSDL):
https://3dsec.sberbank.ru/payment/webservices/merchant-ws?wsdl.
Refunds are possible for payments in Deposited status.
When clientId
parameter is passed initially, the client's identifier is registered in the payment gateway and the data of their card is saved (except for the CVC code). On subsequent passes of this parameter, the client is redirected to a page where they can choose from the following options:
Callback notifications are not email notifications or telephone notifications. These are notifications received through the programming interface.
To enable the ability to receive checksum notifications and get a private key, contact technical support.
Self-signed certificates are not allowed. The certificate must be signed by a trusted certification authority (see above).
The table shows the basic parameters. A number of additional parameters that will be passed in notifications can be specified in personal account.
Notably, the «parameter_name;parameter_value» pairs must be sorted in direct alphabetical order by parameter name.
If the checksums match, this notification is authentic and was sent by the payment gateway. Otherwise, it is likely that the attacker is trying to pass off their notification as a payment gateway notification.
Use Latin characters when filling out the form.
To be able to complete this procedure, you need to have an Apple Developer account.
The identifier should begin with the word merchant. The address of your live site should be specified in the reverse order. For example, for the site sale.test.ru the identifier will look as merchant.ru.test.sale.
Below there is a short list of actions that will allow you to test Apple Pay. Further details are available in documentation on the Apple website.
For more information about creating a test account, see Apple documentation.
If you mistakenly use a test account on a test device to log in to a production environment (such as iTunes) instead of logging in to a test environment, this test account will become invalid and cannot be used again. In this case create a new test account with a new email address.
Steps 1–3 are necessary to enable payment via the mobile app.
You can start generating a new report without waiting for the completion of the previous one.
Number in brackets after the caption Reports means how many reports are currently being generated.
Fiscalization settings are set by technical support upon request to support@ecom.sberbank.ru. At this stage, you do not need to configure the fiscalization parameters yourself.
Detailed information about actions in the ATOL personal account is given on ATOL website (external ink).
Do not specify actual data to connect to the fiscal data operator in the test personal account! If you do so, test payments will be registered with the fiscal data operator as if they were real. After entering the data into the live personal account – check that they are valid and saved correctly.
If zero is passed in this parameter, completion will occur for the entire pre-authorized amount.
Either orderId
or orderNumber
must be present in the request. If both parameters are present in the request, orderId
has priority.
The request must contain either orderId
or merchantordernumber
. If both parameters are present in the request, orderId
has priority.
Only POST is supported.
Some parameters to be returned may depend on the Fiscal Data Operator used.
Use the standard requests to the payment gateway for the operations of reversal, refund and payment completion.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
jsonParams={«sbrf_spasibo:amount_bonus»:«100»}
In this case, the amount in money will be deducted from the amount
parameter.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
<params name=«sbrf_spasibo:amount_bonus» value=«1030»/>
In this case, the amount in money will be deducted from the amount
parameter.
Orders that initiate recurring payments cannot be reversed and refunded, as in these cases there is no real debiting.
If you do not specify the amount
parameter, completion will take place for the entire pre-authorized amount.
For error-free processing of the request it is sufficient to pass the quantity
and positionId
parameters.
If you do not specify the depositAmount
parameter, completion will take place for the entire pre-authorized amount.
The order status must be determined by the orderStatus
parameter value. The authCode
field is obsolete.
Currently, requesting information about the status of a check in the WS interface is not supported.
From the VirtueMart developer site you can download the Joomla! distribution with pre-installed add-on VirtueMart. The names of such combined archives end with Stable-Full_Package.zip. When doing this, choose a combination of Joomla! and VirtueMart, compatible with the payment plugin.
The plugins are only guaranteed to work with the following combinations of Joomla! and VirtueMart add-ons. If you use other combinations of versions (for example, after updating Joomla!) The plugin may not work correctly.
Starting from this version, the plugin allows you to transfer a shopping cart, which provides the possibility of detailed fiscalization in accordance with 54-FZ.
Installing and configuring the plugin is presented on Joomla! version 3.6.5 and VirtueMart version 3.2.0.
The Android Pay payment method is currently not supported by Google. This payment method will be replaced by Pay with Google (it is currently temporarily unavailable for integration, documentation is under development).
The section is currently under construction.
When calculating itemAmount = itemPrice*quantity parameter, the result is rounded up to the second digit after the decimal point. For example, if the calculation result is 100.255, then final value will be 100.26.
To execute the request, one of the following parameters must be specified:
2
;2
;2
.To be able to accept payment in this way, you must have the respective rights in the system. If in doubt, contact technical support.
Payment in this way is possible only when using a one-phase payment scheme.
For greater security, use of a method in which the checksum is generated using asymmetric cryptography is recommended.
The order of parameters in the notification can be undefined.
Below are examples of creating a checksum using symmetric cryptography.
The information on this portal is provided as an introduction to the functionality of the payment gateway. The necessary data for connecting to the live environment will be provided after testing in accordance with connection checklist.
Currently this request is available through REST interface only.
To be able to receive payment via Samsung Pay Web with a merchant-side payment page, you must install JavaScript script. When receiving a response from the payment gateway, you need to call the connect function of this script and pass in it certain parameters of the payment gateway response. For details, see the description of the correspondinginteraction schemes and description of the request.
Sites must use the HTTPS scheme and support the TLS 1.2 protocol.
When making a payment from a web page, the buyer must be in the Safari browser.
Programming skills are required to implement automatic check of payment completion.
Do not share or publish the private key to anyone. Signature verification must be implemented on the store's server. JavaScript implementation of signature verification on the front-end of the store is not allowed.
To make payments from the website, your online store site must be registered with Google Pay.
Before registering a personal account of a cloud cash register provider apply to connect to Internet acquiring.
If the merchant has fiscalization set up, when indicating email (the buyer's email address) and/or phone (the buyer's cell phone number) as additional parameters, these parameters are first used to send the fiscal receipt.
This setting is applied only if you have configured fiscalization parameters – see details in section on compliance with law 54-FZ.
Fiscalization is supported in plugins for Amiro.CMS versions 7.x and later (see details on fiscalization).
The setting is available only in plugins for Amiro.CMS versions 7.x and later.
If you want to select multiple items, hold down the CTRL key on your keyboard before checking the items in the list.
The plugin supports fiscalization in accordance with the law 54-FZ.
Integration with a payment gateway is not required if you use:
After making all the settings, we ask you to carefully check the correct filling of all fields in relation to the fiscalization parameters in the personal account of the bank, because the correctness of the transfer of fiscal data to the OFD and tax depends on this. We also recommend checking «in action» when sending a fiscal receipt.
In case of any difficulties or questions, you can send them to the address of the technical support of the bank support@ecom.sberbank.ru and Business.Ru support@mail.business.ru.
Information for developers is available inGoogle documentation.
By accepting payments via Google Pay, you agree to Google terms of service.
If the cart and fiscalization data are not included in the request, then the default values specified in the personal account are passed to the Fiscal Data Operator (see User Manual for personal account).
Using the REST protocol, you should send requests with the type application/x-www-form-urlencoded
, rather than multipart/form-data
.
If the section Invoice to email the following message is displayed: “You do not have sufficient rights to send the payment form”, please contact the technical support service support@ecom.sberbank.ru with a request to activate the invoicing option. Make sure to include the following information in your request:
The link can also be encoded as a QR code.
If there are no user actions for 10+ minutes, the session is automatically closed.
A click on saves the chart image.
You can set several statuses at the same time by pressing CTRL and selecting them with a left-click.
If you set the invoice validity period too short, the client will not be able to use the same invoice to pay for the order after some time.
When using a two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Passwords provided for both logins in production environment must be changed in the personal account (available here).
Password for each login must be changed.
When using two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Fiscalization – 54-FZ
Most of the plugins presented support fiscalization. To clarify whether the plugin you are interested in supports the fiscalization functionality, you can visit our technical support address – support@ecom.sberbank.ru.
We are ready to develop plugin support for new CMS. To do this, you need to contact the technical support service – support@ecom.sberbank.ru.
For online lending, only one-phase payment is applied.
When using the Online Lending functionality, only the one-phase payment is available.
When using the Online Lending functionality, token authentication is not possible. Login and password should be used for authentication.
Online Lending functionality is available through the REST interface only.
If all the items in the request are delivered without payment (a gift to customer), the value 0 should be passed.
If the item is delivered without payment (a gift to customer), the value 0 should be passed.
When requesting a refund, the value of this parameter may differ from that given during the registration of the order.
The transfer of this block is possible only when using the following OFDs:
The settings are effective only if the format of fiscal documents of version 1.05 and higher is selected.
The format of the version must match the format selected in the personal account of the bank and in the account of the fiscalization service.
It is necessary to add to the request a header with the definition of the type of contents – «Content-Type: application/json» to ensure that the request is processed correctly.
This tutorial assumes that your Joomla! the JoomShopping component is already installed.
This tutorial assumes that your Joomla! the VirtueMart component is already installed.
The plugin was tested for Simpla version 3.2.x.
These steps are necessary if you want to receive encrypted payment actions directly from Google Pay and redirect them to a payment gateway. Namely:
For more information see Integration Checklist (external link).
It is recommended to use an existing email address on your domain, for this you need to select the option Use current email address.
These actions are necessary to enable payment via the mobile app. You do not need to take these steps to pay through the site.
Shop-Script version must be 7.x or higher.
Not applicable for OFD.ru.
Magento plugins for versions 2.2.x and 2.3.x are incompatible. When upgrading Magento version from 2.2.x to 2.3.x, you must first uninstall the plugin for version 2.2.x and then install the plugin for version 2.3.x.
The beginning of the command depends on the folder where PHP is installed. In particular, the PHP version can be specified without a hyphen: php5.6
, php7.1
, php7.2
, etc.
If in doubt, contact your hosting provider.
On shared hosting, the last command may not be executed due to the memory limit set by the hosting provider. In this case, contact your hosting provider.
In code
folder, as well as in the folders of a higher level, (app
) there may be data not related to the plugin, so delete only the Rbs
folder and its contents.
Types 6 (gambling winnings) and 8 (lottery winnings) are not used.
At this step, you can right away configure automatic addition of your cash registers to the personal account of the OFD.
To register a cash desk through the FTS website, you will need an EDS. If you don't have it, you can order it from us or submit a paper application for registering the cash register with the tax service.
You can find the free OFD activation code in cash register profile in the personal account of Initpro.
You don't need integration setup if:
Sberbank.
Closing a check can only be done if a partial, not full refund has been made for the order.
If you specify amount=0 in the request, a refund is made for the entire amount of the order.
Before summing up all line items, the product of quantity and price for each good item is rounded to an integer. If the value is followed by 5 or greater after the decimal point, it is rounded up. Below there are examples of rounding.
Therefore, the «amount» parameter value must be equal to the sum of the line items rounded.
Online Lending functionality is available through the REST interface only.
Do not use «‘)«character combination inside this section, or it will cause an error on the gateway side.
To execute the request, the order number or its identifier in the fiscalizator must be specified.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the block itself is not mandatory and is not passed, its included parameters should not be passed.
Two-phase payments functionality is available if specifically requested by Merchant from the bank.
This parameter can be passed either as a boolean value (without quotation marks) or as a string (with quotation marks).
Most OFDs support delivery of receipt only to one email address. Some OFDs allow receipt delivery to multiple emails. In this case, the emails should be separated by commas without spaces. Contact your OFD for availability of receipt delivery to multiple emails.
The registered cart must contain an item with this positionId value, otherwise the order will fail.
Use semicolon (»;») without a space as the separator. The string should end with semicolon («;») as well.
If a response other than the 200 OK HTTP code is returned to the payment gateway, the notification sending is considered to be unsuccessful. In this case, the payment gateway repeats sending the notification (the first attempt is made after 30 seconds, and the next with an interval of 10 minutes) until one of the following conditions is met:
or
When either of the above conditions is met, attempts to send a callback notification about the operation are terminated.
The transfer of authorization data (username/password) can be transferred both in the request body and in the header.
Refund and reversal requests are standard payment gateway requests.
The token
value can be obtained from the technical support staff.
To enable this functionality, please contact technical support.
The field size limit is 1024 bytes.
Use
- to pass \
use \«- to pass »
If the number is passed in a separate parameter and in additional parameters, the number specified in this phone
parameter will be used.
Currently, minimal customization of the payment page is available, only the following elements can be changed:
The requirements for these elements are presented in the instructions for working with your personal account.
For recurring payments via SberPay, only one-phase payment can be used. At the same time, for ordinary bindings, a two-phase payment is possible.
In this document, the following data type conventions are used when describing request and response parameters:
In this document, the following data type conventions are used when describing request and response parameters:
When using ATOL fiscalization, the phone
parameter should be sent in the following format:
The phone number must be passed together with the country code without spaces and additional characters except for the quotation marks (the number «371 2 1234567» must be passed as «+37121234567»). If the phone number belongs to Russia (prefix «+7»), then the value can be passed without a prefix (the number «+79251234567» can be sent as «9251234567»). The maximum string length is 64 characters. One of the fields must be filled in the request: email
or phone
.
It is forbidden to pass reserved names in the parameter (if they are passed, the order may be rejected):
Possible values of measure
Value | Description |
---|---|
0 | Used for payment subjects that can be sold individually or in units (as well as in the event that the payment subject is a product subject to mandatory labeling with an identification tool (which can be known from mark_code being passed)) |
10 | Gram |
11 | Kilogram |
12 | Ton |
20 | Centimeter |
21 | Decimeter |
22 | Meter |
30 | Square centimeter |
31 | Square decimeter |
32 | Square meter |
40 | Milliliter |
41 | Liter |
42 | Cubic meter |
50 | Kilowatt hour |
51 | Gigacalorie |
70 | Day (24h) |
71 | Hour |
72 | Minute |
73 | Second |
80 | Kilobyte |
81 | Megabyte |
82 | Gigabyte |
83 | Terabyte |
255 | Applicable when using other units of measurement |
Parameters of markQuantity tag:
A parameter included in a tag and indicated as mandatory is only mandatory within that tag. If the tag itself is not mandatory and is not passed, its included parameters should not be passed.
Name | Type | Mandatory | Description |
---|---|---|---|
|
N..12 | yes |
The numerator of the fractional part of the payment subject. |
|
N..12 | yes |
The denominator of the fractional part of the payment subject. |
The table below shows how the merchant and the payment gateway interact when a payment is refunded.
1 | The merchant makes a request for refund to the buyer: |
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The payer chooses goods or services on the merchant website and picks bank card as a payment option. | |
2 | The merchant sends an order registration request to the payment gateway: Among others, the following parameters are passed in the request:
|
Reversal of a payment for an order is available to Merchants provided that they have the corresponding permissions and approval of Sberbank.
The table below shows how the merchant and the payment gateway interact when a payment is reversed.
1 | The merchant makes a request to reverse the payment: |
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
The Payment Gateway allows full or partial refunds for paid orders.
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
To get information about a sales receipt (for example, to then pass this data to a customer) use the getReceiptStatus.do request. Currently, this request can only be made through the REST interface.
Recommended version of WordPress for working with the Sberbank payment plugin: not lower than 4.8.3.
You can download the required version of WooCommerce on github.com (link leads to WooCommerce version history).
The WooCommerce plugin is not compatible with all WordPress themes. Here, the Storefront theme is used as example. This theme is designed by WooCommerce developers.
Meanings of terms highlighted on this page in bold font are given in theglossary.
One-phase payments are preferable if the product or service is provided immediately after payment. Two-phase payments should be used if some time elapses between the buyer's decision to pay and the delivery of the selected product or service.
The need for verification using 3-D Secure depends on the buyer's bank card, as well as on the settings configured for the Merchant upon agreement with Sberbank.
In case of one-phase payments, the reversal operation is possible only before the close of the day, that is, until 24:00 (Moscow time) on the day when the payment was made.
Regardless of the chosen connection method, you are given access to the personal account on the payment gateway server.
You can use test cards to try out the functionality.
The available payment acceptance methods depend on settings configured for you. If in doubt, check with a Sberbank representative which method of accepting payments you can use.
The value of this parameter goes in the registration request as the clientId
parameter.
The page of your site on which the payment solution will be used must be saved in UTF-8 encoding, and it must also have a meta-tag <meta name=«viewport» content=«width=device-width»>
.
The links point to test environment. Once done with testing, update the links so that they point to the production environment.
The server on which the content management system is located must support the TLS 1.2 protocol. If in doubt, check with your hosting provider.
The minimum amount of funds to be debited is 100 rubles.
If the cart and fiscalization data are not passed in the request, the default values specified in the personal account are passed to the Fiscal Data Operator (see setting up fiscalization data for more details).
To enable sending this field to the processing system, contact the technical support service.
Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be unsuccessful.
By default, the following fields are passed to the Bank processing system:
orderNumber
– order number in the store system;description
– order description (no more than 24 characters; %, +, carriage return \r, and line feed \n cannot be used).
It is mandatory to pass one of the two parameters: email
or phone
.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the section is optional and missing, then the parameters included in it should not be passed.
Access to personal account is granted regardless of the chosen connection method.
Functions available in the personal account depend on the configured settings. If in doubt, please contact a Sberbank representative.
For more details on the differences between editions, see the website «1C-Bitrix».
1C-Bitrix version used for installation and configuration: 1C-Bitrix: Site Manager, Small Business Edition, version16.5.4.
In the 1C-Bitrix interface, a «payment system» is a payment method that a customer can choose, for example: «in cash to a courier», «by bank card», etc. The term «payment method» is used throughout this description.
The order of fields and settings may differ depending on the edition of your 1C-Bitrix instance.
In this description, the setting is shown using the example of the Default tab. If the tabsIndividual and Entity have not been edited before, the changes made will apply to these tabs.
If the plugin is running in test mode, you should specify the password for the test user account. If the plugin is running in standard (production) mode, you should specify the password for the production user account.
If the plugin is running in test mode, you should specify the login for the test user account. If the plugin is running in production mode, you should specify the password for the production user account.
If you want to change the order in which a payment method is displayed for a customer, click on the icon opposite the required payment method and, while holding the left mouse button, move this payment method to the required position.
The payment plugin was tested for compatibility with CS-Cart version 4.6.x.
In the CS-Cart interface, modules that extend the site's functionality are called «add-ons». In this description, the term «plugin» is used.
The description contains only those settings that relate directly to the payment plugin. The rest of the settings are related to the content management system (CMS).
In the Drupal interface, add-ons are called «modules». The payment plugin falls into the same category, however the term «plugin» is used in this description.
A combined distribution Commerce Kickstart version 7.x-2.45 was used for the purposes of this description. This distribution combines Drupal version 7.54 and Drupal Commerce version 7.x-1.13.
The plugin was tested on OpenCart/ocStore version 2.3.0.2.
The event log files are located here:
<site folder>/system/storage/logs/
The instructions for installing and configuring the plugin for PrestaShop version 1.7.x are given as example.
The plugin is compatible with Netcat versions 5.9.x and higher and has been tested on E-commmerce editions.
This situation can be avoided in one of the following ways:
Use the following URL to connect to the Test Service (WSDL):
https://3dsec.sberbank.ru/payment/webservices/merchant-ws?wsdl.
Refunds are possible for payments in Deposited status.
When clientId
parameter is passed initially, the client's identifier is registered in the payment gateway and the data of their card is saved (except for the CVC code). On subsequent passes of this parameter, the client is redirected to a page where they can choose from the following options:
Callback notifications are not email notifications or telephone notifications. These are notifications received through the programming interface.
To enable the ability to receive checksum notifications and get a private key, contact technical support.
Self-signed certificates are not allowed. The certificate must be signed by a trusted certification authority (see above).
The table shows the basic parameters. A number of additional parameters that will be passed in notifications can be specified in personal account.
Notably, the «parameter_name;parameter_value» pairs must be sorted in direct alphabetical order by parameter name.
If the checksums match, this notification is authentic and was sent by the payment gateway. Otherwise, it is likely that the attacker is trying to pass off their notification as a payment gateway notification.
Use Latin characters when filling out the form.
To be able to complete this procedure, you need to have an Apple Developer account.
The identifier should begin with the word merchant. The address of your live site should be specified in the reverse order. For example, for the site sale.test.ru the identifier will look as merchant.ru.test.sale.
Below there is a short list of actions that will allow you to test Apple Pay. Further details are available in documentation on the Apple website.
For more information about creating a test account, see Apple documentation.
If you mistakenly use a test account on a test device to log in to a production environment (such as iTunes) instead of logging in to a test environment, this test account will become invalid and cannot be used again. In this case create a new test account with a new email address.
Steps 1–3 are necessary to enable payment via the mobile app.
You can start generating a new report without waiting for the completion of the previous one.
Number in brackets after the caption Reports means how many reports are currently being generated.
Fiscalization settings are set by technical support upon request to support@ecom.sberbank.ru. At this stage, you do not need to configure the fiscalization parameters yourself.
Detailed information about actions in the ATOL personal account is given on ATOL website (external ink).
Do not specify actual data to connect to the fiscal data operator in the test personal account! If you do so, test payments will be registered with the fiscal data operator as if they were real. After entering the data into the live personal account – check that they are valid and saved correctly.
If zero is passed in this parameter, completion will occur for the entire pre-authorized amount.
Either orderId
or orderNumber
must be present in the request. If both parameters are present in the request, orderId
has priority.
The request must contain either orderId
or merchantordernumber
. If both parameters are present in the request, orderId
has priority.
Only POST is supported.
Some parameters to be returned may depend on the Fiscal Data Operator used.
Use the standard requests to the payment gateway for the operations of reversal, refund and payment completion.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
jsonParams={«sbrf_spasibo:amount_bonus»:«100»}
In this case, the amount in money will be deducted from the amount
parameter.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
<params name=«sbrf_spasibo:amount_bonus» value=«1030»/>
In this case, the amount in money will be deducted from the amount
parameter.
Orders that initiate recurring payments cannot be reversed and refunded, as in these cases there is no real debiting.
If you do not specify the amount
parameter, completion will take place for the entire pre-authorized amount.
For error-free processing of the request it is sufficient to pass the quantity
and positionId
parameters.
If you do not specify the depositAmount
parameter, completion will take place for the entire pre-authorized amount.
The order status must be determined by the orderStatus
parameter value. The authCode
field is obsolete.
Currently, requesting information about the status of a check in the WS interface is not supported.
From the VirtueMart developer site you can download the Joomla! distribution with pre-installed add-on VirtueMart. The names of such combined archives end with Stable-Full_Package.zip. When doing this, choose a combination of Joomla! and VirtueMart, compatible with the payment plugin.
The plugins are only guaranteed to work with the following combinations of Joomla! and VirtueMart add-ons. If you use other combinations of versions (for example, after updating Joomla!) The plugin may not work correctly.
Starting from this version, the plugin allows you to transfer a shopping cart, which provides the possibility of detailed fiscalization in accordance with 54-FZ.
Installing and configuring the plugin is presented on Joomla! version 3.6.5 and VirtueMart version 3.2.0.
The Android Pay payment method is currently not supported by Google. This payment method will be replaced by Pay with Google (it is currently temporarily unavailable for integration, documentation is under development).
The section is currently under construction.
When calculating itemAmount = itemPrice*quantity parameter, the result is rounded up to the second digit after the decimal point. For example, if the calculation result is 100.255, then final value will be 100.26.
To execute the request, one of the following parameters must be specified:
2
;2
;2
.To be able to accept payment in this way, you must have the respective rights in the system. If in doubt, contact technical support.
Payment in this way is possible only when using a one-phase payment scheme.
For greater security, use of a method in which the checksum is generated using asymmetric cryptography is recommended.
The order of parameters in the notification can be undefined.
Below are examples of creating a checksum using symmetric cryptography.
The information on this portal is provided as an introduction to the functionality of the payment gateway. The necessary data for connecting to the live environment will be provided after testing in accordance with connection checklist.
Currently this request is available through REST interface only.
To be able to receive payment via Samsung Pay Web with a merchant-side payment page, you must install JavaScript script. When receiving a response from the payment gateway, you need to call the connect function of this script and pass in it certain parameters of the payment gateway response. For details, see the description of the correspondinginteraction schemes and description of the request.
Sites must use the HTTPS scheme and support the TLS 1.2 protocol.
When making a payment from a web page, the buyer must be in the Safari browser.
Programming skills are required to implement automatic check of payment completion.
Do not share or publish the private key to anyone. Signature verification must be implemented on the store's server. JavaScript implementation of signature verification on the front-end of the store is not allowed.
To make payments from the website, your online store site must be registered with Google Pay.
Before registering a personal account of a cloud cash register provider apply to connect to Internet acquiring.
If the merchant has fiscalization set up, when indicating email (the buyer's email address) and/or phone (the buyer's cell phone number) as additional parameters, these parameters are first used to send the fiscal receipt.
This setting is applied only if you have configured fiscalization parameters – see details in section on compliance with law 54-FZ.
Fiscalization is supported in plugins for Amiro.CMS versions 7.x and later (see details on fiscalization).
The setting is available only in plugins for Amiro.CMS versions 7.x and later.
If you want to select multiple items, hold down the CTRL key on your keyboard before checking the items in the list.
The plugin supports fiscalization in accordance with the law 54-FZ.
Integration with a payment gateway is not required if you use:
After making all the settings, we ask you to carefully check the correct filling of all fields in relation to the fiscalization parameters in the personal account of the bank, because the correctness of the transfer of fiscal data to the OFD and tax depends on this. We also recommend checking «in action» when sending a fiscal receipt.
In case of any difficulties or questions, you can send them to the address of the technical support of the bank support@ecom.sberbank.ru and Business.Ru support@mail.business.ru.
Information for developers is available inGoogle documentation.
By accepting payments via Google Pay, you agree to Google terms of service.
If the cart and fiscalization data are not included in the request, then the default values specified in the personal account are passed to the Fiscal Data Operator (see User Manual for personal account).
Using the REST protocol, you should send requests with the type application/x-www-form-urlencoded
, rather than multipart/form-data
.
If the section Invoice to email the following message is displayed: “You do not have sufficient rights to send the payment form”, please contact the technical support service support@ecom.sberbank.ru with a request to activate the invoicing option. Make sure to include the following information in your request:
The link can also be encoded as a QR code.
If there are no user actions for 10+ minutes, the session is automatically closed.
A click on saves the chart image.
You can set several statuses at the same time by pressing CTRL and selecting them with a left-click.
If you set the invoice validity period too short, the client will not be able to use the same invoice to pay for the order after some time.
When using a two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Passwords provided for both logins in production environment must be changed in the personal account (available here).
Password for each login must be changed.
When using two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Fiscalization – 54-FZ
Most of the plugins presented support fiscalization. To clarify whether the plugin you are interested in supports the fiscalization functionality, you can visit our technical support address – support@ecom.sberbank.ru.
We are ready to develop plugin support for new CMS. To do this, you need to contact the technical support service – support@ecom.sberbank.ru.
For online lending, only one-phase payment is applied.
When using the Online Lending functionality, only the one-phase payment is available.
When using the Online Lending functionality, token authentication is not possible. Login and password should be used for authentication.
Online Lending functionality is available through the REST interface only.
If all the items in the request are delivered without payment (a gift to customer), the value 0 should be passed.
If the item is delivered without payment (a gift to customer), the value 0 should be passed.
When requesting a refund, the value of this parameter may differ from that given during the registration of the order.
The transfer of this block is possible only when using the following OFDs:
The settings are effective only if the format of fiscal documents of version 1.05 and higher is selected.
The format of the version must match the format selected in the personal account of the bank and in the account of the fiscalization service.
It is necessary to add to the request a header with the definition of the type of contents – «Content-Type: application/json» to ensure that the request is processed correctly.
This tutorial assumes that your Joomla! the JoomShopping component is already installed.
This tutorial assumes that your Joomla! the VirtueMart component is already installed.
The plugin was tested for Simpla version 3.2.x.
These steps are necessary if you want to receive encrypted payment actions directly from Google Pay and redirect them to a payment gateway. Namely:
For more information see Integration Checklist (external link).
It is recommended to use an existing email address on your domain, for this you need to select the option Use current email address.
These actions are necessary to enable payment via the mobile app. You do not need to take these steps to pay through the site.
Shop-Script version must be 7.x or higher.
Not applicable for OFD.ru.
Magento plugins for versions 2.2.x and 2.3.x are incompatible. When upgrading Magento version from 2.2.x to 2.3.x, you must first uninstall the plugin for version 2.2.x and then install the plugin for version 2.3.x.
The beginning of the command depends on the folder where PHP is installed. In particular, the PHP version can be specified without a hyphen: php5.6
, php7.1
, php7.2
, etc.
If in doubt, contact your hosting provider.
On shared hosting, the last command may not be executed due to the memory limit set by the hosting provider. In this case, contact your hosting provider.
In code
folder, as well as in the folders of a higher level, (app
) there may be data not related to the plugin, so delete only the Rbs
folder and its contents.
Types 6 (gambling winnings) and 8 (lottery winnings) are not used.
At this step, you can right away configure automatic addition of your cash registers to the personal account of the OFD.
To register a cash desk through the FTS website, you will need an EDS. If you don't have it, you can order it from us or submit a paper application for registering the cash register with the tax service.
You can find the free OFD activation code in cash register profile in the personal account of Initpro.
You don't need integration setup if:
Sberbank.
Closing a check can only be done if a partial, not full refund has been made for the order.
If you specify amount=0 in the request, a refund is made for the entire amount of the order.
Before summing up all line items, the product of quantity and price for each good item is rounded to an integer. If the value is followed by 5 or greater after the decimal point, it is rounded up. Below there are examples of rounding.
Therefore, the «amount» parameter value must be equal to the sum of the line items rounded.
Online Lending functionality is available through the REST interface only.
Do not use «‘)«character combination inside this section, or it will cause an error on the gateway side.
To execute the request, the order number or its identifier in the fiscalizator must be specified.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the block itself is not mandatory and is not passed, its included parameters should not be passed.
Two-phase payments functionality is available if specifically requested by Merchant from the bank.
This parameter can be passed either as a boolean value (without quotation marks) or as a string (with quotation marks).
Most OFDs support delivery of receipt only to one email address. Some OFDs allow receipt delivery to multiple emails. In this case, the emails should be separated by commas without spaces. Contact your OFD for availability of receipt delivery to multiple emails.
The registered cart must contain an item with this positionId value, otherwise the order will fail.
Use semicolon (»;») without a space as the separator. The string should end with semicolon («;») as well.
If a response other than the 200 OK HTTP code is returned to the payment gateway, the notification sending is considered to be unsuccessful. In this case, the payment gateway repeats sending the notification (the first attempt is made after 30 seconds, and the next with an interval of 10 minutes) until one of the following conditions is met:
or
When either of the above conditions is met, attempts to send a callback notification about the operation are terminated.
The transfer of authorization data (username/password) can be transferred both in the request body and in the header.
Refund and reversal requests are standard payment gateway requests.
The token
value can be obtained from the technical support staff.
To enable this functionality, please contact technical support.
The field size limit is 1024 bytes.
Use
- to pass \
use \«- to pass »
If the number is passed in a separate parameter and in additional parameters, the number specified in this phone
parameter will be used.
Currently, minimal customization of the payment page is available, only the following elements can be changed:
The requirements for these elements are presented in the instructions for working with your personal account.
For recurring payments via SberPay, only one-phase payment can be used. At the same time, for ordinary bindings, a two-phase payment is possible.
In this document, the following data type conventions are used when describing request and response parameters:
In this document, the following data type conventions are used when describing request and response parameters:
When using ATOL fiscalization, the phone
parameter should be sent in the following format:
The phone number must be passed together with the country code without spaces and additional characters except for the quotation marks (the number «371 2 1234567» must be passed as «+37121234567»). If the phone number belongs to Russia (prefix «+7»), then the value can be passed without a prefix (the number «+79251234567» can be sent as «9251234567»). The maximum string length is 64 characters. One of the fields must be filled in the request: email
or phone
.
It is forbidden to pass reserved names in the parameter (if they are passed, the order may be rejected):
Possible values of measure
Value | Description |
---|---|
0 | Used for payment subjects that can be sold individually or in units (as well as in the event that the payment subject is a product subject to mandatory labeling with an identification tool (which can be known from mark_code being passed)) |
10 | Gram |
11 | Kilogram |
12 | Ton |
20 | Centimeter |
21 | Decimeter |
22 | Meter |
30 | Square centimeter |
31 | Square decimeter |
32 | Square meter |
40 | Milliliter |
41 | Liter |
42 | Cubic meter |
50 | Kilowatt hour |
51 | Gigacalorie |
70 | Day (24h) |
71 | Hour |
72 | Minute |
73 | Second |
80 | Kilobyte |
81 | Megabyte |
82 | Gigabyte |
83 | Terabyte |
255 | Applicable when using other units of measurement |
Parameters of markQuantity tag:
A parameter included in a tag and indicated as mandatory is only mandatory within that tag. If the tag itself is not mandatory and is not passed, its included parameters should not be passed.
Name | Type | Mandatory | Description |
---|---|---|---|
|
N..12 | yes |
The numerator of the fractional part of the payment subject. |
|
N..12 | yes |
The denominator of the fractional part of the payment subject. |
The table below shows how the merchant and the payment gateway interact when a payment is refunded.
1 | The merchant makes a refund request to the buyer:
|
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
On a payment with Apple Pay, the interaction occurs according to the following scheme.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The user selects in mobile app Apple Pay as payment method. | |
2 | The payment data is sent to the Apple Pay system for processing. | |
3 | To process payment data in the Apple Pay system, a PKPaymentToken Object is created, which contains the paymentData property (hereinafter, see Apple Pay documentation). |
|
4 | Apple Pay sends a response to the merchant (mobile app). | |
5 | The merchant extracts from the received PKPaymentToken Object object the paymentData property and encodes its content in Base64. |
|
6 |
The merchant creates a payment request containing
Notably, the |
The merchant creates a payment request containing
Notably, the |
7 | The payment gateway processes the request and returns a response with the result: |
|
8 | The App displays to the user the result of the payment. | |
9 |
The merchant requests from payment gateway the order payment status by passing a unique identifier that was received upon order registration in |
|
10 | Not applicable | To debit funds from the customer's account, the merchant needs to send to the payment gateway the order completion request. |
11 | Not applicable | The payment gateway returns the result of processing the request. The order status is not returned. To get the status of the order, an order status request should be sent to the gateway: |
In case of payment with Google Pay from mobile app, the exchange goes as follows.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The user selects Google Pay as payment method. | |
2 | The App requests from Google Pay the masked card data. | |
3 | Google Pay returns masked payment card data to the App. | |
4 | The application displays the masked card data added to Google Pay to the customer. | |
5 | The user confirms payment. | |
6 | The App requests from Google Pay the encrypted card data. | |
7 | Google encrypts the data using a public key – the corresponding private key is located in the payment gateway. | |
8 | Google Pay returns encrypted payment data to the App. | |
9 | The application sends a payment request to the payment gateway, specifying the token received from Google Pay:
Notably, the | The application sends a payment request to the payment gateway, specifying the token received from Google Pay:
Notably, the |
10 | The Payment Gateway decrypts the received token and carries out the payment. | |
11 | The Payment Gateway returns the payment result to the App. | |
12 | The App displays the purchase result to the Payer. | |
13 |
The merchant requests from payment gateway the order payment status by passing a unique identifier that was received upon order registration in |
|
14 | Not applicable | To debit funds from the customer's account, the merchant needs to send to the payment gateway the order completion request: |
15 | Not applicable | The payment gateway returns the result of processing the request. The order status is not returned. To get the status of the order, an order status request should be sent to the gateway: |
In case of payment with Samsung Pay, the exchange goes as follows.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The user selects Samsung Pay as payment method. | |
2 | The application sends the payment details to Samsung. | |
3 | Samsung sends to the application a response containing, among other things, the 3ds.data parameter with the encrypted payment data. |
|
4 | The Merchant sends to Payment Gateway a payment request: Notably:
| The Merchant sends to Payment Gateway a payment request: Notably:
|
5 | The Payment Gateway decrypts the received token and carries out the payment. | |
6 | The Payment Gateway returns to the App the result of payment; the result gets shown on the screen of mobile device. | |
7 |
The merchant requests from payment gateway the order payment status by passing a unique identifier that was received upon order registration in |
|
8 | Not applicable | To debit funds from the customer's account, the merchant needs to send to the payment gateway the order completion request. |
9 | Not applicable | The payment gateway returns the result of processing the request. The order status is not returned. To get the status of the order, an order status request should be sent to the gateway: |
1 | The customer created an order on the merchant's website and selected the «Buy on credit» option. |
2 | The merchant's system registers the order in the payment gateway: * order registration request or * order registration with fiscalization request |
3 | The payment gateway passes to the merchant the result of the order registration, including the unique order ID and the URL of the loan term selection page, to which the customer's browser should be redirected to. |
4 | The merchant redirects the customer's browser to the URL received at the previous step. |
5 | The customer's browser goes to the specified URL. |
6 | The customer is presented with a page describing the loan. |
7 | The customer clicks on Submit application. |
8 | The payment gateway registers the application. |
9 | The payment gateway redirects the customer's browser to the Sberbank Online URL. |
10 | The customer's browser goes to the Sberbank Online authentication page. |
11 | In the personal account of Sberbank Online, the customer selects the loan term and undergoes the loan issuance procedure. |
12 | Sberbank Online shares data with the payment gateway. |
13 | Sberbank Online makes payment. |
14 | Sberbank Online informs RBS about changing the order status to «Paid». |
15 | After making the payment, Sberbank Online redirects the customer to the merchant 's page. |
16 | Payment gateway communicates with OFD (Fiscal Data Operator). |
17 | The payment gateway updates order status. |
18 | The merchant sends an order status request to the payment gateway. |
19 | The payment gateway returns a response to the order status request. |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
Reversal of a payment for an order is available to Merchants provided that they have the corresponding permissions and approval of Sberbank.
The table below shows how the merchant and the payment gateway interact when a payment is reversed.
1 | The merchant makes a request to reverse the payment: |
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
The Payment Gateway allows full or partial refunds for paid orders.
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
To get information about a sales receipt (for example, to then pass this data to a customer) use the getReceiptStatus.do request. Currently, this request can only be made through the REST interface.
Recommended version of WordPress for working with the Sberbank payment plugin: not lower than 4.8.3.
You can download the required version of WooCommerce on github.com (link leads to WooCommerce version history).
The WooCommerce plugin is not compatible with all WordPress themes. Here, the Storefront theme is used as example. This theme is designed by WooCommerce developers.
Meanings of terms highlighted on this page in bold font are given in theglossary.
One-phase payments are preferable if the product or service is provided immediately after payment. Two-phase payments should be used if some time elapses between the buyer's decision to pay and the delivery of the selected product or service.
The need for verification using 3-D Secure depends on the buyer's bank card, as well as on the settings configured for the Merchant upon agreement with Sberbank.
In case of one-phase payments, the reversal operation is possible only before the close of the day, that is, until 24:00 (Moscow time) on the day when the payment was made.
Regardless of the chosen connection method, you are given access to the personal account on the payment gateway server.
You can use test cards to try out the functionality.
The available payment acceptance methods depend on settings configured for you. If in doubt, check with a Sberbank representative which method of accepting payments you can use.
The value of this parameter goes in the registration request as the clientId
parameter.
The page of your site on which the payment solution will be used must be saved in UTF-8 encoding, and it must also have a meta-tag <meta name=«viewport» content=«width=device-width»>
.
The links point to test environment. Once done with testing, update the links so that they point to the production environment.
The server on which the content management system is located must support the TLS 1.2 protocol. If in doubt, check with your hosting provider.
The minimum amount of funds to be debited is 100 rubles.
If the cart and fiscalization data are not passed in the request, the default values specified in the personal account are passed to the Fiscal Data Operator (see setting up fiscalization data for more details).
To enable sending this field to the processing system, contact the technical support service.
Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be unsuccessful.
By default, the following fields are passed to the Bank processing system:
orderNumber
– order number in the store system;description
– order description (no more than 24 characters; %, +, carriage return \r, and line feed \n cannot be used).
It is mandatory to pass one of the two parameters: email
or phone
.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the section is optional and missing, then the parameters included in it should not be passed.
Access to personal account is granted regardless of the chosen connection method.
Functions available in the personal account depend on the configured settings. If in doubt, please contact a Sberbank representative.
For more details on the differences between editions, see the website «1C-Bitrix».
1C-Bitrix version used for installation and configuration: 1C-Bitrix: Site Manager, Small Business Edition, version16.5.4.
In the 1C-Bitrix interface, a «payment system» is a payment method that a customer can choose, for example: «in cash to a courier», «by bank card», etc. The term «payment method» is used throughout this description.
The order of fields and settings may differ depending on the edition of your 1C-Bitrix instance.
In this description, the setting is shown using the example of the Default tab. If the tabsIndividual and Entity have not been edited before, the changes made will apply to these tabs.
If the plugin is running in test mode, you should specify the password for the test user account. If the plugin is running in standard (production) mode, you should specify the password for the production user account.
If the plugin is running in test mode, you should specify the login for the test user account. If the plugin is running in production mode, you should specify the password for the production user account.
If you want to change the order in which a payment method is displayed for a customer, click on the icon opposite the required payment method and, while holding the left mouse button, move this payment method to the required position.
The payment plugin was tested for compatibility with CS-Cart version 4.6.x.
In the CS-Cart interface, modules that extend the site's functionality are called «add-ons». In this description, the term «plugin» is used.
The description contains only those settings that relate directly to the payment plugin. The rest of the settings are related to the content management system (CMS).
In the Drupal interface, add-ons are called «modules». The payment plugin falls into the same category, however the term «plugin» is used in this description.
A combined distribution Commerce Kickstart version 7.x-2.45 was used for the purposes of this description. This distribution combines Drupal version 7.54 and Drupal Commerce version 7.x-1.13.
The plugin was tested on OpenCart/ocStore version 2.3.0.2.
The event log files are located here:
<site folder>/system/storage/logs/
The instructions for installing and configuring the plugin for PrestaShop version 1.7.x are given as example.
The plugin is compatible with Netcat versions 5.9.x and higher and has been tested on E-commmerce editions.
This situation can be avoided in one of the following ways:
Use the following URL to connect to the Test Service (WSDL):
https://3dsec.sberbank.ru/payment/webservices/merchant-ws?wsdl.
Refunds are possible for payments in Deposited status.
When clientId
parameter is passed initially, the client's identifier is registered in the payment gateway and the data of their card is saved (except for the CVC code). On subsequent passes of this parameter, the client is redirected to a page where they can choose from the following options:
Callback notifications are not email notifications or telephone notifications. These are notifications received through the programming interface.
To enable the ability to receive checksum notifications and get a private key, contact technical support.
Self-signed certificates are not allowed. The certificate must be signed by a trusted certification authority (see above).
The table shows the basic parameters. A number of additional parameters that will be passed in notifications can be specified in personal account.
Notably, the «parameter_name;parameter_value» pairs must be sorted in direct alphabetical order by parameter name.
If the checksums match, this notification is authentic and was sent by the payment gateway. Otherwise, it is likely that the attacker is trying to pass off their notification as a payment gateway notification.
Use Latin characters when filling out the form.
To be able to complete this procedure, you need to have an Apple Developer account.
The identifier should begin with the word merchant. The address of your live site should be specified in the reverse order. For example, for the site sale.test.ru the identifier will look as merchant.ru.test.sale.
Below there is a short list of actions that will allow you to test Apple Pay. Further details are available in documentation on the Apple website.
For more information about creating a test account, see Apple documentation.
If you mistakenly use a test account on a test device to log in to a production environment (such as iTunes) instead of logging in to a test environment, this test account will become invalid and cannot be used again. In this case create a new test account with a new email address.
Steps 1–3 are necessary to enable payment via the mobile app.
You can start generating a new report without waiting for the completion of the previous one.
Number in brackets after the caption Reports means how many reports are currently being generated.
Fiscalization settings are set by technical support upon request to support@ecom.sberbank.ru. At this stage, you do not need to configure the fiscalization parameters yourself.
Detailed information about actions in the ATOL personal account is given on ATOL website (external ink).
Do not specify actual data to connect to the fiscal data operator in the test personal account! If you do so, test payments will be registered with the fiscal data operator as if they were real. After entering the data into the live personal account – check that they are valid and saved correctly.
If zero is passed in this parameter, completion will occur for the entire pre-authorized amount.
Either orderId
or orderNumber
must be present in the request. If both parameters are present in the request, orderId
has priority.
The request must contain either orderId
or merchantordernumber
. If both parameters are present in the request, orderId
has priority.
Only POST is supported.
Some parameters to be returned may depend on the Fiscal Data Operator used.
Use the standard requests to the payment gateway for the operations of reversal, refund and payment completion.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
jsonParams={«sbrf_spasibo:amount_bonus»:«100»}
In this case, the amount in money will be deducted from the amount
parameter.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
<params name=«sbrf_spasibo:amount_bonus» value=«1030»/>
In this case, the amount in money will be deducted from the amount
parameter.
Orders that initiate recurring payments cannot be reversed and refunded, as in these cases there is no real debiting.
If you do not specify the amount
parameter, completion will take place for the entire pre-authorized amount.
For error-free processing of the request it is sufficient to pass the quantity
and positionId
parameters.
If you do not specify the depositAmount
parameter, completion will take place for the entire pre-authorized amount.
The order status must be determined by the orderStatus
parameter value. The authCode
field is obsolete.
Currently, requesting information about the status of a check in the WS interface is not supported.
From the VirtueMart developer site you can download the Joomla! distribution with pre-installed add-on VirtueMart. The names of such combined archives end with Stable-Full_Package.zip. When doing this, choose a combination of Joomla! and VirtueMart, compatible with the payment plugin.
The plugins are only guaranteed to work with the following combinations of Joomla! and VirtueMart add-ons. If you use other combinations of versions (for example, after updating Joomla!) The plugin may not work correctly.
Starting from this version, the plugin allows you to transfer a shopping cart, which provides the possibility of detailed fiscalization in accordance with 54-FZ.
Installing and configuring the plugin is presented on Joomla! version 3.6.5 and VirtueMart version 3.2.0.
The Android Pay payment method is currently not supported by Google. This payment method will be replaced by Pay with Google (it is currently temporarily unavailable for integration, documentation is under development).
The section is currently under construction.
When calculating itemAmount = itemPrice*quantity parameter, the result is rounded up to the second digit after the decimal point. For example, if the calculation result is 100.255, then final value will be 100.26.
To execute the request, one of the following parameters must be specified:
2
;2
;2
.To be able to accept payment in this way, you must have the respective rights in the system. If in doubt, contact technical support.
Payment in this way is possible only when using a one-phase payment scheme.
For greater security, use of a method in which the checksum is generated using asymmetric cryptography is recommended.
The order of parameters in the notification can be undefined.
Below are examples of creating a checksum using symmetric cryptography.
The information on this portal is provided as an introduction to the functionality of the payment gateway. The necessary data for connecting to the live environment will be provided after testing in accordance with connection checklist.
Currently this request is available through REST interface only.
To be able to receive payment via Samsung Pay Web with a merchant-side payment page, you must install JavaScript script. When receiving a response from the payment gateway, you need to call the connect function of this script and pass in it certain parameters of the payment gateway response. For details, see the description of the correspondinginteraction schemes and description of the request.
Sites must use the HTTPS scheme and support the TLS 1.2 protocol.
When making a payment from a web page, the buyer must be in the Safari browser.
Programming skills are required to implement automatic check of payment completion.
Do not share or publish the private key to anyone. Signature verification must be implemented on the store's server. JavaScript implementation of signature verification on the front-end of the store is not allowed.
To make payments from the website, your online store site must be registered with Google Pay.
Before registering a personal account of a cloud cash register provider apply to connect to Internet acquiring.
If the merchant has fiscalization set up, when indicating email (the buyer's email address) and/or phone (the buyer's cell phone number) as additional parameters, these parameters are first used to send the fiscal receipt.
This setting is applied only if you have configured fiscalization parameters – see details in section on compliance with law 54-FZ.
Fiscalization is supported in plugins for Amiro.CMS versions 7.x and later (see details on fiscalization).
The setting is available only in plugins for Amiro.CMS versions 7.x and later.
If you want to select multiple items, hold down the CTRL key on your keyboard before checking the items in the list.
The plugin supports fiscalization in accordance with the law 54-FZ.
Integration with a payment gateway is not required if you use:
After making all the settings, we ask you to carefully check the correct filling of all fields in relation to the fiscalization parameters in the personal account of the bank, because the correctness of the transfer of fiscal data to the OFD and tax depends on this. We also recommend checking «in action» when sending a fiscal receipt.
In case of any difficulties or questions, you can send them to the address of the technical support of the bank support@ecom.sberbank.ru and Business.Ru support@mail.business.ru.
Information for developers is available inGoogle documentation.
By accepting payments via Google Pay, you agree to Google terms of service.
If the cart and fiscalization data are not included in the request, then the default values specified in the personal account are passed to the Fiscal Data Operator (see User Manual for personal account).
Using the REST protocol, you should send requests with the type application/x-www-form-urlencoded
, rather than multipart/form-data
.
If the section Invoice to email the following message is displayed: “You do not have sufficient rights to send the payment form”, please contact the technical support service support@ecom.sberbank.ru with a request to activate the invoicing option. Make sure to include the following information in your request:
The link can also be encoded as a QR code.
If there are no user actions for 10+ minutes, the session is automatically closed.
A click on saves the chart image.
You can set several statuses at the same time by pressing CTRL and selecting them with a left-click.
If you set the invoice validity period too short, the client will not be able to use the same invoice to pay for the order after some time.
When using a two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Passwords provided for both logins in production environment must be changed in the personal account (available here).
Password for each login must be changed.
When using two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Fiscalization – 54-FZ
Most of the plugins presented support fiscalization. To clarify whether the plugin you are interested in supports the fiscalization functionality, you can visit our technical support address – support@ecom.sberbank.ru.
We are ready to develop plugin support for new CMS. To do this, you need to contact the technical support service – support@ecom.sberbank.ru.
For online lending, only one-phase payment is applied.
When using the Online Lending functionality, only the one-phase payment is available.
When using the Online Lending functionality, token authentication is not possible. Login and password should be used for authentication.
Online Lending functionality is available through the REST interface only.
If all the items in the request are delivered without payment (a gift to customer), the value 0 should be passed.
If the item is delivered without payment (a gift to customer), the value 0 should be passed.
When requesting a refund, the value of this parameter may differ from that given during the registration of the order.
The transfer of this block is possible only when using the following OFDs:
The settings are effective only if the format of fiscal documents of version 1.05 and higher is selected.
The format of the version must match the format selected in the personal account of the bank and in the account of the fiscalization service.
It is necessary to add to the request a header with the definition of the type of contents – «Content-Type: application/json» to ensure that the request is processed correctly.
This tutorial assumes that your Joomla! the JoomShopping component is already installed.
This tutorial assumes that your Joomla! the VirtueMart component is already installed.
The plugin was tested for Simpla version 3.2.x.
These steps are necessary if you want to receive encrypted payment actions directly from Google Pay and redirect them to a payment gateway. Namely:
For more information see Integration Checklist (external link).
It is recommended to use an existing email address on your domain, for this you need to select the option Use current email address.
These actions are necessary to enable payment via the mobile app. You do not need to take these steps to pay through the site.
Shop-Script version must be 7.x or higher.
Not applicable for OFD.ru.
Magento plugins for versions 2.2.x and 2.3.x are incompatible. When upgrading Magento version from 2.2.x to 2.3.x, you must first uninstall the plugin for version 2.2.x and then install the plugin for version 2.3.x.
The beginning of the command depends on the folder where PHP is installed. In particular, the PHP version can be specified without a hyphen: php5.6
, php7.1
, php7.2
, etc.
If in doubt, contact your hosting provider.
On shared hosting, the last command may not be executed due to the memory limit set by the hosting provider. In this case, contact your hosting provider.
In code
folder, as well as in the folders of a higher level, (app
) there may be data not related to the plugin, so delete only the Rbs
folder and its contents.
Types 6 (gambling winnings) and 8 (lottery winnings) are not used.
At this step, you can right away configure automatic addition of your cash registers to the personal account of the OFD.
To register a cash desk through the FTS website, you will need an EDS. If you don't have it, you can order it from us or submit a paper application for registering the cash register with the tax service.
You can find the free OFD activation code in cash register profile in the personal account of Initpro.
You don't need integration setup if:
Sberbank.
Closing a check can only be done if a partial, not full refund has been made for the order.
If you specify amount=0 in the request, a refund is made for the entire amount of the order.
Before summing up all line items, the product of quantity and price for each good item is rounded to an integer. If the value is followed by 5 or greater after the decimal point, it is rounded up. Below there are examples of rounding.
Therefore, the «amount» parameter value must be equal to the sum of the line items rounded.
Online Lending functionality is available through the REST interface only.
Do not use «‘)«character combination inside this section, or it will cause an error on the gateway side.
To execute the request, the order number or its identifier in the fiscalizator must be specified.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the block itself is not mandatory and is not passed, its included parameters should not be passed.
Two-phase payments functionality is available if specifically requested by Merchant from the bank.
This parameter can be passed either as a boolean value (without quotation marks) or as a string (with quotation marks).
Most OFDs support delivery of receipt only to one email address. Some OFDs allow receipt delivery to multiple emails. In this case, the emails should be separated by commas without spaces. Contact your OFD for availability of receipt delivery to multiple emails.
The registered cart must contain an item with this positionId value, otherwise the order will fail.
Use semicolon (»;») without a space as the separator. The string should end with semicolon («;») as well.
If a response other than the 200 OK HTTP code is returned to the payment gateway, the notification sending is considered to be unsuccessful. In this case, the payment gateway repeats sending the notification (the first attempt is made after 30 seconds, and the next with an interval of 10 minutes) until one of the following conditions is met:
or
When either of the above conditions is met, attempts to send a callback notification about the operation are terminated.
The transfer of authorization data (username/password) can be transferred both in the request body and in the header.
Refund and reversal requests are standard payment gateway requests.
The token
value can be obtained from the technical support staff.
To enable this functionality, please contact technical support.
The field size limit is 1024 bytes.
Use
- to pass \
use \«- to pass »
If the number is passed in a separate parameter and in additional parameters, the number specified in this phone
parameter will be used.
Currently, minimal customization of the payment page is available, only the following elements can be changed:
The requirements for these elements are presented in the instructions for working with your personal account.
For recurring payments via SberPay, only one-phase payment can be used. At the same time, for ordinary bindings, a two-phase payment is possible.
In this document, the following data type conventions are used when describing request and response parameters:
In this document, the following data type conventions are used when describing request and response parameters:
When using ATOL fiscalization, the phone
parameter should be sent in the following format:
The phone number must be passed together with the country code without spaces and additional characters except for the quotation marks (the number «371 2 1234567» must be passed as «+37121234567»). If the phone number belongs to Russia (prefix «+7»), then the value can be passed without a prefix (the number «+79251234567» can be sent as «9251234567»). The maximum string length is 64 characters. One of the fields must be filled in the request: email
or phone
.
It is forbidden to pass reserved names in the parameter (if they are passed, the order may be rejected):
Possible values of measure
Value | Description |
---|---|
0 | Used for payment subjects that can be sold individually or in units (as well as in the event that the payment subject is a product subject to mandatory labeling with an identification tool (which can be known from mark_code being passed)) |
10 | Gram |
11 | Kilogram |
12 | Ton |
20 | Centimeter |
21 | Decimeter |
22 | Meter |
30 | Square centimeter |
31 | Square decimeter |
32 | Square meter |
40 | Milliliter |
41 | Liter |
42 | Cubic meter |
50 | Kilowatt hour |
51 | Gigacalorie |
70 | Day (24h) |
71 | Hour |
72 | Minute |
73 | Second |
80 | Kilobyte |
81 | Megabyte |
82 | Gigabyte |
83 | Terabyte |
255 | Applicable when using other units of measurement |
Parameters of markQuantity tag:
A parameter included in a tag and indicated as mandatory is only mandatory within that tag. If the tag itself is not mandatory and is not passed, its included parameters should not be passed.
Name | Type | Mandatory | Description |
---|---|---|---|
|
N..12 | yes |
The numerator of the fractional part of the payment subject. |
|
N..12 | yes |
The denominator of the fractional part of the payment subject. |
The table below shows how the merchant and the payment gateway interact when a payment is refunded.
1 | The merchant makes a refund request to the buyer:
|
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
One-phase payment | Two-phase payment | |
---|---|---|
1 | The payer chooses goods or services on the merchant website and picks bank card as a payment option. | |
2 |
Reversal of a payment for an order is available to Merchants provided that they have the corresponding permissions and approval of Sberbank.
The table below shows how the merchant and the payment gateway interact when a payment is reversed.
1 | The merchant makes a request to reverse the payment: |
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
The Payment Gateway allows full or partial refunds for paid orders.
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
To get information about a sales receipt (for example, to then pass this data to a customer) use the getReceiptStatus.do request. Currently, this request can only be made through the REST interface.
Recommended version of WordPress for working with the Sberbank payment plugin: not lower than 4.8.3.
You can download the required version of WooCommerce on github.com (link leads to WooCommerce version history).
The WooCommerce plugin is not compatible with all WordPress themes. Here, the Storefront theme is used as example. This theme is designed by WooCommerce developers.
Meanings of terms highlighted on this page in bold font are given in theglossary.
One-phase payments are preferable if the product or service is provided immediately after payment. Two-phase payments should be used if some time elapses between the buyer's decision to pay and the delivery of the selected product or service.
The need for verification using 3-D Secure depends on the buyer's bank card, as well as on the settings configured for the Merchant upon agreement with Sberbank.
In case of one-phase payments, the reversal operation is possible only before the close of the day, that is, until 24:00 (Moscow time) on the day when the payment was made.
Regardless of the chosen connection method, you are given access to the personal account on the payment gateway server.
You can use test cards to try out the functionality.
The available payment acceptance methods depend on settings configured for you. If in doubt, check with a Sberbank representative which method of accepting payments you can use.
The value of this parameter goes in the registration request as the clientId
parameter.
The page of your site on which the payment solution will be used must be saved in UTF-8 encoding, and it must also have a meta-tag <meta name=«viewport» content=«width=device-width»>
.
The links point to test environment. Once done with testing, update the links so that they point to the production environment.
The server on which the content management system is located must support the TLS 1.2 protocol. If in doubt, check with your hosting provider.
The minimum amount of funds to be debited is 100 rubles.
If the cart and fiscalization data are not passed in the request, the default values specified in the personal account are passed to the Fiscal Data Operator (see setting up fiscalization data for more details).
To enable sending this field to the processing system, contact the technical support service.
Specifying this parameter when processing payments with the use of bindings is mandatory. Otherwise, a payment will be unsuccessful.
By default, the following fields are passed to the Bank processing system:
orderNumber
– order number in the store system;description
– order description (no more than 24 characters; %, +, carriage return \r, and line feed \n cannot be used).
It is mandatory to pass one of the two parameters: email
or phone
.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the section is optional and missing, then the parameters included in it should not be passed.
Access to personal account is granted regardless of the chosen connection method.
Functions available in the personal account depend on the configured settings. If in doubt, please contact a Sberbank representative.
For more details on the differences between editions, see the website «1C-Bitrix».
1C-Bitrix version used for installation and configuration: 1C-Bitrix: Site Manager, Small Business Edition, version16.5.4.
In the 1C-Bitrix interface, a «payment system» is a payment method that a customer can choose, for example: «in cash to a courier», «by bank card», etc. The term «payment method» is used throughout this description.
The order of fields and settings may differ depending on the edition of your 1C-Bitrix instance.
In this description, the setting is shown using the example of the Default tab. If the tabsIndividual and Entity have not been edited before, the changes made will apply to these tabs.
If the plugin is running in test mode, you should specify the password for the test user account. If the plugin is running in standard (production) mode, you should specify the password for the production user account.
If the plugin is running in test mode, you should specify the login for the test user account. If the plugin is running in production mode, you should specify the password for the production user account.
If you want to change the order in which a payment method is displayed for a customer, click on the icon opposite the required payment method and, while holding the left mouse button, move this payment method to the required position.
The payment plugin was tested for compatibility with CS-Cart version 4.6.x.
In the CS-Cart interface, modules that extend the site's functionality are called «add-ons». In this description, the term «plugin» is used.
The description contains only those settings that relate directly to the payment plugin. The rest of the settings are related to the content management system (CMS).
In the Drupal interface, add-ons are called «modules». The payment plugin falls into the same category, however the term «plugin» is used in this description.
A combined distribution Commerce Kickstart version 7.x-2.45 was used for the purposes of this description. This distribution combines Drupal version 7.54 and Drupal Commerce version 7.x-1.13.
The plugin was tested on OpenCart/ocStore version 2.3.0.2.
The event log files are located here:
<site folder>/system/storage/logs/
The instructions for installing and configuring the plugin for PrestaShop version 1.7.x are given as example.
The plugin is compatible with Netcat versions 5.9.x and higher and has been tested on E-commmerce editions.
This situation can be avoided in one of the following ways:
Use the following URL to connect to the Test Service (WSDL):
https://3dsec.sberbank.ru/payment/webservices/merchant-ws?wsdl.
Refunds are possible for payments in Deposited status.
When clientId
parameter is passed initially, the client's identifier is registered in the payment gateway and the data of their card is saved (except for the CVC code). On subsequent passes of this parameter, the client is redirected to a page where they can choose from the following options:
Callback notifications are not email notifications or telephone notifications. These are notifications received through the programming interface.
To enable the ability to receive checksum notifications and get a private key, contact technical support.
Self-signed certificates are not allowed. The certificate must be signed by a trusted certification authority (see above).
The table shows the basic parameters. A number of additional parameters that will be passed in notifications can be specified in personal account.
Notably, the «parameter_name;parameter_value» pairs must be sorted in direct alphabetical order by parameter name.
If the checksums match, this notification is authentic and was sent by the payment gateway. Otherwise, it is likely that the attacker is trying to pass off their notification as a payment gateway notification.
Use Latin characters when filling out the form.
To be able to complete this procedure, you need to have an Apple Developer account.
The identifier should begin with the word merchant. The address of your live site should be specified in the reverse order. For example, for the site sale.test.ru the identifier will look as merchant.ru.test.sale.
Below there is a short list of actions that will allow you to test Apple Pay. Further details are available in documentation on the Apple website.
For more information about creating a test account, see Apple documentation.
If you mistakenly use a test account on a test device to log in to a production environment (such as iTunes) instead of logging in to a test environment, this test account will become invalid and cannot be used again. In this case create a new test account with a new email address.
Steps 1–3 are necessary to enable payment via the mobile app.
You can start generating a new report without waiting for the completion of the previous one.
Number in brackets after the caption Reports means how many reports are currently being generated.
Fiscalization settings are set by technical support upon request to support@ecom.sberbank.ru. At this stage, you do not need to configure the fiscalization parameters yourself.
Detailed information about actions in the ATOL personal account is given on ATOL website (external ink).
Do not specify actual data to connect to the fiscal data operator in the test personal account! If you do so, test payments will be registered with the fiscal data operator as if they were real. After entering the data into the live personal account – check that they are valid and saved correctly.
If zero is passed in this parameter, completion will occur for the entire pre-authorized amount.
Either orderId
or orderNumber
must be present in the request. If both parameters are present in the request, orderId
has priority.
The request must contain either orderId
or merchantordernumber
. If both parameters are present in the request, orderId
has priority.
Only POST is supported.
Some parameters to be returned may depend on the Fiscal Data Operator used.
Use the standard requests to the payment gateway for the operations of reversal, refund and payment completion.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
jsonParams={«sbrf_spasibo:amount_bonus»:«100»}
In this case, the amount in money will be deducted from the amount
parameter.
If the merchant is connected to the «Spasibo from Sberbank» affiliate program, and bonus points are sent in the registration request, then the parameter should be passed as an additional parameter sbrf_spasibo:amount_bonus
indicating the amount of bonus points to be deducted, as in the example below.
<params name=«sbrf_spasibo:amount_bonus» value=«1030»/>
In this case, the amount in money will be deducted from the amount
parameter.
Orders that initiate recurring payments cannot be reversed and refunded, as in these cases there is no real debiting.
If you do not specify the amount
parameter, completion will take place for the entire pre-authorized amount.
For error-free processing of the request it is sufficient to pass the quantity
and positionId
parameters.
If you do not specify the depositAmount
parameter, completion will take place for the entire pre-authorized amount.
The order status must be determined by the orderStatus
parameter value. The authCode
field is obsolete.
Currently, requesting information about the status of a check in the WS interface is not supported.
From the VirtueMart developer site you can download the Joomla! distribution with pre-installed add-on VirtueMart. The names of such combined archives end with Stable-Full_Package.zip. When doing this, choose a combination of Joomla! and VirtueMart, compatible with the payment plugin.
The plugins are only guaranteed to work with the following combinations of Joomla! and VirtueMart add-ons. If you use other combinations of versions (for example, after updating Joomla!) The plugin may not work correctly.
Starting from this version, the plugin allows you to transfer a shopping cart, which provides the possibility of detailed fiscalization in accordance with 54-FZ.
Installing and configuring the plugin is presented on Joomla! version 3.6.5 and VirtueMart version 3.2.0.
The Android Pay payment method is currently not supported by Google. This payment method will be replaced by Pay with Google (it is currently temporarily unavailable for integration, documentation is under development).
The section is currently under construction.
When calculating itemAmount = itemPrice*quantity parameter, the result is rounded up to the second digit after the decimal point. For example, if the calculation result is 100.255, then final value will be 100.26.
To execute the request, one of the following parameters must be specified:
2
;2
;2
.To be able to accept payment in this way, you must have the respective rights in the system. If in doubt, contact technical support.
Payment in this way is possible only when using a one-phase payment scheme.
For greater security, use of a method in which the checksum is generated using asymmetric cryptography is recommended.
The order of parameters in the notification can be undefined.
Below are examples of creating a checksum using symmetric cryptography.
The information on this portal is provided as an introduction to the functionality of the payment gateway. The necessary data for connecting to the live environment will be provided after testing in accordance with connection checklist.
Currently this request is available through REST interface only.
To be able to receive payment via Samsung Pay Web with a merchant-side payment page, you must install JavaScript script. When receiving a response from the payment gateway, you need to call the connect function of this script and pass in it certain parameters of the payment gateway response. For details, see the description of the correspondinginteraction schemes and description of the request.
Sites must use the HTTPS scheme and support the TLS 1.2 protocol.
When making a payment from a web page, the buyer must be in the Safari browser.
Programming skills are required to implement automatic check of payment completion.
Do not share or publish the private key to anyone. Signature verification must be implemented on the store's server. JavaScript implementation of signature verification on the front-end of the store is not allowed.
To make payments from the website, your online store site must be registered with Google Pay.
Before registering a personal account of a cloud cash register provider apply to connect to Internet acquiring.
If the merchant has fiscalization set up, when indicating email (the buyer's email address) and/or phone (the buyer's cell phone number) as additional parameters, these parameters are first used to send the fiscal receipt.
This setting is applied only if you have configured fiscalization parameters – see details in section on compliance with law 54-FZ.
Fiscalization is supported in plugins for Amiro.CMS versions 7.x and later (see details on fiscalization).
The setting is available only in plugins for Amiro.CMS versions 7.x and later.
If you want to select multiple items, hold down the CTRL key on your keyboard before checking the items in the list.
The plugin supports fiscalization in accordance with the law 54-FZ.
Integration with a payment gateway is not required if you use:
After making all the settings, we ask you to carefully check the correct filling of all fields in relation to the fiscalization parameters in the personal account of the bank, because the correctness of the transfer of fiscal data to the OFD and tax depends on this. We also recommend checking «in action» when sending a fiscal receipt.
In case of any difficulties or questions, you can send them to the address of the technical support of the bank support@ecom.sberbank.ru and Business.Ru support@mail.business.ru.
Information for developers is available inGoogle documentation.
By accepting payments via Google Pay, you agree to Google terms of service.
If the cart and fiscalization data are not included in the request, then the default values specified in the personal account are passed to the Fiscal Data Operator (see User Manual for personal account).
Using the REST protocol, you should send requests with the type application/x-www-form-urlencoded
, rather than multipart/form-data
.
If the section Invoice to email the following message is displayed: “You do not have sufficient rights to send the payment form”, please contact the technical support service support@ecom.sberbank.ru with a request to activate the invoicing option. Make sure to include the following information in your request:
The link can also be encoded as a QR code.
If there are no user actions for 10+ minutes, the session is automatically closed.
A click on saves the chart image.
You can set several statuses at the same time by pressing CTRL and selecting them with a left-click.
If you set the invoice validity period too short, the client will not be able to use the same invoice to pay for the order after some time.
When using a two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Passwords provided for both logins in production environment must be changed in the personal account (available here).
Password for each login must be changed.
When using two-phase payment, it is recommended to debit the amount no later than 7 calendar days (for some industries, such as the hotel business, car rental, etc., the period of possible holding may be increased).
Fiscalization – 54-FZ
Most of the plugins presented support fiscalization. To clarify whether the plugin you are interested in supports the fiscalization functionality, you can visit our technical support address – support@ecom.sberbank.ru.
We are ready to develop plugin support for new CMS. To do this, you need to contact the technical support service – support@ecom.sberbank.ru.
For online lending, only one-phase payment is applied.
When using the Online Lending functionality, only the one-phase payment is available.
When using the Online Lending functionality, token authentication is not possible. Login and password should be used for authentication.
Online Lending functionality is available through the REST interface only.
If all the items in the request are delivered without payment (a gift to customer), the value 0 should be passed.
If the item is delivered without payment (a gift to customer), the value 0 should be passed.
When requesting a refund, the value of this parameter may differ from that given during the registration of the order.
The transfer of this block is possible only when using the following OFDs:
The settings are effective only if the format of fiscal documents of version 1.05 and higher is selected.
The format of the version must match the format selected in the personal account of the bank and in the account of the fiscalization service.
It is necessary to add to the request a header with the definition of the type of contents – «Content-Type: application/json» to ensure that the request is processed correctly.
This tutorial assumes that your Joomla! the JoomShopping component is already installed.
This tutorial assumes that your Joomla! the VirtueMart component is already installed.
The plugin was tested for Simpla version 3.2.x.
These steps are necessary if you want to receive encrypted payment actions directly from Google Pay and redirect them to a payment gateway. Namely:
For more information see Integration Checklist (external link).
It is recommended to use an existing email address on your domain, for this you need to select the option Use current email address.
These actions are necessary to enable payment via the mobile app. You do not need to take these steps to pay through the site.
Shop-Script version must be 7.x or higher.
Not applicable for OFD.ru.
Magento plugins for versions 2.2.x and 2.3.x are incompatible. When upgrading Magento version from 2.2.x to 2.3.x, you must first uninstall the plugin for version 2.2.x and then install the plugin for version 2.3.x.
The beginning of the command depends on the folder where PHP is installed. In particular, the PHP version can be specified without a hyphen: php5.6
, php7.1
, php7.2
, etc.
If in doubt, contact your hosting provider.
On shared hosting, the last command may not be executed due to the memory limit set by the hosting provider. In this case, contact your hosting provider.
In code
folder, as well as in the folders of a higher level, (app
) there may be data not related to the plugin, so delete only the Rbs
folder and its contents.
Types 6 (gambling winnings) and 8 (lottery winnings) are not used.
At this step, you can right away configure automatic addition of your cash registers to the personal account of the OFD.
To register a cash desk through the FTS website, you will need an EDS. If you don't have it, you can order it from us or submit a paper application for registering the cash register with the tax service.
You can find the free OFD activation code in cash register profile in the personal account of Initpro.
You don't need integration setup if:
Sberbank.
Closing a check can only be done if a partial, not full refund has been made for the order.
If you specify amount=0 in the request, a refund is made for the entire amount of the order.
Before summing up all line items, the product of quantity and price for each good item is rounded to an integer. If the value is followed by 5 or greater after the decimal point, it is rounded up. Below there are examples of rounding.
Therefore, the «amount» parameter value must be equal to the sum of the line items rounded.
Online Lending functionality is available through the REST interface only.
Do not use «‘)«character combination inside this section, or it will cause an error on the gateway side.
To execute the request, the order number or its identifier in the fiscalizator must be specified.
A parameter included in a block and indicated as mandatory is only mandatory within that block. If the block itself is not mandatory and is not passed, its included parameters should not be passed.
Two-phase payments functionality is available if specifically requested by Merchant from the bank.
This parameter can be passed either as a boolean value (without quotation marks) or as a string (with quotation marks).
Most OFDs support delivery of receipt only to one email address. Some OFDs allow receipt delivery to multiple emails. In this case, the emails should be separated by commas without spaces. Contact your OFD for availability of receipt delivery to multiple emails.
The registered cart must contain an item with this positionId value, otherwise the order will fail.
Use semicolon (»;») without a space as the separator. The string should end with semicolon («;») as well.
If a response other than the 200 OK HTTP code is returned to the payment gateway, the notification sending is considered to be unsuccessful. In this case, the payment gateway repeats sending the notification (the first attempt is made after 30 seconds, and the next with an interval of 10 minutes) until one of the following conditions is met:
or
When either of the above conditions is met, attempts to send a callback notification about the operation are terminated.
The transfer of authorization data (username/password) can be transferred both in the request body and in the header.
Refund and reversal requests are standard payment gateway requests.
The token
value can be obtained from the technical support staff.
To enable this functionality, please contact technical support.
The field size limit is 1024 bytes.
Use
- to pass \
use \«- to pass »
If the number is passed in a separate parameter and in additional parameters, the number specified in this phone
parameter will be used.
Currently, minimal customization of the payment page is available, only the following elements can be changed:
The requirements for these elements are presented in the instructions for working with your personal account.
For recurring payments via SberPay, only one-phase payment can be used. At the same time, for ordinary bindings, a two-phase payment is possible.
In this document, the following data type conventions are used when describing request and response parameters:
In this document, the following data type conventions are used when describing request and response parameters:
When using ATOL fiscalization, the phone
parameter should be sent in the following format:
The phone number must be passed together with the country code without spaces and additional characters except for the quotation marks (the number «371 2 1234567» must be passed as «+37121234567»). If the phone number belongs to Russia (prefix «+7»), then the value can be passed without a prefix (the number «+79251234567» can be sent as «9251234567»). The maximum string length is 64 characters. One of the fields must be filled in the request: email
or phone
.
It is forbidden to pass reserved names in the parameter (if they are passed, the order may be rejected):
Possible values of measure
Value | Description |
---|---|
0 | Used for payment subjects that can be sold individually or in units (as well as in the event that the payment subject is a product subject to mandatory labeling with an identification tool (which can be known from mark_code being passed)) |
10 | Gram |
11 | Kilogram |
12 | Ton |
20 | Centimeter |
21 | Decimeter |
22 | Meter |
30 | Square centimeter |
31 | Square decimeter |
32 | Square meter |
40 | Milliliter |
41 | Liter |
42 | Cubic meter |
50 | Kilowatt hour |
51 | Gigacalorie |
70 | Day (24h) |
71 | Hour |
72 | Minute |
73 | Second |
80 | Kilobyte |
81 | Megabyte |
82 | Gigabyte |
83 | Terabyte |
255 | Applicable when using other units of measurement |
Parameters of markQuantity tag:
A parameter included in a tag and indicated as mandatory is only mandatory within that tag. If the tag itself is not mandatory and is not passed, its included parameters should not be passed.
Name | Type | Mandatory | Description |
---|---|---|---|
|
N..12 | yes |
The numerator of the fractional part of the payment subject. |
|
N..12 | yes |
The denominator of the fractional part of the payment subject. |
The table below shows how the merchant and the payment gateway interact when a payment is refunded.
1 | The merchant makes a refund request to the buyer:
|
2 | After receiving a successful response from the Payment Gateway, the Merchant makes a request for order status: |
There is an option to set up callback notifications about order status instead of sending the getOrderStatusExtended
request. These notifications will be sent to you automatically after the order status changes.
Request name | Links to request specifications |
---|---|
Request for a binding deactivation | |
Request for activation of an binding that has been previously deactivated | |
Request for the list of bindings by customer ID | |
Request for the list of bindings of a certain bank card | |
Request for changing the validity period of a binding |
{(rater>id=rater8_3|name=Was this page helpful?|type=vote)}