Как подключить Fondy к более чем 2000 сервисам. #3 Выставляем инвойсы клиентам из Google Sheets через Zapier
В прошлых публикациях мы узнали, как сохранять платежи в документ Google Sheets и как сделать нестандартный дизайн транзакционных писем, которые получают клиенты.
В этой статье мы разберем, как отправлять инвойсы вашим клиентам, добавив новую строку в Google Sheets документ. В итоге у нас должна получиться такая последовательность:
Для начала создаем в Google Drive таблицу следующей структуры: http://bit.ly/32mjmVN
Данная структура является минимально необходимой, ее можно модифицировать под свои потребности, но обязательные поля должны сохраниться:
- amount — сумма без разделителя, чтобы выставить инвойс на 220.33 EUR, нужно в ячейке указать сумму 22033.
- currency — валюта, список поддерживаемых валют можно найти по ссылке: https://docs.fondy.eu/docs/page/27/
- email — email клиента, на который прийдет письмо с инвойсом
- description — описание инвойса, например “Оплата вебинара”
- invoice# — уникальный идентификатор инвойса, если по какой-то причине не удалось клиенту отправить инвойс, новая запись в Google Sheets должна быть уже с другим идентификатором
- checkout url — ссылка на оплату, которая будет сгенерирована через API FONDY после отработки Zap, и которая будет отправлена клиенту на почту. Также ее можно отправить клиенту через мессенджер, или удобным способом.
Далее переходим в Zapier и создаем первый шаг: When this happens …1. New Spreadsheet Row in Google Sheets.
Убеждаемся, что записи распарсились:
Далее нам необходимо будет отправить полученные данные на endpoint API FONDY (см. документацию п.3, а также ссылку). Для этого в Do this …2. указываем Custom Request:
- Method: POST
- URL: https://api.fondy.eu/api/checkout/token
- Data:
{
“request”: {
“server_callback_url”: “http://myshop/callback/",
“order_id”: “{{invoice#}}”,
“currency”: “{{currency}}”,
“merchant_id”: {1396424},
“order_desc”: “{{desription}}”,
“amount”: {{amount}},
“sender_email”: “{{email}}”
}
}
- Headers: content-type=application/json
где {1396424} — ваш идентификатор мерчанта, полученный при регистрации в FONDY Merchant Portal
Должна получиться такая конфигурация:
Тестируем отправку данных инвойса на API. В ответ должен прийти параметр token:
Если token не пришел, убедитесь, что:
- вы указали корректный merchant_id
- в invoice# указан уникальный идентификатор
- вы используете разрешенную для вашего мерчанта валюту (это можно уточнить в службе поддержки support@fondy.eu)
- вы указали в Header атрибут content-type
- server_callback_url является не обязательным, но он может пригодиться, для получения Webhook в дальнейшем по успешной оплате и настройке дополнительных действий (например, отправить email, если платеж прошел успешно). В этом параметре можно будет указать Webhook URL для Zapier
Если на этом этапе у вас все-таки возникли сложности, и token не возвращается, попробуйте, для отладки послать данные, которые распарсились из Gooogle Sheets при помощи curl:
curl -X POST \
https://api.fondy.eu/api/checkout/token \
-H ‘content-type: application/json’ \
-d ‘{
“request”: {
“server_callback_url”: “http://myshop/callback/",
“order_id”: “test_invoice_1233131”,
“currency”: “USD”,
“merchant_id”: “1396424”,
“order_desc”: “Invoice description”,
“amount”: “100”
}
}’
На следующем этапе нам нужно найти запись в исходном Google Sheets документе из шага 1, и проставить ей в поле checkout url ссылку на оплату, которая формируется как https://api.fondy.eu/api/checkout?token={token} где {token} — токен, полученный на предыдущем шаге:
Убеждаемся, что запись нашлась:
Далее переходим к шагу изменения поля checkout url: Do this …4. Update Spreadsheet Row in Google Sheets:
В поле Custom Value for Row ID указываем ID полученный в шаге 3. Lookup Spreadsheet Row in Google Sheets
В поле checkout url указываем https://api.fondy.eu/api/checkout?token={{response__token}}
Тестируем:
Убеждаемся, что запись обновилась в Google Sheets:
Теперь полученную ссылку можно отправить клиенту, или добавить шаг отправки email через Zapier:
Отправим письмо клиенту через SMTP by Zapier. Добавляем шаг: Do this …5. Send Email
Указываем SMTP настройки вашего почтового сервера. Это может быть gmail, yahoo, outlook либо ваш корпоративный SMTP:
Также указываем Subject, Body HTML, From Name. Sender Email возьмем из шага 1:
Не забываем в Body добавить checkout url:
Тестируем всю цепочку, до получения письма:
Таким образом вы можете формировать массовые рассылки инвойсов своим клиентам, даже не заходя в личный кабинет FONDY.
Добавить комментарий