Банковский эквайринг, кошельки или шлюз: как принимать платежи онлайн в Армении
Три практических способа получать оплату онлайн в Армении: карточный эквайринг от банка-участника ARCA, договоры с кошельками Idram и Telcell, или один шлюз, который объединяет их все в единой странице оплаты. Вот что требует от вас каждый вариант.
Прежде чем написать хоть одну строчку кода для оплаты, один вопрос определяет большую часть предстоящей работы: как деньги от вашего покупателя попадают на ваш банковский счет? В Армении есть три практических ответа, и они не исключают друг друга. Можно подписать договор карточного эквайринга с банком, можно подписать договор с кошельками, а можно объединить все это за одной страницей оплаты с помощью шлюза. В этой статье разбирается, что требует от вас каждый из этих путей, в том порядке, в котором вы с ними столкнетесь.
Путь 1: карточный эквайринг через банк-участник ARCA
Армянские дебетовые и кредитные карты работают в сети ARCA, а карты Visa и Mastercard обрабатываются через ARCA и ее банки-участники, которые проводят эквайринг. Чтобы принимать их онлайн, вы подписываете договор интернет-эквайринга с банком. Каждый банк-участник - это отдельный процессор со своими реквизитами: Ameriabank, Inecobank, Evocabank, Converse Bank, AraratBank, ACBA, AmioBank, IDBank, Ardshinbank и другие.
То, что выдает вам банк, невелико: имя пользователя API и пароль API для платежного шлюза. Шлюз Ameriabank также выдает вместе с ними Client ID. Это весь набор реквизитов для карточных платежей, и именно поэтому банковский эквайринг на первый взгляд кажется обманчиво простым.
Прежде чем подписывать договор, стоит знать две детали:
- Некоторые банки отвечают только с зарегистрированных адресов. По меньшей мере один армянский эквайер, Inecobank, принимает запросы на оплату только с IP-адресов, которые он занес в белый список для вашего мерчант-счета. Тот, кто управляет сервером, взаимодействующим со шлюзом, должен передать этот адрес контактному лицу в банке, и пока адрес не зарегистрирован, каждый платеж через этого провайдера будет завершаться ошибкой.
- Комиссия за эквайринг - это вопрос между вами и банком. Шлюз не меняет вашу ставку по обработке карт. Расчеты тоже остаются между вами и банком: ваш эквайер платит вам напрямую.
Карточный эквайринг охватывает любого покупателя с картой, и именно этот путь приводит в игру 3-D Secure, о котором стоит поговорить отдельно.
Путь 2: договоры с кошельками Idram и Telcell
Кошельки работают иначе. Покупатель вообще не вводит номер карты: его отправляют в кошелек, он подтверждает платеж там и возвращается на ваш сайт. Для магазина, продающего армянским потребителям, кошельки - не нишевое дополнение, а способ, которым уже происходит значительная доля повседневных платежей.
С каждым кошельком вы подписываете договор отдельно, и каждый выдает свою пару реквизитов:
- Idram выдает EDP Account ID (это поле часто обозначено как
EDP_REC_ACCOUNT) и секретный ключ. Idram также требует зарегистрировать для вашего мерчант-счета три URL: Result URL, Success URL и Fail URL. Result URL - самый важный. Без него у Idram нет способа подтвердить ваши платежи. - Telcell выдает Shop ID и Shop Key.
Две особенности кошельков определяют то, как вы будете строить интеграцию. Ни у Idram, ни у Telcell нет публичной тестовой среды, поэтому невозможно потренироваться на песочнице, которую предоставляет сам кошелек. И ни один из них не предоставляет API статуса, который можно было бы опрашивать: подтверждение, которое присылает кошелек, и есть то, что фиксирует платеж как состоявшийся. Второго источника истины, на который можно опереться позже, не существует, поэтому надежная, всегда доступная конечная точка для обратных вызовов - не предмет для компромисса.
Путь 3: один шлюз перед всеми
Третий путь - сохранить договоры из путей 1 и 2, но перестать интегрировать их по одному. Шлюз встает между вашим магазином и каждым процессором, так что вы создаете одну страницу оплаты и включаете и выключаете способы оплаты из панели управления.
Именно это делает Paynet. Вы создаете один платеж одним запросом, покупатель выбирает способ оплаты на размещенной странице оплаты из всего, что вы включили для этого домена, и вы получаете один подписанный webhook и одну панель управления для всего этого:
POST /api/v1/payments
{ "amount": 15000, "order_id": "ORD-1", "return_url": "https://shop.am/thanks" }
Перенаправьте покупателя на полученный checkout_url. Суммы указываются в целых армянских драмах, валюта - AMD. Если вы предпочитаете не отправлять покупателя на размещенную страницу, JavaScript SDK открывает ту же страницу оплаты встроенно или в виде модального окна, а платежные ссылки с QR-кодом позволяют принимать деньги вообще без сайта.
Важный момент для владельца магазина: шлюз такого рода не встает между вами и вашими деньгами. Вы сохраняете собственные договоры с каждым банком и кошельком, вставляете эти реквизиты в свой аккаунт Paynet, а банк рассчитывается с вами так же, как и всегда. Paynet никогда не держит средства у себя.
Что общего для каждого пути
Часть работы не исчезает, какой бы путь вы ни выбрали, так что заложите ее в план один раз:
- Верификация бизнеса. Реальные платежи начинаются после верификации вашего бизнеса. До этого момента все работает в тестовом режиме, бесплатно и без ограничений.
- Домен, право на который вы можете подтвердить. Покупатели могут платить только на верифицированном домене. Верификация занимает добавление DNS TXT-записи, файла в корне сайта или автоматическую проверку, которую выполняет плагин магазина при нажатии Connect. Обратите внимание, что
localhostверифицировать нельзя, поэтому верифицируйте адрес вашей тестовой среды заранее, если собираетесь тестировать с него. - Правильное подтверждение платежей. Никогда не отмечайте заказ оплаченным только потому, что покупатель вернулся на страницу благодарности. Относитесь к webhook как к напоминанию, проверяйте его подпись HMAC-SHA256 по необработанному телу запроса, исключайте дубли по
delivery_id, а затем считывайте реальное состояние черезGET /api/v1/orders/{order_id}/payment. - Запоздалые подтверждения. Платеж, который выглядел неудачным или просроченным, все равно может быть подтвержден позже. Действуйте на основании последнего прочитанного статуса, а не первого увиденного webhook.
- Фискальные чеки. Что подводит нас к части, которую большинство оставляет напоследок.
Часть, которую легко забыть: e-HDM
Продажи в Армении требуют электронного фискального чека от e-HDM, электронной кассы, зарегистрированной в налоговой службе (КГД, Комитет государственных доходов). Это отдельная регистрация со своим документооборотом: вы подаете форму 101, "Заявление о регистрации ККМ" (код u6), в системе электронной подачи КГД, прикладывая запрос на подпись сертификата, а после одобрения загружаете выданный вам сертификат.
Paynet генерирует для вас пару ключей и CSR, хранит закрытый ключ в зашифрованном виде и автоматически выпускает чеки для успешных платежей, как только e-HDM активирован. Вы также можете распечатывать чеки вручную из панели управления для продаж, совершенных где-то еще. Если вы планируете продавать онлайн в Армении, решите заранее, кто будет этим заниматься, поскольку именно эта часть превращает работающую страницу оплаты в соответствующую требованиям.
Сколько это стоит
Сравнивайте пути по общей стоимости, а не по одной статье расходов. Ваш банк взимает свою комиссию за эквайринг, а кошельки - свою, согласно договорам, которые вы с ними подписываете. Собственные тарифы Paynet накладываются сверху и намеренно просты: 20 драм за завершенный реальный платеж и 3 драма за самостоятельный фискальный чек, в целых драмах, без ежемесячной платы и без процентов.
Несколько следствий этой модели стоит знать, пока вы еще выбираете:
- Платежи до 500 драм бесплатны, как и неудачные платежи, все тестовые платежи и возвраты.
- Чек, выпущенный для платежа, прошедшего через Paynet, бесплатен. Вы платите 3 драма только за самостоятельные чеки.
- Единицы покупаются заранее и никогда не сгорают. Каждый новый аккаунт начинает со 200 транзакций и 500 чеков.
- Все платят одинаково за единицу при любом объеме, а об изменении цены сообщается за 30 дней и оно никогда не затрагивает уже купленные единицы.
Полная разбивка - на странице тарифов.
Короткий чек-лист перед тем, как что-либо подписывать
- Какие способы оплаты действительно нужны вашим покупателям: карты, Idram, Telcell или все три?
- Кто в вашей компании отвечает за договор с банком и может добиться регистрации IP в белом списке?
- Кто отвечает за регистрацию e-HDM и знает ваш налоговый режим?
- Есть ли у вашей платформы готовый плагин, или интеграцию будет создавать разработчик?
- Как вы будете тестировать до того, как начнут двигаться реальные деньги?
Если ответ на вопрос 4 - WooCommerce, OpenCart, PrestaShop, Tilda или Ecwid, готовый путь есть на странице плагинов. Если интеграцию строит разработчик, в руководстве для разработчиков и в справочнике по API описан весь процесс, включая sandbox с тестовыми картами для каждого результата.
Что делать дальше
- Определите, какие способы вам нужны, затем запросите у каждого банка или кошелька договор на обслуживание. Эти реквизиты запросим не мы, а ваша собственная панель управления.
- Откройте бесплатный аккаунт Paynet и верифицируйте домен, с которого вы продаете. Тестовый режим работает сразу, с неограниченным количеством бесплатных тестовых платежей.
- Добавьте провайдера Sandbox и проведите тестовый платеж от начала до конца еще до того, как будут готовы документы для банка.
- Начните регистрацию e-HDM параллельно. Это самый долгий процесс, поскольку заявление должен одобрить сотрудник налоговой.
- Если что-то не получается, напишите на [email protected].
Idram, Telcell, ARCA и названия банков выше являются товарными знаками своих владельцев. Paynet - независимый платежный шлюз, которым управляет ООО Digital Brains в Ереване.