Формирование счета для оплаты с вводом суммы

На данной странице будет описан способ формирования ссылки для оплаты с самостоятельным вводом суммы клиентом вашего проекта, пример:

Пример оплаты с вводом суммы
Пример оплаты с вводом суммы

Начнем с того, что по умолчанию форма такого типа отключена. Для того, чтобы активировать такую форму оплаты необходимо перейти в свой проек -> Настройка платежных систем -> и нажать галку "Разрешить форму с ручным вводом суммы".

 
https://paymix.ru/pay/<publicKey>/input?
    bill=<billid>&
    descr=<description>&
    min=<minimum>&
    default=<default>&
    by=<method>&
    success_url=<successURL>&
    fail_url=<failURL>&
    sign=<signature>
 
<publicKey> Строка Публичный ключ вашего проекта. Можно найти В "Проект" -> Основные настройки проекта->Public Key
<minimum> Число Минимальная сумма платежа, например 10.0 или просто 10, не больше двух знаков после запятой
<billid> Строка Идентификатор в системе партнера, например email адрес, номер телефона или никнейм клиента. Чтобы понять, кто и за что оплатит выставленный счет
<description> Строка Опсание платежа, которое увидит клиент. Настоятельно рекомендуем URL кодировать описание, в php функция urlencode, смотрите пример ниже.
<signature> Строка Подпись платежа, чтобы невозможно было подделать, например, <minimum> или <billid>, для безопасности платежей. По умолчанию проверка подписи отключена в настройках проекта. Способ формирования подписи смотрите ниже. 
<method> Строка Способ оплаты, который будет выбран по-умолчанию, например webmoney. Можно не указывать.
<successURL> Строка Укажите, если хотите направить клиента после успешной на специальную страницу. Настоятельно рекомендуем URL кодировать ссылку, в php функция urlencode, смотрите пример ниже.
<failURL> Строка Укажите, если хотите направить клиента после неудачной оплаты на специальную страницу. Настоятельно рекомендуем URL кодировать ссылку, в php функция urlencode, смотрите пример ниже.
 
<?php
    // Заполняем переменные необходимыми данными
    $billid = "Nickname";
    $default = 200;
    $minimum = 10;
    $description = urlencode("Пополнение баланса");
    $method = "qiwi";
    $privateKey = "PRIVATE KEY ИЗ НАСТРОЕК ПРОЕКТА";
    $publicKey = "PUBLIC KEY ИЗ НАСТРОЕК ПРОЕКТА";

    // Формируем подпись платежа, чтобы никто не смог подделать. Включите в настройках проекта!
    $sign = hash("sha256", $billid.";".$minimum.";".$privateKey);
    
    // Собираем ссылку для оплаты, в примере в две строчки, чтобы уместилось, можно в одну
    $url = 'https://paymix.ru/pay/'.$publicKey.'/input?default='.$default.'&bill='.$billid;
    $url .= '&descr='.$description.'&sign='.$sign.'&min='.$minimum.'&by='.$method;

    // Получили ссылку, она хранится в переменной $url
    // Отправляем покупателя по этой ссылке
    header('Location: '.$url);
    exit();