Веб-сервис предназначен для тех предприятий, которые используют услугу фискализации через АПК Ассист внешних платежей (проводимых на стороне предприятия). Кроме того, веб-сервис может использоваться тогда, когда появляется возможность сформировать чек, оплата по которому через АПК Ассист была проведена ранее.
Веб-сервис позволяет предприятию получить уникальный идентификатор сгенерированного в АПК Ассист фискального чека на основе данных, переданных в запросе.
По идентификатору можно в свою очередь запросить фискальные данные чека из АПК Ассист через отдельный веб-сервис fiscalreceipt. Эти данные используются, например, в тех случаях, когда предприятие самостоятельно отправляет электронные копии чеков своим покупателям.
Для обращения к веб сервису необходимо отправить запрос методом POST/SOAP на сервер ASSIST по адресу: https://<SERVER_NAME>/fiscal/fiscalize.cfm.
Входные параметры сервиса:
Параметр | Обязательное поле | Принимаемые значения | Значение по умолчанию | Описание | |
Merchant_ID | Да | Число | Идентификатор предприятия в системе АПК Ассист | ||
Login | Да | 20 символов | Логин пользователя сервиса от предприятия | ||
Password | Да | 30 символов | Пароль пользователя сервиса от предприятия | ||
Billnumber | Нет1 | 16 цифр расширенный формат | Расширенный номер платежа, соответствующий выполненному ранее платежу или выполненной ранее отмене в системе АПК Ассист | ||
Payment_ID | Нет1 | 255 символов | Уникальный идентификатор чека в системе предприятия2 | ||
Да/Нет3 | 128 символов | E-mail адрес для отправки фискального чека | |||
Phone | Да/Нет3 | Число | Номер телефона для отправки фискального чека - стандартный номер с кодом страны (без +), минимум 11 цифр. | ||
Type | Да | Строка | Тип фискализируемого платежа:
Если в запросе передается параметр Billnumber, то для фискализации платежа должен передаваться тип sell, а для фискализации отмены тип sell_refund. | ||
TaxationSystem | Нет4 | Число | Из настроек предприятия или ККТ | ||
Chequeitems | Да/Нет5 | Строка в формате JSON | Позиции чека, см. «Работа с чеком». | ||
Amount | Да | Число, 15 знаков, два знака после разделителя (допустимые разделители «.», «,») | Сумма чека | ||
Format | Нет | 1 – CSV | 1 | Формат возвращаемого ответа. | |
Language | Нет | RU - русский, EN - английский | Язык предприятия | Язык отправляемого письма (RU/EN) | |
ReceiptLine | Да/Нет5 | 128 символов | Позиция чека (для чеков с единственной позицией) | ||
Tax | Да/Нет5 | 10 символов | |||
PaymentType | Да/Нет6 | Число | |||
PaymentTypes | Да/Нет6 | Строка | Набор/массив пар значений видов оплаты и соответствующих им сумм:
| ||
LastName | Нет | 70 символов | Пусто | Фамилия покупателя | |
FirstName | Нет | 70 символов | Пусто | Имя покупателя | |
MiddleName | Нет | 70 символов | Пусто | Отчество покупателя | |
TaxpayerID | Нет | 12 символов | Пусто | ИИН покупателя | |
PaymentPlace | Да | 256 символов | Пусто | Код отдела | |
Cashier | Нет | 64 символа | Пусто | Кассир | |
CashierINN | Да | 12 цифровых символов | Пусто | Код кассира (максимально возможное значение параметра 2147483647) |
1Обязательным является один из двух параметров Payment_ID (если осуществляется фискализация внешнего платежа) и Billnumber (если осуществляется фискализация платежа в АПК Ассист, выполненного ранее). Если передается параметр Billnumber и фискальный чек по данной операции уже существует в любом статусе, то выдается ошибка «Фискальный чек уже создан».
2Уникальность Payment_ID контролируется в рамках конкретного предприятия для типа чеков sell и sell_refund и статусов фискального чека:
Если для данного MerchantID, для данного Payment_ID и типов sell или sell_refund уже создан фискальный чек, то при статусах фискального чека New, InProgress, Requested, ErrorRe, Success выдается ошибка – «Фискальный чек создан или находится в обработке».
Если для данного MerchantID, данного Payment_ID и типов sell или sell_refund фискальный чек создан, но имеет статус Error, то создается новый чек.
Если для данного MerchantID, данного Payment_ID и типов sell или sell_refund фискальный чек создан, но имеет статус CreateError, то новый чек будет создан только в том случае, если присланный состав чека (позиции чека, суммы, параметры фискализации) отличается от первоначального (исправленный чек). Если чек совпадает с ранее созданным чеком, то выдается ошибка – «Фискальный чек создан или находится в обработке».
При частичных отменах в рамках одного платежа параметр Payment_ID каждого отдельного возврата должен быть уникальным. Если предприятие не может обеспечить уникальность параметра Payment_ID для частичных отмен (например, передает в этом поле один и тот же номер заказа), то при фискализации возврата типа sell_refund можно не передавать этот параметр, что обеспечит фискализацию более одной частичной отмены для данного заказа. При этом нужно иметь в виду, что отсутствие параметра Payment_ID отменяет проверку на уникальность и может привести к повторной фискализации одной и той же отмены, если запрос на ее фискализацию был послан вторично. |
3Должен быть передан хотя бы один из параметров Email и Phone. Если Email и Phone не указаны, то необходимые данные для контакта с плательщиком извлекаются из настроек предприятия. Если переданы оба параметра Email и Phone, то для контакта с плательщиком будет использоваться параметр Email.
4Параметр TaxationSystem задается для всего чека в целом (не передается в позициях чека). Если параметр не передан, то его значение берется из настроек предприятия. Если у предприятия не настроено значение параметра TaxationSystem по умолчанию, то в ККТ этот параметр (тег 1055) не отправляется и ККТ будет проводить чек по собственным настройкам. Это возможно только в том случае, если в ККТ настроена только одна система налогообложения, в противном случае ККТ выдаст ошибку.
5Состав чека (поля с названием, стоимостью за единицу товара/услуги, ставкой налога и способом расчета по каждой позиции) определяется по следующим правилам.
при этом:
2. Если в запросе не передана структура ChequeItems, то формируется чек с одной позицией, в которой:
при этом:
6Обязательным является один из двух параметров PaymentType (если при платеже использовался единственный вид оплаты) и PaymentTypes (если для фискализируемого платежа использовались несколько видов оплаты). Если в запросе передается параметр Billnumber, то параметр PaymentType/PaymentTypes либо должен соответствовать операциям платежа (отмены) с этим номером, либо может вообще не передаваться, т.е. становится необязательным.
Перечень возвращаемых параметров:
Название | Значение |
fiscalreceipt_ID | Идентификатор созданного фискального чека |
Payment_ID | Идентификатор чека в системе предприятия (если есть) |
Type | Тип фискализируемого платежа:
|
receipttype | Тип чека:
|
Receipt_status | Статус созданного фискального чека |
После получения данных о создании фискального чека в статусе New рекомендуется через несколько минут дополнительно запросить данные фискального чека с помощью веб-сервиса fiscalreceipt (о веб-сервисе fiscalreceipt подробнее см. «Получение фискального чека») для того чтобы убедиться, что создание фискального чека успешно завершено.
Если в ответе на запрос данных фискального чека в течение длительного времени (несколько часов) по-прежнему приходит статус NEW (особенно в том случае, когда поле errortext ответа не пустое), следует обратиться в службу технической поддержки support@assist.kz. |
Если запрос на фискализацию не может быть обработан, в результате запроса вернутся ненулевые значения параметров firstcode, secondcode.