---
metadata:
  - name: generator
    content: Diplodoc Platform v5.48.2
alternate:
  - https://yandex.uz/support/split-business/en/testing.md
  - https://yandex.uz/support/split-business/ru/testing.md
  - https://yandex.uz/support/split-business/uz/testing.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.uz/support/split-business/en/llms.txt


# Testing


Before accepting payments from customers, we recommend testing the service.



## Testing Yandex Split {#pay-split} 

To start testing the Yandex Split service, switch your settings to the test environment. Testing steps differ depending on the integration type:

{% list tabs %}


- Offline stores

    <!-- source: en/_includes/testing.md -->
    {% note alert %}

    Testing is conducted in the sandbox environment. In this case, requests to the Yandex Split API are sent to `https://sandbox.pay.yandex.uz`.

    {% endnote %}
    <!-- endsource: en/_includes/testing.md -->

    <h3>Testing a direct QR code</h3>

    To test a direct QR code:
    1. Create a test order using the `https://sandbox.pay.yandex.uz/api/merchant/v1/orders` request and obtain the payment link from the response.

    1. Convert the received payment link into a QR code. You can do this using a third-party service like [QR Code Generator](https://goqr.me/api/).

    1. Print the QR code and display it on the screen of your cash register software.

    1. Use your smartphone or the Yandex Split app's camera to read the payment link from the QR code and proceed to the payment form:

        - If the Yandex Split app is not installed, the payment process is carried out in your browser after you scan the QR code. This may require authorization in Yandex ID.
        - If the Yandex Split app is installed, the payment process is carried out in the app after scanning the QR code.

    1. In the payment form, select any payment method (Split payment). To learn about possible payment scenarios, see [Simulating payment results](#emulation).

       <!-- source: en/_includes/testing.md -->
       {% note info %}

       A real account is used for authorization, but the payment card will be selected from a list of test cards.

       Make sure the payment is a test payment: the payment link URL will have the `sandbox` prefix. For example, `https://sandbox.pay.ya.uz/o/nxPUqR`.

       {% endnote %}
       <!-- endsource: en/_includes/testing.md -->

    1. Receive an SMS with the authorization code to the phone number linked to the customer's account.
    1. Enter the code from the SMS. This will result in a test payment for a purchase with the payment success page displayed.

       <!-- source: en/_includes/testing.md -->
       {% note info %}

       At this stage, card acquiring takes place in the cardholder's bank in the production environment. In the test environment, acquiring is simulated programmatically.

       {% endnote %}
       <!-- endsource: en/_includes/testing.md -->

    1. After the payment is completed, the cash register software should generate a receipt.
    1. [Issue a partial refund](./custom/refund-payments#partial-refund) for one item or part of an item's cost from the test order.
    1. [Issue a full refund](https://yandex.uz/support/split-business/en/custom/refund-payments.md) of an item from the test order.



{% endlist %}

### Simulating payment results {#emulation}

While testing the service, you can use the payment emulator to test various payment processing scenarios. 

The following results can be simulated:

 #|
|| **Result** | **How to reproduce** ||
|| **Card not supported** | Select a **VISA** card in the payment form. The error "That card is not supported" will be displayed, and you can choose another card to complete the payment.||
|| **Payment failed** |
1. Create an order for 10 001 rubles.
2. Select a **MIR** card in the payment form and pay for the order. 
The error "Payment failed" will be displayed and the order status will change to `FAILED`.||
|| **Insufficient funds** |
1. Create an order for 10 002 rubles.
2. Select a **MIR** card in the payment form and pay for the order. 
The error "Insufficient funds" will be displayed, and you can choose another card to complete the payment.||
|| **Payment successful** |
1. Create an order for any amount other than 10 001 or 10 002 rubles.
2. Select a **MIR** card in the payment form and pay for the order. 
The message "Payment successful" will be displayed, and the order status will change to `CAPTURED`.||
|#


## Viewing test payments {#test-payments}

In your Yandex Split personal account, you can view the list of payments created in the test environment and their details. To do this:

1. Go to **Settings** and enable the **Test data** option for your store.
2. Go to **Payments**. You'll see a list of test payments along with a message indicating that test environment mode is active:


To hide test payments, disable the test environment. This can be done in two ways:

- In the **Payments** section: Click **Disable** in the top-right corner.
- In the **Settings** section: Disable the **Test data** option for your store.

{% note info %}

You can only switch back to the list of test payments by activating the test environment under **Settings**.

{% endnote %}


