# Создание платежа (редирект)

#### Пример запроса (GET):

```json
GET https://unitpay.ru/api

method              = initPayment
params[paymentType] = card
params[projectId]   = 123456
params[secretKey]   = 1234567890abc1234567890abcd12345
params[sum]         = 10
params[account]     = example
params[desc]        = description
```

**Обязательные параметры:**

<table data-header-hidden><thead><tr><th width="197.77777099609375">name</th><th width="125.55562337239581">type</th><th>description</th></tr></thead><tbody><tr><td><strong>paymentType</strong></td><td>строка</td><td><a href="https://help.unitpay.ru/book-of-reference/payment-system-codes">Код платежной системы</a>, через которую будет идти оплата</td></tr><tr><td><strong>projectId</strong></td><td>число</td><td>ID вашего проекта в системе UnitPay</td></tr><tr><td><strong>secretKey</strong></td><td>строка</td><td>Секретный ключ</td></tr><tr><td><strong>sum</strong></td><td>число</td><td>Сумма платежа в рублях (например, 100)</td></tr><tr><td><strong>account</strong> </td><td>строка</td><td>Идентификатор абонента в системе партнера (например, логин или email абонента)</td></tr><tr><td><strong>desc</strong></td><td>строка</td><td>Описание заказа</td></tr></tbody></table>

Значение project Id и SECRET KEY проекта можно найти на странице **Настройки** проекта

<figure><img src="/files/KTXuAWddA7vGECzbYcSB" alt=""><figcaption></figcaption></figure>

**Дополнительные параметры оплаты:**

<table data-header-hidden><thead><tr><th width="174.55731201171875">name</th><th width="149.66145833333331">type</th><th>description</th></tr></thead><tbody><tr><td><strong>currency</strong></td><td>строка</td><td><p>Валюта заказа по стандарту ISO 4217 (RUB, UAH, BYN, EUR, USD итд. <a href="https://help.unitpay.ru/book-of-reference/currency-codes">Полный список валют</a>). </p><p></p><p>Если платежная система не поддерживает требуемую валюту, то сумма будет сконвертирована в валюту системы оплаты</p></td></tr><tr><td><strong>locale</strong></td><td>строка</td><td>Принудительное указание языка платежной формы, допустимые значения: ru, en. По умолчанию язык формы определяется исходя из страны, к которой относится IP адрес пользователя</td></tr><tr><td><strong>backUrl</strong></td><td>строка</td><td>Адрес возврата пользователя с платежной формы без совершения покупки, по умолчанию используется адрес проекта. В адресе обязательно должен использоваться домен проекта. <br><br>Примеры: <br><code>https://redirect.&#x3C;домен проекта>/?someParams", "https://&#x3C;домен проекта>/redirect/</code></td></tr><tr><td><strong>resultUrl</strong></td><td>строка</td><td>Полный URL адрес перехода пользователя после оплаты (например, <a href="http://unitpay.ru/">http://вашсайт.ru</a>), принудительно отправляет плательщика по этому адресу после оплаты.<br><br><strong>Важно:</strong> домен не должен отличаться от домена проекта. Если параметр не задан, то будет использован адрес страницы чека платежа.</td></tr><tr><td><strong>hideOtherMethods</strong></td><td>строка</td><td><code>true</code> или <kbd>false</kbd><br>Скрывает окно выбора других способов оплаты<br></td></tr></tbody></table>

{% hint style="warning" %}
Запрос можно выполнить в тестовом режиме. [Узнать подробнее](https://help.unitpay.ru/other/test-api#vvedenie)
{% endhint %}

{% hint style="info" %}
По мере выполнения платежа мы уведомляем платформу магазина о статусе оплаты, последовательно [отправляя GET запросы на URL обработчика](https://help.unitpay.ru/payments/payment-handler).
{% endhint %}

#### Пример успешного ответа:

{% tabs %}
{% tab title="Redirect" %}

```json
{
    "result": {
        "type": "redirect",
        "paymentId": 1231231234,
        "message": "Счет успешно выставлен, ожидается оплата",
        "receiptUrl": "https://unitpay.ru/pay/receipt/1231231234-12d1fae123",
        "statusUrl": "https://unitpay.ru/pay/receipt/1231231234-12d1fae123",
        "redirectUrl": "https://unitpay.ru/pay/123456-1fc2f/card?account=test_unitpay&sum=10.00&currency=RUB&signature=d85e744643bbae4dadf49e845a14f5728eaf13b7c533e7cd5277c0531d91cb2c&desc=test_unitpay&hideOtherMethods=true&locale=ru&paymentId=1231231234&hideMenu=true"
    }
}
```

{% endtab %}
{% endtabs %}

<table data-header-hidden><thead><tr><th width="178.88887532552081">name</th><th width="150.111083984375">type</th><th>description</th></tr></thead><tbody><tr><td><strong>message</strong></td><td>string</td><td>Информация о результате формирования платежа</td></tr><tr><td><strong>paymentId</strong></td><td>integer</td><td>Номер платежа в системе UnitPay</td></tr><tr><td><strong>type</strong> </td><td>string</td><td><p><strong>Тип ответа:</strong></p><p><strong>redirect</strong> — необходимо перенаправить пользователя на адрес, указанные в <em>redirectUrl</em></p><p><strong>response</strong> - необходимо показать пользователю информацию, указанную в <em>response</em> <br><strong>invoice</strong> — счет создан автоматически и направлен плательщику. Дополнительных действий не требуется</p></td></tr><tr><td><strong>redirectUrl</strong></td><td>string</td><td>URL для переадресации пользователя на шлюз платежной платформы</td></tr><tr><td><strong>response</strong></td><td>string</td><td><p>html код формы</p><p></p><p>html - необходимо отобразить на странице </p></td></tr></tbody></table>

#### Ошибочный ответ

```json
{
    "error": {
        "message": "Не переданы обязательные параметры: account",
        "code": -32602
    }
}
```

<table data-header-hidden><thead><tr><th width="182.55560302734375">name</th><th width="141.33333333333331">type</th><th>description</th></tr></thead><tbody><tr><td><strong>message</strong></td><td>string</td><td>Информация с описанием ошибки формирования платежа</td></tr><tr><td><strong>code</strong></td><td>number</td><td>Код ошибки</td></tr></tbody></table>

**Описание возможных ошибок:**

<table data-header-hidden><thead><tr><th width="196.22216796875">name</th><th>description</th></tr></thead><tbody><tr><td><strong>-32000</strong></td><td>Неверные параметры авторизации (например, login)</td></tr><tr><td><strong>-32602</strong></td><td>Ошибочные параметры запроса (запрос написан с ошибкой)</td></tr><tr><td><strong>-32603</strong></td><td>Внутренняя техническая ошибка</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.unitpay.ru/payments/create-payment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
