Create
https://{Environment}.payture.com/apicheque/CreateЗапрос Create используется для создания чека без платежа.
Создание чека — асинхронный запрос, после которого чек оказывается в очереди на обработку. Помимо данных чека Продавец передает уникальный идентификатор документа, используя который впоследствии, он сможет запросить статус чека. Данный идентификатор должен быть уникальным в пределах организации. Для передачи чека необходимо сформировать структуру данных в виде JSON.
Запрос
Пример тела запроса (максимальный набор параметров)(ФФД 1.2) [JSON]:
{
"Key":"Merchant",
"Password":"123",
"Message":"Чек Payture",
"TemplateTag":"Default",
"TemplateLang":"Default",
"AdditionalMessages":[
{
"Key":"Name",
"Value":"Value"
}
],
"Cheque":{
"Id":"{{$timestamp}}",
"INN":"7701870710",
"Group":"main",
"Content":{
"Type":2,
"Positions":[
{
"Quantity":1,
"Price":11,
"Tax":1,
"Text":"Пирожок",
"AdditionalAttribute":"Дополнительный реквизит предмета расчета",
"AgentType":2,
"CustomsDeclarationNumber":"1271",
"Excise":1.00,
"ManufacturerCountryCode":"643",
"PaymentMethodType":7,
"PaymentSubjectType":1, "ItemCode":"010460406000600021N4N57RSCBUZTQ\u001d2403004002910161218\u001d1724010191ffd0\u001d92tIAF/YVoU4roQS3M/m4z78yFq0fc/WsSmLeX5QkF/YVWwy8IMYAeiQ91Xa2z/fFSJcOkb2N+uUUmfr4n0mOX0Q==",
"SupplierINN":"7701870710",
"SupplierInfo":{
"Name":"Наименование поставщика",
"PhoneNumbers":["+79990000009"]
},
"QuantityMeasurementUnit": 10
}
],
"CheckClose":{
"Payments":[
{
"Type":1,
"Amount":11
}
],
"TaxationSystem":1
},
"CustomerContact":"roman@test.com",
"AdditionalAttribute":"Доп.реквиз.чека",
"AdditionalUserAttribute":{
"Name":"Наименование дополнительного реквизита пользователя",
"Value":"Значение дополнительного реквизита пользователя"
},
"AutomatNumber":"1258",
"Customer":"Иванов Иван Иванович",
"CustomerINN":"142702309610",
"PaymentAgentOperation":"Операция плат. агента",
"PaymentAgentPhoneNumbers":["+79260000003"],
"PaymentOperatorName":"ООО \"Ромашка\"",
"PaymentOperatorAddress":"Москва, Дурова 10",
"PaymentOperatorINN":"9715225506",
"PaymentOperatorPhoneNumbers":["+79260000002"],
"PaymentTransferOperatorPhoneNumbers":["+79260000001"],
"SettlementAddress":"Москва, Золотая 72",
"SettlementPlace":"https://site.ru/",
"SupplierPhoneNumbers":["+74957870004"]
}
}
}| Параметр | Описание | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Key | Наименование Терминала Предоставляется с параметрами тестового/рабочего доступа | String Mandatory | + | + | + |
| Password | Пароль для выполнения запросов apiecheque Предоставляется с параметрами тестового/рабочего доступа | String Mandatory | + | + | + |
| Cheque | Параметры чека Описание структуры Cheque см. ниже | Object Mandatory | + | + | + |
| Message | Тема письма или строка в сообщении СМС | String [1..50] Optional | + | + | + |
| TemplateTag | Название используемого шаблона чека Необходимо передавать, если Продавец применяет несколько шаблонов. Если параметр не передан, используется шаблон с названием «Default» В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String Optional | + | + | + |
| TemplateLang | Язык шаблона чека Необходимо передавать, если Продавец применяет несколько шаблонов. Если параметр не передан, используется язык «Default» В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String Optional | + | + | + |
| AdditionalMessages | Позволяет добавить любые параметры на шаблон чека в плейсхолдер с названием из Key Описание элемента AdditionalMessages см. ниже. Общая длина максимум 1000 символов | Array of objects Optional | + | + | + |
Пример тела запроса (минимальный набор параметров) [JSON]:
{
"Key":"Merchant",
"Password":"1234",
"Cheque":{
"Id":"6363901578517681941",
"INN":"7702684259",
"Content":{
"Type":1,
"Positions":[
{
"Quantity":1,
"Price":27.25,
"Tax":1,
"Text":"Пирожок"
}
],
"CheckClose":{
"Payments":[
{
"Type":2,
"Amount":27.25
}
]
},
"CustomerContact":"user@mail.com"
}
}
}Состав элемента массива Cheque.AdditionalMessages
| Параметр | Описание | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Key | Название параметра | String Mandatory | + | + | + |
| Value | Значение параметра | String Mandatory | + | + | + |
Состав Cheque
| Параметр | Описание | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Id | Уникальный идентификатор чека | String [1..64] Mandatory | + | + | + |
| INN | ИНН организации, для которой формируется чек | String [10..12] Mandatory | + | + | + |
| Content | Данные чека Описание структуры Content см. ниже | Object Mandatory | + | + | + |
| Group | Группа устройств, с помощью которых будет сформирован чек По умолчанию «main» | String [1..32] Optional | + | + | + |
| CallbackUrl | URL для отправки результатов обработки чека POST запросом | String Optional | + | + | - |
| OriginalChequeId | ID оригинального чека прихода для операции возврата (для Type=2) | String Optional | - | - | + |
Состав Cheque.Content
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Type | Тип документа (1054). Orange Data / АТОЛ: 1 — Приход2 — Возврат прихода3 — Расход4 — Возврат расходаБухта: 1 — Приход2 — Возврат прихода | Integer Mandatory | + | + | + |
| Positions | Список позиций чека (1059) Описание элемента Positions см. ниже | Array of objects Mandatory | + | + | + |
| CheckClose | Контейнер с информацией о системе налогообложения и параметрах закрытия чека Описание структуры CheckClose см. ниже | Object Mandatory | + | + | + |
| CustomerContact | Email Покупателя для отправки чека или телефон в формате 79995554444 или +79995554444 (1008) | String [1..32] Mandatory | + | + | + |
| AgentType | Признак агента (1057). Используется только для ФФД 1.05. Число от 1 до 127 (битовое поле), где номер бита обозначает, что Продавец: 0 — Банковский платежный агент1 — Банковский платежный субагент2 — Платежный агент3 — Платежный субагент4 — Поверенный5 — Комиссионер6 — Иной агент | Integer Optional | + | + | - |
| AdditionalUserAttribute | Дополнительный реквизит пользователя (1084) Описание структуры AdditionalUserAttribute см. ниже | Object Optional | + | - | - |
| AdditionalAttribute | Дополнительный реквизит чека (1192) | String [1..16] Optional | + | - | - |
| AutomatNumber | Номер автомата (1036) | String [1..20] Optional | + | - | - |
| Customer | Покупатель (клиент) (1227) | String [1..243] Optional | + | - | - |
| CustomerINN | ИНН покупателя (клиента) (1228) | String [10..12] Optional | + | - | - |
| PaymentAgentOperation | Операция платежного агента (1044) | String [1..24] Optional | + | + | - |
| PaymentAgentPhoneNumbers | Телефоны платежного агента в формате +79995554444 (1073) | Array of strings [1..19] Optional | + | + | - |
| PaymentOperatorName | Наименование оператора перевода (1026) | String [1..64] Optional | + | + | - |
| PaymentOperatorAddress | Адрес оператора перевода (1005) | String [1..243] Optional | + | + | - |
| PaymentOperatorINN | ИНН оператора перевода (1016) | String [10..12] Optional | + | + | - |
| PaymentOperatorPhoneNumber | Телефоны оператора по приему платежей в формате +79995554444 (1074) | Array of strings [1..19] Optional | + | + | - |
| PaymentTransferOperatorPhoneNumbers | Телефоны оператора перевода в формате +79995554444 (1075) | Array of strings [1..19] Optional | + | + | - |
| SettlementAddress | Адрес расчетов (1009) | String [1..243] Optional | + | - | - |
| SettlementPlace | Место расчетов (1187) Параметр может использоваться для указания сайта, на котором формируется чек | String [1..243] Optional | + | - | - |
| SupplierPhoneNumbers | Телефоны поставщика в формате +79995554444 (1171) | Array of strings [1..19] Optional | + | - | - |
Состав Cheque.Content.AdditionalUserAttribute
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Name | Наименование дополнительного реквизита пользователя (1085) | String [1..64] Mandatory | + | - | - |
| Value | Значение дополнительного реквизита пользователя (1086) | String [1..175] Mandatory | + | + | - |
Состав элемента массива Cheque.Content.Positions
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Quantity | Количество предмета расчета (товара, услуги и т.д.) (1023) Десятичное число с точностью до 3 цифр после точки | Float Mandatory | + | + | + |
| Price | Цена в рублях за единицу предмета расчета с учетом скидок и наценок (1079) Десятичное число с точностью до 2 цифр после точки | Float Mandatory | + | + | + |
| Tax | Ставка НДС (1199). Orange Data / АТОЛ: 1 — Ставка НДС 22%2 — Ставка НДС 10%3 — Ставка НДС расч. 22/1224 — Ставка НДС расч. 10/1105 — Ставка НДС 0%6 — НДС не облагается7 — ставка НДС 5%8 — ставка НДС 7%9 — ставка НДС расч. 5/10510 — ставка НДС расч. 7/10711 — Ставка НДС 20%12 — Ставка НДС расч. 20/120Бухта: 1 — Ставка НДС 20%2 — Ставка НДС 10%6 — Без НДС1000 — Ставка НДС 12% | Integer Mandatory | + | + | + |
| Text | Наименование предмета расчета (название товара, услуги и т.д.) (1030) | String [1..128] Mandatory | + | + | + |
| AdditionalAttribute | Дополнительный реквизит предмета расчета (1191) | String [1..64] Optional | + | + | - |
| AgentType | Признак агента по предмету расчета (1222). Число от 1 до 127 (битовое поле), где номер бита обозначает, что оказывающий услугу Покупателю (клиенту) пользователь является: 0 — Банковский платежный агент1 — Банковский платежный субагент2 — Платежный агент3 — Платежный субагент4 — Поверенный5 — Комиссионер6 — Иной агент | Integer Optional | + | - | - |
| AgentInfo | Данные агента (1223) Описание структуры AgentInfo см. ниже | Object Optional | + | - | - |
| CustomsDeclarationNumber | Номер таможенной декларации (1231) | String [1..32] Optional | + | - | - |
| Excise | Акциз (1229) Десятичное число с точностью до 2 цифр после точки | Float Optional | + | - | - |
| ManufacturerCountryCode | Код страны происхождения товара (1230) | String [1..3] Optional | + | + | + |
| PaymentMethodType | Способ расчета (1214). Число от 1 до 7: 1 — Предоплата 100%2 — Частичная предоплата3 — Предварительная оплата (Аванс)4 — Полный расчет5 — Частичный расчет и кредит6 — Передача в кредит7 — Оплата кредита | Integer Optional | + | + | + |
| PaymentSubjectType | Предмет расчета (1212). Число от 1 до 33: 1 — Товар2 — Подакцизный товар3 — Работа4 — Услуга5 — Ставка азартной игры6 — Выигрыш азартной игры7 — Лотерейный билет8 — Выигрыш лотереи9 — Предоставление РИД10 — Платеж11 — Агентское вознаграждение12 — Составной предмет расчета13 — Иной предмет расчета14 — Имущественное право15 — Внереализационный доход16 — Иные платежи и взносы17 — Торговый сбор18 — Курортный сбор19 — Залог20 — Расход21 — Взносы на обязательное пенсионное страхование ИП22 — Взносы на обязательное пенсионное страхование23 — Взносы на обязательное медицинское страхование ИП24 — Взносы на обязательное медицинское страхование25 — Взносы на обязательное социальное страхование26 — Платеж казино27 — Выдача денежных средств30 — АТНМ (не имеющем кода маркировки)31 — АТМ (имеющем код маркировки)32 — ТНМ33 — ТМ | Integer Optional | + | + | + |
| NomenclatureCode | Код товарной номенклатуры (1162) (base64 кодированный массив от 1 до 32 байт). Используется только для ФФД 1.05 | String Optional | + | + | + |
| ItemCode | Код маркировки (2000) (значение, считанное сканером). Используется только для ФФД 1.2 | String Optional | + | + | - |
| SupplierINN | ИНН поставщика (1226) | String [10..12] Optional | + | + | - |
| SupplierInfo | Данные поставщика (1224) Описание структуры SupplierInfo см. ниже | Object Optional | + | + | - |
| UnitOfMeasurement | Единица измерения предмета расчета (1197). Используется только для ФФД 1.05 | String [1..16] Optional | + | - | - |
| QuantityMeasurementUnit | Единица измерения предмета расчета (2108) (число от 0 до 255, 0 если не передано). Используется только для ФФД 1.2 | Integer Optional | + | + | - |
Состав Cheque.Content.Positions.AgentInfo
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| PaymentAgentOperation | Операция платежного агента (1044) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String [1..24] Optional | + | - | - |
| PaymentAgentPhoneNumbers | Телефоны платежного агента в формате +79995554444 (1073) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | Array of strings [1..19] Optional | + | - | - |
| PaymentOperatorName | Наименование оператора перевода (1026) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String [1..64] Optional | + | - | - |
| PaymentOperatorAddress | Адрес оператора перевода (1005) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String [1..243] Optional | + | - | - |
| PaymentOperatorINN | ИНН оператора перевода (1016) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | String [10..12] Optional | + | - | - |
| PaymentOperatorPhoneNumber | Телефоны оператора по приему платежей в формате +79995554444 (1074) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | Array of strings [1..19] Optional | + | - | - |
| PaymentTransferOperatorPhoneNumbers | Телефоны оператора перевода в формате +79995554444 (1075) В общем случае можно задать значение по умолчанию через службу поддержки Payture и не передавать | Array of strings [1..19] Optional | + | - | - |
Состав Cheque.Content.Positions.SupplierInfo
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Name | Наименование поставщика (1225) Строка длиной до (239 – N) символов, где N — это количество символов в телефонных номерах поля PhoneNumbers + 4 символа на каждый номер | String Mandatory | + | + | - |
| PhoneNumbers | Телефоны поставщика в формате +79995554444 (1171) | Array of strings [1..19] Optional | + | + | - |
Состав Cheque.Content.CheckClose
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Payments | Оплаты Описание элемента Payments см. ниже | Array of objects Mandatory | + | + | + |
| TaxationSystem | Номер системы налогообложения (1055). Число от 0 до 5: 0 — Общая, ОСН1 — Упрощенная доход, УСН доход2 — Упрощенная доход минус расход, УСН3 — Единый налог на вмененный доход, ЕНВД4 — Единый сельскохозяйственный налог, ЕСН5 — Патентная система налогообложения | Integer Optional | + | + | - |
Состав элемента массива Cheque.Content.CheckClose.Payments
Внимание!
Сумма по всем типам оплат должна совпадать с итоговой стоимостью всех позиций чека.
| Параметр | Описание (тег) | Формат | Orange Data | АТОЛ | Бухта |
|---|---|---|---|---|---|
| Type | Тип оплаты. Число от 1 до 16: 1 — Наличными (1031)2 — Безналичными (1081)14 — Предварительная оплата (аванс) (1215)15 — Последующая оплата (в кредит) (1216)16 — Встречное предоставление (1217) | Integer Mandatory | + | + | + |
| Amount | Сумма оплаты в рублях Десятичное число с точностью до 2 цифр после точки | Float Mandatory | + | + | + |
Ответ
| Параметр | Описание | Формат |
|---|---|---|
| Success | Признак успешности выполнения операции в платежном шлюзе. Принимает значения:true — операция успешнаfalse — операция неуспешна | Boolean Mandatory |
| ErrCode | Код ошибки платежного шлюза | String Mandatory |
| Status | Статус чека. См. статусы чеков | String Mandatory |
| ErrMessages | Сообщения об ошибках, полученные от сервиса онлайн-касс Передаются, если получены от сервиса онлайн-касс | Array of strings Optional |
Пример успешного ответа [JSON]:
{
"Success":true,
"ErrCode":"NONE",
"ErrMessages":null,
"Status":"Accepted"
}Пример ответа при получении ошибки от сервиса онлайн-касс [JSON]:
{
"Success":true,
"ErrCode":"NONE",
"ErrMessages":[
"Неизвестная группа"
],
"Status":"BadRequest"
}Передача чека без платежа
Запрос Payture ApiChequeЗапрос с необходимыми параметрами формируется на стороне Продавца и передается методом POST по протоколу HTTPS. Тип тела запроса "Content-Type — application/json".
CreateCorrection
Запрос CreateCorrection используется для создания чека коррекции без платежа.
