Справка

Найдено 100 из 200

Как сделать, чтобы клиент сам указал сумму оплаты

При создании платежной ссылки смените переключатель с «Я указываю сумму» на «Плательщик укажет сумму», укажите название товара или услуги.

Вы также можете добавить кнопки с предзаданными суммами, чтобы плательщик мог выбрать одну из них, либо ввести свою сумму в поле ввода.

Чтобы сделать одну из кнопок предвыбранной на странице оплаты ее необходимо отметить звездочкой.

Клиент выберет кнопку с нужной суммой, либо введет свою и сделает оплату. Транзакция отобразится на главном экране платежей, как и любая другая.

«Пожертвовать» на кнопке

В настройках платежной ссылки надпись «Оплатить» можно сменить на «Пожертвовать», что лучше подходит для благотворительных проектов.

Передача суммы через URL ссылки

Если в конце URL-адреса ссылки дописать <span class="u-richtext-element">?amount=СУММА</span>, то кнопки и поля ввода исчезнут и сумма станет фиксированной.

Например, https://allpay.to/~pay/dynamic?amount=300

Это поможет не создавать много платежных ссылок для одной услуги, цена которой часто меняется. Достаточно создать одну ссылку и при отправке клиенту подставить в ее адрес нужную сумму.

В статье «Передача параметров через URL платежной ссылки» вы можете узнать о других возможностях передачи параметров через URL.

Читать далее
Платежные ссылки

Webhooks

Webhook — это автоматическое уведомление о событии, отправляемое системой Allpay на внешний URL.

Когда происходит успешный платёж, Allpay направляет POST-запрос на указанный адрес. Запрос содержит всю информацию о платеже, включая имя покупателя, предмет платежа и сумму.

Разработчики и интеграторы используют webhook для:

  • автоматического запуска процессов (например, активации заказа или отправки письма покупателю),
  • синхронизации данных между разными системами,
  • исключения необходимости ручной проверки статуса платежа.

Типы событий

В настоящее время в Allpay доступен webhook только для одного события — успешный платёж.

Для подписок webhook автоматически отправляется каждый месяц после успешного регулярного списания.

Где настроить webhook

Webhook настраивается отдельно для каждой платёжной ссылки или API-интеграции:

  1. Платёжная ссылка — в её настройках. В этом случае webhook будет отправляться при каждом платеже по этой ссылке.
  2. API-интеграция — в настройках конкретной интеграции в разделе <span class="u-richtext-element">Интеграции по API</span>. Это позволит получать webhook по всем платежам, прошедшим через данную интеграцию. Например, с вашим сайтом на Tilda, WordPress или другой платформой.

В Allpay нет централизованной настройки webhook для всех платежей — это сделано для гибкого управления уведомлениями по различным каналам.

Содержимое webhook-запроса

Allpay отправляет POST-запрос на указанный URL. Тело запроса — это JSON-объект с параметрами, относящимися к событию.

Примера запроса

POST /c96zv6ri852dvppncccdg6fxkjnpwojg HTTP/2
Host: hook.eu2.make.com
accept: */*
content-type:application/json
content-length: 453

{
    "name": "Consultation",
    "items": [
        {
            "name": "Consultation",
            "price": 150,
            "qty": 2,
            "vat": "1"
        },
        {
            "name": "Clock",
            "price": 50,
            "qty": 1,
            "vat": "1"
        }
    ],
    "amount": "350",
    "status": 1,
    "client_name": "Tanur Mikrogalov",
    "client_email": "test@email.com",
    "client_tehudat": "123456789",
    "client_phone": "+972 58 569 8877",
    "foreign_card": "0",
    "card_mask": "455743******3431",
    "card_brand": "visa",
    "receipt": "",
    "inst": 1,
    "sign": "83f6fab69f7b237ee2db5d9993b84b5fe89ef722af6206a0ffe64480501f3784"
}

Каждый платёж, по которому отправлен webhook, получает соответствующую метку на главном экране платежей. Нажав на неё, можно просмотреть содержимое запроса.

Параметр add_field

Если в URL платёжной ссылки добавить <span class="u-richtext-element">?add_field=any-string</span>, этот параметр будет включён в тело запроса Webhook. Подробнее.

Безопасность webhook

Можно использовать два способа проверки достоверности webhook-запросов:

  1. Проверка с помощью webhook secret key.
  2. Проверка IP-адреса отправителя.

Проверка с помощью Webhook secret key

Для этого используется HMAC-подпись, основанная на алгоритме SHA256.

Алгоритм генерации подписи:

  1. Удалите параметр <span class="u-richtext-element">sign</span> из запроса.
  2. Исключите параметры с пустыми значениями.
  3. Отсортируйте оставшиеся ключи по алфавиту.
  4. Из полученного списка возьмите значения параметров и объедините их в строку через символ «двоеточие» (:).
  5. Добавьте в конец строки через «двоеточие» ваш Webhook secret key.
  6. Примените к полученной строке алгоритм SHA256.
  7. Сравните результат с параметром <span class="u-richtext-element">sign</span>, переданным в запросе.

Платформы Make и Zapier позволяют реализовать такую проверку с помощью встроенных инструментов (например, скрипта в Code by Zapier).

Пример JavaScript для Zapier

const webhookKey = "YOUR WEBHOOK SECRET KEY";

// Parse the input params from JSON string to an object
const params = JSON.parse(inputData.params || '{}');

// Store the original signature from the request
const requestSignature = params.sign || null;

// Remove the 'sign' parameter before calculating the signature
delete params.sign;

function getApiSignature(params, webhookKey) {
    // Filter out empty values and sort keys alphabetically
    const sortedKeys = Object.keys(params)
        .filter((key) => {
            const value = params[key];
            return value !== null && value !== undefined && String(value).trim() !== '';
        })
        .sort();

    // Collect the values in sorted key order, process nested arrays (like "items")
    const chunks = [];
    sortedKeys.forEach(key => {
        const value = params[key];
        if (Array.isArray(value)) {
            value.forEach(item => {
                if (typeof item === 'object' && item !== null) {
                    Object.keys(item).sort().forEach(subKey => {
                        const val = item[subKey];
                        if (val !== null && val !== undefined && String(val).trim() !== '') {
                            chunks.push(String(val).trim());
                        }
                    });
                }
            });
        } else {
            chunks.push(String(value).trim());
        }
    });

    // Build the string to hash
    const baseString = chunks.join(':') + ':' + webhookKey;

    // Generate SHA256 hash
    const crypto = require('crypto');
    const hash = crypto.createHash('sha256').update(baseString).digest('hex');

    return { baseString, verifiedSignature: hash };
}

// Generate the signature
const result = getApiSignature(params, webhookKey);

// Return the original and calculated values
output = {
    requestSignature: requestSignature,
    baseString: result.baseString,
    verifiedSignature: result.verifiedSignature
};

Пример проверки подписи в Zapier

Проверка по IP-адресу

Более простой, но менее надежный способ — это проверять, что запрос поступил с IP-адреса сервера Allpay. IP-адрес можно запросить, обратившись в поддержку.

Повторные попытки доставки webhook

Ваш сервер должен вернуть HTTP-ответ с кодом <span class="u-richtext-element">200 OK</span>, чтобы подтвердить успешное получение webhook-запроса. Если возвращается любой другой статус, либо запрос не был доставлен из-за таймаута или сетевой ошибки, Allpay автоматически выполнит повторные попытки доставки.

Всего выполняется до 10 попыток доставки. Первая повторная попытка осуществляется через 1 минуту после неудачной отправки. Далее интервалы между попытками постепенно увеличиваются, при этом последняя попытка выполняется в течение 24 часов с момента исходного запроса.

Если все попытки доставки завершились неудачно, webhook считается недоставленным, и дальнейшие попытки выполняться не будут.

Читать далее
API
Интеграции

Hosted Fields: как встроить форму оплаты на сайт

Hosted Fields позволяют встроить поля ввода карты на ваш сайт или в приложение, полностью адаптируя их под дизайн системы. Они создают ощущение целостности интерфейса и исключают необходимость перенаправления клиента на внешнюю страницу оплаты. Это повышает удобство использования и конверсию.

Поля ввода для номера карты, даты истечения и CVC представляют собой iFrame. Мы даем возможность полностью кастомизировать их CSS и встроить на ваш сайт в виде единого фрейма.

Видеоинструкция

Настройка

<span class="u-richtext-counter">1</span> В разделе <span class="u-richtext-element">Настройки</span> → <span class="u-richtext-element">Интеграции</span> → <span class="u-richtext-element">Мои сайты</span> включите опцию Hosted Fields для нужной интеграции.

<span class="u-richtext-counter">2</span> Нажмите на кнопку <span class="u-richtext-element">Настройка Hosted Fields</span> укажите домен на котором будет производиться оплата. Домены и поддомены вводятся через перенос строки без "https://" и в следущем формате: <span class="u-richtext-element">mysite.com</span>. При необходимости адаптируйте стили CSS для полей ввода.

<span class="u-richtext-counter">3</span> На странице оплаты вашего сайта разместите iFrame, задайте ему произвольный параметр <span class="u-richtext-element">id</span>, а в параметре <span class="u-richtext-element">src</span> укажите ссылку на оплату (payment_url), которую возвращает Allpay в ответ на запрос на создание платежа (см. раздел Payment request в документации API). Ссылки на оплату также можно генерировать через Allpay API Tester.

<span class="u-richtext-counter">4</span> На странице оплаты разместите следующий скрипт:

<script src="https://allpay.to/js/allpay-hf.js"></script>
    <script>
    let Allpay = new AllpayPayment(
        {
            iframeId: 'iframe_id',
            onSuccess: function() { alert('Payment success'); },
            onError: function(error_n, error_msg) { alert('Payment error: ' + error_n + ' (' + error_msg + ')'); }
        }
    );
    </script>

В скрипте замените следующие параметры на ваши:

  • <span class="u-richtext-element">iframeId</span> — значение id вашего iFrame.
  • <span class="u-richtext-element">onSuccess</span> — обработчик успешного завершения платежа (что должно произойти после успешной оплаты).
  • <span class="u-richtext-element">onError</span> — обработчик ошибки платежа. Используя шаблон в скрипте, вы можете выводить текст ошибки оплаты.

<span class="u-richtext-counter">5</span> Для запуска процесса выполните функцию <span class="u-richtext-element">Allpay.pay()</span>. Например, назначив ее для кнопки «Pay»:

<button onclick="Allpay.pay();">Pay</button>

Рассрочка

Если при создании платежа вы включили для клиента опцию рассрочки, передав значение в параметре <span class="u-richtext-element">inst</span>, тогда во фрейме автоматически появится поле для выбора количества платежей.

Кнопки быстрой оплаты

Кнопки Apple Pay и Bit не будут отображаться в предпросмотре и во фрейме, если они не активированы в разделе <span class="u-richtext-element">Настройки</span> → <span class="u-richtext-element">Модули</span>.

Также кнопки не отображаются в тестовом режиме и в рабочем режиме для оплат с опциями рассрочки и подписки.

Кнопка Apple Pay

В данный момент кнопка Apple Pay не работает внутри Hosted Fields. Мы работаем над решением проблемы.

Чтобы кнопка Apple Pay работала корректно, задайте атрибут <span class="u-richtext-element">allow="payment *"</span> в теге <span class="u-richtext-element">iframe</span>. Пример:

<iframe id="myPaymentIframe" allow="payment *" src="..." >

Читать далее
API

Поле теудат зеута на странице оплаты

Граждане Израиля должны указывать номер теудат зеута, который включается в квитанцию об оплате.

Поскольку платежи могут поступать не только из Израиля, но и из других стран, а также от туристов или резидентов Израиля, не имеющих теудат зеута, на странице оплаты предусмотрен чекбокс «Я не гражданин Израиля», который скрывает поле ввода теудат зеута.

Если клиент открывает страницу оплаты за пределами Израиля, этот чекбокс активируется по умолчанию.

Управление полем теудат зеута для платежей по платежным ссылкам

Поле ввода теудат зеута, включая чекбокс «Я не гражданин Израиля», можно полностью скрыть со страницы оплаты. Это полезно для тех, кто принимает платежи приемущественно из-за рубежа.

В настройках платежной ссылки можно активировать переключатель <span class="u-richtext-element">Скрывать поле теудат зеута</span> и выбрать одну из двух опций:

  • Для клиентов за пределами Израиля
  • Для всех клиентов

Геолокация определяется по IP-адресу.

Прежде чем активировать эту настройку проконсультируйтесь с бухгалтером.

Сокрытие поля для патежей по API

Для передачи номера теудат зеута или сокрытия этого поля со страницы оплаты используйте параметр <span class="u-richtext-element">client_tehudat</span> согласно документации API.

Читать далее
Платежные ссылки
Документы
API

Где скачать квитанцию за комиссию платежной системы

В Allpay у вас два вида расходов:

1) комиссия с платежей; 

2) абонентская плата.

Комиссия

Комиссия вычитается из выплаты. Каждого 11 числа на вкладке «Выплаты» появляется ссылка на квитанцию за комиссию по всем платежам за предыдущий месяц.

Абонентская плата

Абонентская плата списывается раз в месяц с прикрепленной карты. После каждого списания квитанция появляется в разделе <span class="u-richtext-element">Настройки</span> ➙ <span class="u-richtext-element">Тариф</span> ➙ <span class="u-richtext-element">Биллинг</span>

Читать далее
Документы

Прием платежей в валютах доллара и евро

Кроме шекеля Allpay поддерживает платежи в долларах и евро.

В разделе <span class="u-richtext-element">Настройки</span> ➙ <span class="u-richtext-element">Разрешения</span> отображаются доступные вам валюты платежей.

После регистрации разрешен прием платежей в шекелях. Для получения оплат в долларах (USD) или евро (EUR) необходимо запросить отдельное разрешение.

Прежде чем просить разрешение на платежи в валюте

Часто бывает, что бизнесу достаточно получать платежи в шекелях, но так как клиенты бизнеса находятся в Европе, США или иных странах, им удобнее воспринимать цены в долларах или евро.

Для этого мы предусмотрели специальную функцию — изменение валюты отображения цены. Т.е. клиент увидит сумму платежа, например, в евро, но фактическая оплата пройдет в шекелях по курсу банка клиента. Для этого не требуется получать разрешение на валютные платежи, эта функция доступна уже сейчас.

Подробнее об этой функции: Как отображать сумму платежа в USD или EUR.

Мы рекомендуем использовать это решение в большинстве случаев.

Получение разрешения на оплаты в валюте

Зайдите в <span class="u-richtext-element">Настройки</span> ➙ <span class="u-richtext-element">Модули</span> и активируйте модуль «USD & EUR».

Для активации потребуется приложить банковскую справку с реквизитами валютного счета. Справка должна быть:

  1. На английском языке;
  2. Содержать номер счета в формате IBAN;
  3. Содержать ваше имя (или название компании) и номер теудат зеута (или номер компании).

Примеры справок для банков: ДисконтЛеуми, Апоалим.

Справку можно скачать в личном кабинете банка или получить путем личного обращения в банк. Справки, не отвечающие указанным выше требованиям, не будут приняты.

Справка будет передана в соответствующую кредитную организацию (Isracard или CAL — в зависимости от способа подключения вашего бизнеса в системе Allpay) с просьбой об одобрении для вас разрешения на операции в валюте. Средний срок выдачи разрешения — 2-4 рабочих дня.

Allpay не может гарантировать выдачу разрешения на платежи в валюте, однако мы делаем все возможное, чтобы разрешения были получены всеми нашими клиентами.

Когда сайт бизнеса имеет английскую версию, и на нем представлены товары или услуги с четко обозначенными ценами в USD или EUR — это способствует выдаче разрешения.

Когда разрешение выдано, статус модуля изменится на «Активен», и вам будет направлено уведомление. Убедитесь, что уведомления активированы в разделе <span class="u-richtext-element">Настройки</span> ➙ <span class="u-richtext-element">Уведомления.</span>

Как принимать платежи в валюте

При создании платежной ссылки появится опция переключения валюты платежа.

Платежная ссылка в долларах

При создании платежей по API вы сможете передавать значения"USD" или "EUR" в параметре currency.

Комиссия и выплаты

Мы не взимаем дополнительной комиссии за платежи в валюте, то есть применяются стандартные тарифы.

Однако ваш банк может взимать комиссию за зачисление валютных выплат. Такие выплаты осуществляются через систему SWIFT и проходят через цепочку из трех банков: наш банк, филиал вашего банка за рубежом и ваш банк в Израиле. Общая сумма комиссий за одну выплату может достигать $40. Мы не можем влиять на эту комиссию, но вы можете попросить у своего банка более выгодные условия.

По этой причине выплаты производятся от 100 USD/EUR. Сумма ниже 100 USD/EUR будет перенесена на следующую выплату.

Квитанции

По закону, квитанции (кабалот и хэшбонит мас) должны быть в шекелях. Поэтому для валютных платежей стоимость услуги в квитанции указывается в валюте платежа, а размер НДС и общая сумма — в шекелях по текущему курсу. Мы получаем курсы валют с Google Finance.

Если вашему клиенту требуется квитанция с общей суммой в валюте платежа (а не в шекелях), ее можно скачать в виде копии в личном кабинете EasyCount или Morning.

Читать далее
Аккаунт
Платежные ссылки
Документы

Язык страницы оплаты

Страница оплаты поддерживает следующие языкы: арабский, английский, иврит, испанский, итальянский, немецкий, русский, французский.

Язык определяется автоматически на основе языка браузера, и каждый клиент видит страницу оплаты на своём языке. Если язык браузера не поддерживается или не может быть определен, по умолчанию будет установлен английский.

Для ручного управления языком страницы оплаты в секции <span class="u-richtext-element">Дополнительно</span> настроек платежной ссылки смените опцию <span class="u-richtext-element">Auto-detect (язык браузера)</span> на нужный вам язык.

Тогда клиент увидит страницу оплаты на этом языке, независимо от настроек его браузера. При этом переключатель смены языка по-прежнему будет ему доступен на странице оплаты.

Перевод дополнительных полей

Если вы добавляете на страницу оплаты дополнительные поля, их названия можно перевести на все четыре языка. Это позволит сделать страницу оплаты удобной для мультиязычной аудитории. Подробнее читайте в статье о дополнительных полях.

Управление языком по API

Для платежей, которые инициируются с вашего сайта (то есть не через платежные ссылки, создаваемые в Allpay), управление языком страницы оплаты осуществляется через API согласно документации.

По умолчанию применяется автоматическое определение языка на основе настроек браузера.

Читать далее
Платежные ссылки

Bit

Чтобы кнопка оплаты через Bit появилась на ваших платежных страницах, активируйте модуль Bit в разделе <span class="u-richtext-element">Настройки</span> ➙ <span class="u-richtext-element">Модули</span> ➙ <span class="u-richtext-element">Bit</span>.

Оплата через Bit возможна только с мобильного устройства, на котором установлено приложение Bit. При оплате с компьютера система отобразит QR-код для сканирования и перехода на оплату с мобильного устройства.

Платежи, полученные через Bit, зачисляются на банковский счет бизнеса вместе с выплатой точно так же, как и другие платежи.

Кнопка Bit для зарубежных клиентов

Так как Bit — израильская система, мы даем возможность скрывать кнопку Bit для клиентов, которые платят из-за границы. Геолокацию клиента система определяет по его IP.

Соответствующий переключатель можно найти в настройках модуля.

Ограничения

До 5000 ILS. Платеж через Bit не может превышать 5000 шекелей. Сумма всех платежей в месяц от всех клиентов не может превышать 20 000 шекелей.

ILS. Bit поддерживает только оплату в шекелях.

Нет рассрочки. Через Bit можно оплатить только одним платежом.

Нет подписок. Bit не позволяет сохранять карту клиента для последующих списаний, поэтому мы скрываем кнопку Бита для платежных ссылок типа «Подписка».

Не платит с баланса. Списание происходит с карты, прикрепленной к Bit. Если на карте нет баланса или исчерпан кредитный лимит — платеж не пройдет.

9 минут. С момента нажатия на кнопку Bit у клиента есть 9 минут, чтобы совершить платеж.

Diners. Карты брендов Diners и Discover не поддерживаются Bit.

Имя и е-мейл

Bit не передает нам имя и e-mail плательщика, поэтому мы запрашиваем их самостоятельно при совершении платежа.

Поле e-mail является опциональным, и если не заполнено клиентом, подтверждение платежа не будет отправлено. Поле можно сделать обязательным в настройках модуля Bit.

Интеграции

Для платежных интеграций из нашего каталога кнопка Bit будет показана на странице оплаты, если модуль Bit активирован, и скрыта, если нет.

API

Разработчики, осуществляющие интеграцию по документации, могут управлять отображением кнопки Bit на странице оплаты, задействуя параметр <span class="u-richtext-element">show_bit</span>. Однако сперва модуль Bit должен быть активирован через личный кабинет Allpay.

Bit не поддерживает тестовые платежи, поэтому мы деактивируем кнопку Bit, если для интеграции включен тестовый режим.

Читать далее
Платежные ссылки
Методы оплаты
Travolta confused - no search results
Куда все подевались?
Подпишитесь на важные обновления (без рекламы)
Подписаться
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Ответы на вопросы

Найдено 100 из 200
Text Link

Есть ли кнопки быстрой оплаты Apple Pay, Google Pay, Bit?

Bit и Apple Pay есть. Google Pay появится в будущем.

Text Link

Как узнать все расходы, которые у меня будут?

Полная информация размещена на странице Тарифа.

Text Link

У вас есть вебхуки (webhooks)?

Да, Allpay может посылать webhook об успешном платеже. Читать подробнее.

Text Link

Что делать, если нужной интеграции нет в списке?

Обычно платежная интеграция разрабатывается на стороне платформы. Напишите в поддержку платформы и запросите внедрение интеграции с Allpay, а мы окажем техническое содействие. Если платформа позволяет самостоятельную разработку интеграции, свяжитесь с нами.

Text Link

За интеграции взимается дополнительная плата?

Нет. Любое число интеграций входит в стоимость тарифа.

Text Link

Поддерживает ли ваш API Hosted Fields?

Да. Поля ввода карты можно встроить в ваш сайт или приложение, полностью адаптировав их дизайн. Подробнее о Hosted Fields.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Travolta confused - no search results
No results found.

Начните принимать платежи

Подключите канал продаж для вашего бизнеса уже сегодня.
Бесплатное подключение
7-дневный пробный период
Отмена в любое время
Подключить

Карты основных брендов

Прием платежей картами Visa, MasterCard, American Express, Diners, Discover, JCB и Isracard.

Еженедельные выплаты

Возможность получать выплаты на банковский счет раз в неделю вместо раза в месяц.

Кнопки Apple Pay и Bit

Кнопки Apple Pay и Bit на платежной странице для быстрой оплаты без дополнительной комиссии.

Валюты

Платежи в шекелях, долларах и евро без конвертации и в любой другой валюте с зачислением в шекелях.