Як підключити FONDY до більш ніж 2000 сервісів. #3 Виставляємо інвойси клієнтам через Google Sheets та Zapier
В минулих публікаціях ми дізнались як зберігати платежі в документ Google Sheets і як створити транзакційні email`и з нестандартним дизайном.
В цьому матеріалі розберемось, як відправляти інвойси вашим клієнтам, додавши новий рядок в документ 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.
Залишити відповідь