Инструменты страницы
Passing bonus point amount in order registration request
The process of paying for the order, indicating in the registration request the number of bonus points to be debited:
1. Register the order through any standard gateway interface (REST or SOAP).
To create an order with payment through «Sberbank-Spasibo»/«SberMiles», then additional parameters of order registration request should include a parameter named sbrf_spasibo:amount_bonus/sbrf_sbermiles:amount_bonus
, and its value should specify the sum of points to be debited. In this case, the standard parameter amount
in the request for registration of the order must contain the amount to be paid in money (by bank card).
Along with payment, bonus points will be deducted in an amount equal to the valuesbrf_spasibo:amount_bonus/sbrf_sbermiles:amount_bonus
and money from the card in an amount equal to amount
.
You cannot debit the entire amount with bonus points! At least 100 rubles must be paid by card.
If the merchant wants to provide the client with the opportunity to pay only with money if it is impossible to debit bonuses (service unavailability, insufficient funds, etc.), he must pass an additional parameter «amount_card_failsafe»
when registering an order with a value equal to the full amount of payment in money (this functionality has not yet been implemented).
2. After registering an order in the system, go to the payment page indicated in the response, set the bank card parameters and click the «Pay» button:
Note: On the payment page, next to the order number and the amount, the order amount in bonuses will be indicated.
3. After payment is made, redirection takes place back to the store page (specified upon order registration in the returnUrl
parameter).
Payment is considered to be formally completed. To clarify the payment status, the store needs to poll the RBS system through a standard order status request (getOrderStatusExtended
) and wait for the order to enter the state DEPOSITED
(funds debited).