Bilify
API для разработчиков

Интегрируйте Bilify за один вечер

REST API, вебхуки и SDK на трёх языках. Выставляйте счета, запускать напоминания и считайте платежи прямо из вашего стека — без ручного ввода и дублирования.

Стабильная версия v2 · 120 запросов в минуту · поддержка 24/7
Фрагмент кода: создание счёта через API Bilify
Последний запрос
201 Created
Webhook: payment.received

API подключают команды, которым важна автоматизация

Кредо Пиксель Логика Атлас Форма Баланс
Обзор API

Один источник правды для ваших денег

Bilify API — это REST-интерфейс поверх всего, что происходит в кабинете: счета, клиенты, напоминания, платежи и отчёты. Вы управляете всем программно, а интерфейс остаётся для проверки.

Базовый адрес — https://api.bilify.ru/v2. Все запросы и ответы в JSON, кодировка UTF-8. Методы предсказуемы: GET для чтения, POST для создания, PATCH для обновления, DELETE для отмены. Каждый ресурс имеет стабильный идентификатор вида inv_9f3a21, который можно использовать в любых последующих запросах.

Ключевые ресурсы: invoices (счета), customers (клиенты), reminders (напоминания), payments (оплаты) и reports (отчёты). Для событий в реальном времени доступны вебхуки, которые отправляют подписанный JSON на ваш URL — так вы узнаёте об оплате в моменте, не опрашивая API.

Для быстрого старта есть SDK на Python, Node.js и Go. Они обёртывают аутентификацию, пагинацию и повторные попытки при сбоях, поэтому можно начать с пары строк кода.

Эндпоинты и методы

Что можно делать через API

Группы ресурсов с основными действиями. Полный справочник со всеми параметрами и кодами ошибок — в документации.

Счета — /invoices

POST создать, GET список с пагинацией, GET /{id} детали, PATCH изменить, DELETE отменить. В теле запроса: клиент, строки, сумма, срок оплаты и номер счёта.

Напоминания — /reminders

POST поставить напоминание на счёт, GET очередь, PATCH сменить тон или дату. Система сама выбирает время отправки и фиксирует каждое письмо.

Платежи — /payments

GET история оплат по счёту или клиенту, POST привязать внешний платёж. Статусы: pending, paid, partial, overdue — с точной суммой и датой.

120 /мин
лимит запросов на ключ в тарифе «Студия»
<180 мс
медианное время ответа API
99,95%
доступность API за последние 90 дней
3
готовых SDK: Python, Node.js и Go
Примеры кода

От счёта до оплаты — за несколько строк

Несколько типовых сценариев, которые покрывают 90% интеграций. Копируйте и подставляйте свои данные.

Создать счёт. Отправляете POST /invoices с идентификатором клиента, строками и суммой. В ответе — готовый счёт с идентификатором и ссылкой для оплаты:

POST /v2/invoices
{
  "customer_id": "cus_4b8d2e",
  "lines": [{"description": "Разработка лендинга", "amount": 120000}],
  "due_date": "2024-03-15",
  "number": "INV-2024-0117"
}
→ 201 · "id": "inv_9f3a21"

Поставить напоминание. Указываете счёт и тон — Bilify подберёт дату и сформулирует письмо мягко:

POST /v2/reminders
{ "invoice_id": "inv_9f3a21", "tone": "soft", "schedule": "auto" }
→ 202 · "send_at": "2024-03-14T09:00:00Z"

Получить событие об оплате. Подписываете вебхук на payment.received и в обработчике просто обновляете свой заказ — без опроса и таймеров.

Аутентификация

Один ключ, чёткие роли

API использует Bearer-токены. Ключ создаётся в настройках кабинета и имеет настраиваемые права.

Bearer-токены

Передавайте ключ в заголовке Authorization: Bearer blf_live_…. Есть отдельные ключи для разработки (blf_test_) и продакшена, чтобы не путать данные.

Роли и права

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

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

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

Лимиты и квоты

Сколько можно и что будет при превышении

Лимиты зависят от тарифа и помогают держать API стабильным. Всё прозрачно и предсказуемо.

В тарифе «Студия» — 120 запросов в минуту и до 50 000 операций в месяц. В «Бизнес» — 300 запросов в минуту и 250 000 операций, плюс приоритетная очередь вебхуков. При превышении лимита API возвращает код 429 с заголовком Retry-After, указывающим, через сколько секунд повторить. Ответы на ошибки всегда в едином формате: error.code, error.message и request_id для обращения в поддержку.

Вебхуки отправляются с автоматическими повторами: если ваш сервер не ответил за 10 секунд, событие придёт повторно до 8 раз в течение 24 часов. Дубликаты можно отфильтровать по уникальному event_id. Для больших объёмов есть отдельный тариф «Инфраструктура» с выделенным лимитом и SLA — напишите нам, подберём параметры под вашу нагрузку.

Начните интеграцию

Получите тестовый ключ за минуту.

Создайте ключ blf_test_, выставьте первый счёт и подпишитесь на вебхук. Мы пришлём готовый пример под ваш стек.

Ключ и пример запроса придут на почту в течение пары минут.

Вопросы

Про API

Не нашли ответ — напишите, отвечаем в течение дня, без ботов и скриптов.

Да. Ключи blf_test_ работают в отдельной среде с тестовыми данными — реальные счета и клиенты не затрагиваются. Переключиться на продакشن можно одним изменением префикса ключа.

Каждое событие подписывается секретом вашего вебхука в заголовке X-Bilify-Signature. SDK показывают готовую функцию проверки, чтобы вы отбрасывали поддельные запросы.

Да. Есть экспорт в CSV и JSON по датам, а также открытый API для синхронизации с вашей ERP или CRM. Для больших выгрузок предусмотрен асинхронный режим с готовым файлом.

API вернёт 429 с заголовком Retry-After. SDK автоматически повторяют запрос с паузой. Если лимит регулярно мал, напишите нам — поднимем его или перенесём на тариф «Бизнес».