Агентские признаки¶
Агентские признаки нужны, когда в расчете участвует посредник: агент, комиссионер, поверенный, платежный агент, банковский платежный агент или иная платформа, принимающая деньги не только за собственный товар.
Главная ошибка — считать агентские реквизиты дополнительным текстом в чеке. Они описывают юридическую роль участников расчета и влияют на состав позиции, поставщика, предмет расчета и ответственность за чек.
Что определить перед payload¶
| Вопрос | Что дает ответ |
|---|---|
| Кто фактический поставщик товара или услуги | Нужны supplier-реквизиты: наименование, ИНН, телефоны и другие поля. |
| Кто принимает деньги | Определяется агентский тип и роль платежного участника. |
| От чьего имени продается позиция | Выбирается агентский признак и предмет расчета. |
| Есть ли собственное вознаграждение агента | Оно может идти отдельной позицией с другим предметом расчета. |
| Можно ли смешивать товары разных поставщиков | Обычно позиции нужно разделять по поставщику и налоговой логике. |
Типы агентской роли¶
| Роль API | Когда встречается |
|---|---|
| bank_paying_agent | Банк или банковский платежный агент участвует в приеме платежа. |
| bank_paying_subagent | Субагент банковского платежного агента. |
| paying_agent | Платежный агент принимает платеж в пользу поставщика. |
| paying_subagent | Субагент платежного агента. |
| attorney | Поверенный действует по поручению. |
| commission_agent | Комиссионер продает товар комитента. |
| another | Иная посредническая схема, если она предусмотрена контрактом и ФФД. |
Нельзя выбирать роль по названию, которое похоже. Сначала описывается договорная модель, затем выбирается ФФД-реквизит и конкретное значение API.
Supplier-реквизиты¶
| Реквизит | Зачем нужен |
|---|---|
| Наименование поставщика | Показывает, чей товар или услуга продается. |
| ИНН поставщика | Связывает позицию с фактическим поставщиком. |
| Телефон поставщика | Может быть обязательным у конкретного провайдера. |
| Данные агента | Описывают посредника и его роль в расчете. |
Практическая разница провайдеров важна: один API может принять supplier без телефона, другой потребует supplier_info.phones. Поэтому агентская схема проверяется не только по ФФД, но и API-прогоном выбранного кассового сервиса.
Пример смысловой структуры¶
{
"items": [
{
"name": "Товар поставщика",
"payment_method": "full_payment",
"payment_object": "commodity",
"agent_info": { "type": "commission_agent" },
"supplier_info": {
"name": "Поставщик",
"inn": "7700000000",
"phones": ["+79990000000"]
}
}
]
}
Это не универсальный payload для всех провайдеров. Это модель, которую нужно переложить на конкретный API: у АТОЛ, Эвотора, Ferma и Бизнес.Ру могут отличаться имена полей, типы enum и обязательность вложенных реквизитов.
Ошибки интеграции¶
| Ошибка | Последствие |
|---|---|
| Передать товар поставщика как собственный товар агента | Чек искажает роль продавца. |
| Смешать товар поставщика и агентское вознаграждение в одной позиции | Неверный предмет расчета и налоговая интерпретация. |
| Не передать supplier-реквизиты при агентской продаже | Провайдер может отклонить чек или сформировать неполный документ. |
| Проверять только публичную страницу ОФД | Не все агентские реквизиты видны на витрине, нужен report/ФД. |
Практический порядок¶
- Описать договорную модель: поставщик, агент, покупатель, получатель денег.
- Разделить позиции поставщика и собственное вознаграждение.
- Выбрать значения агентского признака и предмета расчета.
- Сверить обязательность supplier-реквизитов по ФФД 1.2.
- Проверить контракт провайдера: имена полей, enum, обязательность телефонов и ИНН.
- Прогнать тестовый чек и сверить registration, report, ФД и доступное отображение ОФД.