Основные положения

Веб-сервис предназначен для тех предприятий, которые используют услугу фискализации через АПК Ассист для финансовых операций, проводимых на стороне предприятия.

Веб-сервис фискализации внешних операций позволяет предприятию получить уникальный идентификатор сгенерированного в АПК Ассист фискального чека на основе данных, переданных в запросе.

По идентификатору можно в свою очередь запросить фискальные данные чека из АПК Ассист через отдельный веб-сервис fiscalreceipt. Эти данные используются, например, в тех случаях, когда предприятие самостоятельно отправляет электронные копии чеков своим покупателям.

Для обращения к веб сервису необходимо отправить запрос методом POST/SOAP на сервер ASSIST по адресу: https://<SERVER_NAME>/fiscal/fiscalize.cfm.

Входные параметры сервиса:

Параметр

Обязательное поле

Принимаемые значения

Значение по умолчанию

Описание

Merchant_ID

Да

Число


Идентификатор предприятия в системе АПК Ассист

Login

Да

20 символов


Логин пользователя сервиса от предприятия

Password

Да

30 символов


Пароль пользователя сервиса от предприятия

Payment_ID

Нет

255 символов


Идентификатор операции в системе предприятия

Email

Да/Нет1

128 символов


E-mail адрес для отправки фискального чека

Phone

Да/Нет1

Число


Номер телефона для отправки фискального чека (без +7)

Type

Да

Строка


Тип фискализируемой операции:

  • sell – оказание услуг;
  • sell_refund – возврат.

Paymenttype

Да

Число


Вид оплаты

TaxationSystem

Нет4

Число

Из настроек предприятия или ККТ

Система налогообложения

Chequeitems

Да/Нет2

Строка в формате JSON


Позиции чека, см. «Работа с чеком».

Amount

Да

Число, 15 цифр (разделители «.», «,»)


Сумма операции

Format

Нет

Число

1

Формат возвращаемого ответа (1-CSV, 2-WDDX, 3-XML, 4-SOAP)

Language

Нет

RU - русский,

EN - английский

Язык предприятия

Язык отправляемого письма (RU/EN)

ReceiptLine

Да/Нет2

128 символов


Позиция чека (для чеков с единственной позицией)

Tax

Да/Нет2

10 символов


Идентификатор ставки налога

FPMode

Да/Нет2

Число


Способ расчета

LastName
70 символов
Фамилия покупателя

1Должен быть передан хотя бы один из параметров Email и Phone. Если Email и Phone не указаны, то необходимые данные для контакта с плательщиком извлекаются из настроек предприятия. Если переданы оба параметра Email и Phone, то для контакта с плательщиком будет использоваться параметр Email.

2Состав чека (поля с названием, стоимостью за единицу товара/услуги, ставкой налога и способом расчета по каждой позиции) определяется по следующим правилам.

  1. Если в запросе передана структура ChequeItems (см.  «Работа с чеком»), то формируется чек с количеством позиций по числу переданных в ChequeItems строк, в каждой позиции должны быть обязательно указаны параметры:

при этом:

название каждой из позиций формируется как объединение параметров product и name через пробел (если переданы оба) или как один из параметров product или name соответственно (если передан только один);

если параметры Tax или FPmode не переданы в позициях, то они могут быть переданы в параметрах запроса (в этом случае значения этих параметров будут одинаковыми для всех позиций чека, переданных в ChequeItems);

если параметры Tax или FPmode не переданы в параметрах запроса, то их значения подставляются из настроек предприятия (значения этих параметров будут одинаковыми для всех позиций чека, переданных в ChequeItems);

если настройки предприятия для этих параметров отсутствуют, то обработка запроса завершается с ошибкой (недостаточно данных для выполнения операции).

2. Если в запросе не передана структура ChequeItems, то формируется чек с одной позицией, в которой:

если параметры Tax или FPmode не переданы в параметрах запроса, то их значения подставляются из настроек предприятия;

если настройки предприятия для этих параметров отсутствуют, то обработка запроса завершается с ошибкой (недостаточно данных для выполнения операции).

3Уникальность Payment_ID контролируется в рамках конкретного предприятия для типа операций sell и sell_refund и статусов фискального чека:

Если для данного MerchantID, для данного Payment_ID и типов sell или sell_refund уже создан фискальный чек, то при статусах фискального чека New, InProgress, Requested, ErrorRe, Success выдается ошибка – «Фискальный чек создан или находится в обработке».

Если для данного MerchantID, данного Payment_ID и типов sell или sell_refund фискальный чек создан, но имеет статус Error или CreateError, - то создается новый чек.

При частичных отменах одного заказа параметр Payment_ID каждой отдельной операции отмены должен быть уникальным. Если предприятие не может обеспечить уникальность параметра Payment_ID для частичных отмен (например, передает в этом поле один и тот же номер заказа), то при фискализации операции типа sell_refund можно не передавать этот параметр, что обеспечит фискализацию более одной операции частичной отмены для данного заказа. При этом нужно иметь в виду, что отсутствие параметра Payment_ID отменяет проверку на уникальность и может привести к повторной фискализации одной и той же операции, если запрос на ее фискализацию был послан вторично.

4Параметр TaxationSystem задается для всего чека в целом (не передается в позициях чека). Если параметр не передан, то его значение берется из настроек предприятия. Если у предприятия не настроено значение параметра TaxationSystem по умолчанию, то в ККТ этот параметр (тег 1055) не отправляется и ККТ будет проводить чек по собственным настройкам. Это возможно только в том случае, если в ККТ настроена только одна система налогообложения, в противном случае ККТ выдаст ошибку.

Перечень возвращаемых параметров:

Название

Значение

fiscalreceipt_ID

Идентификатор созданного фискального чека

Payment_ID

Идентификатор операции в системе предприятия (если есть)

Type

Тип фискализируемой операции:

  • sell – оказание услуг;
  • sell_refund – возврат.

Receipt_status

Статус созданного фискального чека

или

Сообщение об ошибке (если переданы некорректные параметры или не все обязательные параметры)

После получения данных о создании фискального чека в статусах New, InProgress, ErrorRe, Requested рекомендуется через несколько минут дополнительно запросить данные фискального чека с помощью веб-сервиса fiscalreceipt (о веб-сервисе fiscalreceipt подробнее см.  «Получение фискального чека») для того чтобы убедиться, что создание фискального чека успешно завершено.

Если запрос на фискализацию не может быть обработан, в результате запроса вернутся ненулевые значения параметров firstcode, secondcode.

Наверх