Назад к блогу

Автоматизация выдачи gift card через n8n и FazerCards API

FazerCards
Автоматизация выдачи gift card через n8n и FazerCards API

Вручную обрабатывать заказы через оптовый API удобно при небольших объёмах — но когда реселлер принимает сотни заказов на gift card в день с нескольких площадок, именно рутина — скопировать реквизиты, вызвать API, вставить код в сообщение покупателю — превращается в главное узкое место. n8n, инструмент автоматизации с открытым кодом и визуальным редактором, устраняет это узкое место без написания собственного серверного кода и без найма бэкенд-разработчика. Достаточно однажды подключить REST API FazerCards к рабочему процессу n8n — и заказы будут проходить от витрины через проверку наличия и выдачу прямо до покупателя за секунды, без вашего участия. Если разворачивать что-то у себя не хочется, тот же конвейер собирается на управляемой платформе — об этом наш гайд по автоматизации в Make.com; здесь же разбираем open-source-путь.

Требования

  • Перед сборкой рабочего процесса убедитесь, что у вас есть:
  • Запущенный экземпляр n8n — на собственном сервере через Docker (бесплатно, полный контроль) или n8n Cloud
  • Аккаунт FazerCards на любом тарифном плане; для тестирования полного API без привязки карты воспользуйтесь 5-дневным Gold-триалом
  • API-ключ FazerCards из панели управления в разделе Settings → API Keys
  • Источник заказов с поддержкой вебхуков: Telegram-бот, страница оформления заказа, форма Tilda или любой инструмент управления заказами
  • Беглое знакомство с документацией по вебхукам FazerCards и примерами в cookbook

Шаг 1: Аутентификация через API FazerCards

API FazerCards использует bearer-токен в заголовке Authorization. В n8n:

  1. Откройте Settings → Credentials → New Credential и выберите Header Auth.
  2. В поле Name укажите Authorization, в поле Value — Bearer, а после пробела — ваш API-ключ.
  3. Сохраните учётные данные с именем «FazerCards API».

Все узлы HTTP Request в рабочем процессе будут использовать одни и те же учётные данные. Токен нужно настроить ровно один раз.

Шаг 2: Настройка триггера заказов

Рабочему процессу нужна точка входа. Добавьте узел Webhook первым на холсте:

  1. Установите HTTP-метод POST и скопируйте сгенерированный URL вебхука.
  2. Вставьте этот URL в настройки вебхуков вашей витрины — эндпоинт, на который витрина отправляет уведомление о новом заказе.
  3. Оформите тестовый заказ и убедитесь, что n8n отображает перехваченные данные в панели выполнений.

Тело запроса должно содержать как минимум: SKU товара, количество и идентификатор покупателя (email или внутренний ID заказа). n8n автоматически именует все поля входящего JSON и делает их доступными в каждом последующем узле.

Шаг 3: Проверка наличия перед оформлением

Проверка наличия до размещения заказа предотвращает неудачные транзакции и даёт вам корректный путь для обработки ошибок. Добавьте узел HTTP Request:

  1. Метод GET, URL — эндпоинт поиска товара FazerCards по входящему SKU (точный путь — в документации API).
  2. Укажите учётные данные FazerCards API из шага 1.
  3. Добавьте узел Set для извлечения stock_status, current_price и product_name из ответа.
  4. Подключите узел IF: если stock_status равно «available» — переходите к шагу заказа. Иначе — маршрутизируйте в ветку уведомления, которая сообщит покупателю о задержке и зафиксирует пропуск.

Эта защита особенно важна при высоком трафике, когда популярный номинал — например, Steam-карта на 50 $ или крупный пакет Robux — может раскупиться за то время, пока покупатель оформляет заказ.

Шаг 4: Оформление заказа

Добавьте ещё один узел HTTP Request сразу после проверки наличия:

  1. Метод POST, URL — эндпоинт заказов FazerCards (см. документацию API).
  2. Тип тела: JSON. Передайте SKU и количество из вебхука, а также поле reference — используйте внутренний ID заказа для сопоставления ответа с вашими данными.
  3. Учётные данные: FazerCards API.

Для большинства товаров из каталога FazerCards — gift card, игровые валюты, пополнения кошельков PlayStation, Nintendo, Google Play и десятков игровых тайтлов — ответ приходит за секунды и содержит код доставки внутри data.delivery. Узел Set извлекает код или ссылку для погашения в именованную переменную. Если вы обрабатываете пакетные заказы или высокую конкурентность, изучите примеры в cookbook — там разобраны паттерны работы с ограничениями запросов.

Шаг 5: Выдача покупателю и запись транзакции

Разделите поток от кода доставки на две параллельные ветки — выдача и запись работают одновременно:

  • Ветка доставки покупателю:
  • Telegram: добавьте узел Telegram и отправьте код в chat ID из исходного вебхука.
  • Email: добавьте узел SendGrid или SMTP и отправьте транзакционное письмо с кодом и инструкцией по погашению.
  • Ветка логирования:
  • Добавьте узел Postgres, MySQL или Airtable и запишите ID заказа, SKU, код доставки, уплаченную цену и метку времени UTC.

Параллельный запуск через fan-out обеспечивает быструю доставку покупателю независимо от задержки записи в базу данных. Пока бизнес только набирает обороты, добавьте личное уведомление в Telegram или Slack, чтобы видеть каждую успешную доставку в реальном времени.

Шаг 6: Обработка асинхронных callback для отложенной выдачи

Небольшая часть товаров обрабатывается асинхронно — FazerCards ставит заказ в очередь и отправляет вебхук-callback, как только код будет готов. В документации по вебхукам описана схема событий. Чтобы поддержать этот путь в n8n:

  1. Добавьте второй узел Webhook в отдельный рабочий процесс — это ваш получатель callback.
  2. Зарегистрируйте его URL в панели FazerCards в разделе Settings → Webhooks.
  3. В callback-рабочем процессе прочитайте поле reference из входящего события, найдите запись заказа и запустите ту же ветку доставки из шага 5.

Основной рабочий процесс немедленно возвращает 200 витрине после размещения заказа; код поступает к покупателю по приходу callback. О том, как устроена событийная модель и почему асинхронность важна при масштабировании, подробно рассказывает статья Wholesale API, Gift Cards и вебхуки: полное руководство.

Что вы получаете в итоге

  • Автономный рабочий процесс, который:
  • Принимает заказы из любого источника с поддержкой вебхуков — витрина, бот или форма
  • Проверяет наличие и актуальную цену через каталог FazerCards в реальном времени перед покупкой
  • Оформляет заказ и выдаёт код покупателю за секунды в удобном для него канале
  • Корректно переключается на асинхронный callback-путь при отложенной выдаче
  • Записывает каждую транзакцию для сверки, поддержки и анализа маржи

Рабочий процесс агностичен к продукту по своей природе. Дублируйте его, замените SKU на другую категорию — Xbox gift card, Valorant VP, кристаллы Genshin Impact, любой из 10 000+ товаров FazerCards — и вся остальная логика работает без изменений. В этом и заключается накопительное преимущество оптового API: одна интеграция, неограниченный рост каталога.

Начните с 5-дневного Gold-триала — полный доступ к API, без банковской карты, без KYC. Постройте и протестируйте этот рабочий процесс целиком до того, как переходить на платный план.

Часто задаваемые вопросы

Поддерживает ли n8n автоматические повторные попытки при сбоях API?

Да. Каждый узел HTTP Request в n8n имеет настройку Retry on Fail. Для узлов, вызывающих API FazerCards, задайте три повторные попытки с задержкой пять секунд. Это обрабатывает кратковременные сетевые сбои без ручного перезапуска.

Можно ли использовать n8n Cloud вместо самостоятельного хостинга?

Да. n8n Cloud — это управляемая, платная версия n8n; она подключается к API FazerCards точно так же, как Docker-инстанс на собственном сервере. Самостоятельный хостинг бесплатен и оставляет API-ключи и логи заказов полностью в вашей инфраструктуре — лучший выбор для реселлеров, работающих с чувствительными данными клиентов.

Как расширить процесс на несколько категорий товаров?

Добавьте узел Switch после триггера Webhook с маршрутизацией по категории товара или префиксу SKU в отдельные подпроцессы. Каждая ветка может иметь собственный шаблон уведомлений, логику проверки цены и формат доставки при общих учётных данных API FazerCards. По мере роста каталога вы просто добавляете ветки, не перестраивая основную логику выдачи.

Доступен ли API FazerCards на всех тарифных планах?

REST API и вебхуки доступны на всех платных планах начиная с Bronze за $9,99/месяц. Полное сравнение тарифов — на странице pricing. Gold-триал даёт полный доступ к API на пять дней без привязки карты и без KYC — достаточно времени, чтобы построить, протестировать и вывести рабочий процесс в эксплуатацию.