Обзор
API счетов Invovate позволяет разработчикам создавать профессиональные счета с помощью одного HTTP POST-запроса. Можно выбрать структурированный JSON-ответ со всеми расчетами или прямую загрузку PDF-файла. API поддерживает 11 языков, более 20 валют и 5 дизайнерских шаблонов — идеально для фрилансеров, SaaS-компаний и бухгалтерских приложений.
Бесплатный старт
40 запросов/час, без карты
JSON или PDF
Выберите формат вывода
Расчет НДС
По строке или глобально (20%/10%)
Многоязычный
ru, en, de, fr, es и другие
https://invovate.com/api
Быстрый старт
Создайте первый счет за три шага:
Зарегистрируйтесь бесплатно на invovate.com и подтвердите адрес электронной почты.
Перейдите в панель управления и нажмите «Создать API-ключ». Ключ начинается с
inv_.
Аутентификация
API поддерживает три метода аутентификации:
1. API-ключ (рекомендуется для серверной стороны)
2. Cookie сессии (для веб-приложений)
При авторизации через браузер cookie inv_session отправляется автоматически.
3. Анонимный (без аутентификации)
Запросы без аутентификации возможны, но ограничены выводом в формате JSON и лимитируются по IP-адресу. Подходит для тестирования API.
Лимиты и тарифы
| Тариф | Цена | В час | В неделю |
|---|---|---|---|
| Бесплатный | $0 | 40 | 400 |
| Starter | $9/мес | 200 | 4 000 |
| Pro | $29/мес | 1 000 | 40 000 |
| Enterprise | По запросу | Без лимита | Без лимита |
Лимиты возвращаются в заголовках ответа:
Создать счет
Создает счет и возвращает либо JSON со всеми расчетами, либо бинарный PDF-файл.
Формат запроса
Отправитель (from)
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
| from.name | string | Да | Название вашей компании |
| from.address | string | Нет | Адрес вашей компании |
| from.email | string | Нет | Ваш email |
| from.tax_id | string | Нет | ИНН / КПП |
Получатель (to)
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
| to.name | string | Да | Название клиента или компании |
| to.address | string | Нет | Адрес клиента |
| to.email | string | Нет | Email клиента |
Данные счета (invoice)
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
| invoice.number | string | Авто | Номер счета |
| invoice.date | string | Сегодня | Дата выставления (ГГГГ-ММ-ДД) |
| invoice.due_date | string | — | Срок оплаты (ГГГГ-ММ-ДД) |
| invoice.currency | string | USD | Код валюты (напр. USD, EUR) |
| invoice.language | string | en | Код языка (напр. ru) |
| invoice.terms | string | — | Условия оплаты |
| invoice.po_number | string | — | Номер заказа на поставку |
Позиции (items массив)
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
| description | string | Да | Описание товара или услуги |
| quantity | number | Да | Количество |
| unit_price | number | Да | Цена за единицу (без НДС) |
| discount | number | Нет | Скидка (процент или сумма) |
| discount_type | string | percent | "percent" или "amount" |
| tax_rate | number | Нет | Ставка НДС для строки (напр. 20) |
Другие поля
| Поле | Тип | Описание |
|---|---|---|
| global_tax | number | Общая ставка НДС (применяется если нет строковой) |
| global_discount | number | Скидка на итого |
| amount_paid | number | Уже оплаченная сумма (для частичной оплаты) |
| notes | string | Примечания внизу счета |
| template | string | Имя шаблона: classic, modern, bold, minimal, navy |
| output | string | "json" (по умолчанию) или "pdf" |
Формат ответа
JSON-ответ (output: "json")
PDF-ответ (output: "pdf")
Возвращает бинарный PDF-файл со следующими заголовками:
Коды ошибок
| HTTP-статус | Значение |
|---|---|
| 400 | Ошибка валидации — проверьте формат запроса |
| 401 | Требуется аутентификация или API-ключ недействителен |
| 403 | Email не подтвержден |
| 429 | Превышен лимит запросов |
| 500 | Внутренняя ошибка сервера |
Endpoints авторизации
| Метод | Путь | Описание |
|---|---|---|
| POST | /api/auth/register | Создать аккаунт с email и паролем |
| POST | /api/auth/login | Войти в систему, возвращает cookie сессии |
| POST | /api/auth/logout | Выйти из системы |
| GET | /api/auth/me | Получить данные текущего пользователя и API-ключ |
| POST | /api/auth/generate-api-key | Создать новый API-ключ (требуется подтвержденный email) |
Примеры кода
cURL — PDF-счет с НДС
JavaScript (Node.js)
Python
Поддерживаемые языки
| Код | Язык | Направление |
|---|---|---|
ru | Русский | LTR |
en | Английский | LTR |
de | Немецкий | LTR |
fr | Французский | LTR |
nl | Нидерландский | LTR |
es | Испанский | LTR |
it | Итальянский | LTR |
pt | Португальский | LTR |
hi | Хинди | LTR |
ja | Японский | LTR |
ar | Арабский | RTL |
PDF-шаблоны
| Название | Стиль |
|---|---|
classic | Синий акцент, чередующиеся серые строки (по умолчанию) |
modern | Бирюзовый/голубой, чистый современный дизайн |
bold | Темный антрацитовый заголовок, высокий контраст |
minimal | Светло-серый, без границ |
navy | Темно-синий заголовок с золотой линией акцента |
Поддерживаемые валюты
USD, EUR, GBP, JPY, CAD, AUD, CHF, CNY, INR, AED, SAR, SGD, NZD, KRW, BRL, MXN, ZAR, SEK, NOK, DKK