Integrating by adding a Yandex Pay button

These integration instructions enable you to add a Yandex Pay button and  widget as shown in the demo. To implement the schema with link generation, follow these instructions.

Requirements for connecting

Before getting started, register in the merchant console and set up the test environment.

Instructions for integrating with

To add a Yandex Pay button or widget, follow the SDK instructions for the Web, Android, or iOS.

On the backend, you need to implement processing of the incoming requests /order/render, /order/create, and /webhook. The merchant's backend must authenticate requests coming from Yandex Pay by checking a digital signature. Read more in the section on request authentication in the Merchant API.

For the order payment mode:

  • Use the client SDK to transmit the order ID in the merchant's system using the orderId parameter.
  • In the /order/render response, pass the payment method (availablePaymentMethods).

In the /order/render request, the merchant's backend will receive the order ID (orderId) transmitted via the SDK. The backend will use this ID to return the cart items and the due amount.

Having received the order/create request, the merchant's backend collates the order ID and amount due specified in the request with the data in the merchant's system. If the data is correct, the backend returns response code 200 which authorizes the order payment.

To enable Yandex Pay Checkout in the /order/render response, enable delivery. When getting the /order/create request, create a new order in the merchant system. To enable pickup points, implement the methods /pickup-options and /pickup-option-details.

For integration testing, install the Sandbox environment in the SDK parameters.

What's next

Read the branding rules. If needed, set up transmission of receipts for the Federal Taxation Services, implement order management over the Yandex Pay API in the merchant's backoffice, and enable Split. To let your users pay in two steps, set up two-step payments.