Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

Note

Фискализация осуществляется для платежей только в  казахстанских тенге (KZT).

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

...

Параметр

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

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

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

Описание

Merchantmerchant_IDid

Да

Число


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

Loginlogin

Да

20 символов


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

Passwordpassword

Да

30 символов


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

BillnumberbillnumberНет 1 16 цифр расширенный формат
Расширенный номер платежа, соответствующий выполненному ранее платежу или выполненной ранее отмене в системе АПК Ассист

Paymentpayment_IDid

Нет 1

255 символов


Уникальный идентификатор чека в системе предприятия 2

Emailemail

Да/Нет 3

128 символов


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

Phonephone

Да/Нет 3

Число


Номер телефона для отправки фискального чека  - стандартный номер с кодом страны (без +), минимум 11 цифр.

Typetype

Да

Строка


Тип фискализируемого платежа:

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

Если в запросе передается параметр Billnumber, то для фискализации платежа должен передаваться тип sell, а для фискализации отмены тип sell_refund.

TaxationSystemtaxationsystem

Нет 4

Число

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

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

Chequeitemschequeitems

Да/Нет 5

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


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

Amountamount

Да

Число, 15  знаков, два знака после разделителя (допустимые разделители «.», «,»)


Сумма чека
Если в запросе передается параметр  Billnumber, то сумма чека должна равняться сумме платежа (или отмены).

Formatformat

Нет

1 – CSV
3 – XML
4 - SOAP
5 - JSON

1

Формат возвращаемого ответа.

Languagelanguage

Нет

RU - русский,

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

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

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

ReceiptLinereceiptLine

Да/Нет 5

128 символов


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

Taxtax

Да/Нет 5

10 символов


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

paymenttype

Да/Нет 6

Число


Вид оплаты

paymenttypes

Да/Нет 6

Строка


Набор/массив пар значений  видов оплаты  и соответствующих им сумм:
{"Amount":<value>, "PaymentType":<PaymentType>}

Warning

Сумма значений  Amount  по всем использованным видам оплаты должна быть равна сумме чека.

Tip

В случае внешней фискализации к каждой паре значений видов оплаты  и соответствующих им сумм могут быть добавлены дополнительные параметры для характеристики чека.

LastnameLastNameНет70 символовПустоФамилия покупателя
FirstNamefirstnameНет70 символовПустоИмя покупателя
MiddleNamemiddlenameНет70 символовПустоОтчество покупателя
TaxpayerIDtaxpayeridНет12 символовПустоИИН покупателя
PaymentPlacepaymentplaceДа/Нет6256 символовПустоМесто расчетовКод отдела
CashiercashierДа/Нет664 символаПустоКассир
CashierINN7cashierinnДа/Нет612 цифровых символовПустоИИН кассираКод кассира (максимально возможное значение параметра 2147483647)
parentticketnumber Да/Нет 7 Строка
Фискальный признак чека основания для возврата
parentticketdatetime Да/Нет 7 Дата/время
Дата и время операции родительского чека
parenttickettotal Да/Нет 7 Число
Общая сумма покупки или продажи чека основания для возврата
parentticketoffline Да/Нет 7 0 - неавтономный
1 - автономный

Признак автономности чека основания для возврата 
parentticketkkmregnumДа/Нет 7 Строка
Регистрационный номер ККМ  КГД чека основания для возврата

Anchor
1
1


1 Обязательным является один из двух параметров Payment payment _ID id  (если осуществляется фискализация внешнего платежа) и  Billnumber  (если осуществляется фискализация платежа в АПК Ассист, выполненного ранее). Если передается параметр  Billnumber  и фискальный чек по данной операции уже существует в любом статусе, то выдается ошибка « Фискальный чек уже создан ».

Anchor
2
2


2 Уникальность Payment payment _ID id  контролируется в рамках конкретного предприятия для типа чеков  sell  и  sell _ refund  и статусов фискального чека:

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

Если для данного MerchantID merchantid , данного Payment payment _ID id  и типов  sell  или  sell _ refund  фискальный чек создан, но имеет статус  Error ,  то создается новый чек.

Если для данного MerchantID merchantid , данного Payment payment _ID id  и типов  sell  или  sell _ refund  фискальный чек создан, но имеет статус  CreateError ,  то новый чек будет создан только в том случае, если присланный состав чека (позиции чека, суммы, параметры фискализации) отличается от первоначального (исправленный чек). Если чек совпадает с ранее созданным чеком, то выдается ошибка – « Фискальный чек создан или находится в обработке ».

Warning

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

...

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

Anchor
4
4


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

...

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

при этом:

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

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

    • название позиции подставляется из параметра ReceiptLine receiptline, если он передан в запросе; если параметр ReceiptLine receiptline  не передан в запросе, то название позиции подставляется из настроек предприятия; если настройки предприятия для этих параметров отсутствуют, то в качестве названия подставляется строка "Оплата заказа";
    • стоимость единицы товара/услуги подставляется из параметра запроса Amount amount;
    • количество всегда равно 1;

при этом:

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

Anchor
6
6


6 В зависимости от режима, в котором предприятие эксплуатирует ККТ, параметр может быть как обязательным, так и необязательным. Необходимость передачи этого параметра следует уточнить в отделе технической поддержкиОбязательным является один из двух параметров  paymenttype  (если при платеже использовался единственный вид оплаты) и  paymenttypes  (если для фискализируемого платежа использовались несколько видов оплаты). Если в запросе передается параметр  billnumber , то параметр  paymenttype / paymenttypes  либо должен соответствовать операциям платежа (отмены) с этим номером, либо может вообще не передаваться, т.е. становится необязательным.

Anchor
7
7


7 Если параметр будет передан в формате, не соответствующем указанному, то при фискализации его значение будет изменено на null. Параметр обязателен только для фискализации отмены внешнего платежа (чеков типа sell _ refund). 


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

Название

Значение

fiscalreceipt_

ID

id

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

Payment

payment_

ID

id

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

Type

type

Тип фискализируемого платежа:

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

receipttype

Тип чека:

  • normal  – чек при фискализации оплаты или отмены
;correct – чек коррекции
  • .
Receipt

receipt_status

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

  • New  – чек подготовлен к формированию;
  • CreateError  - при создании чека возникла ошибка.

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

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

...

или

...

состав позиций чека, наличие обязательных атрибутов фискализации, непротиворечивость параметров и т.д.), также рекомендуется  запросить данные с помощью веб-сервиса  fiscalreceipt  и проверить полученный в поле  errortext  текст ошибки,  затем можно повторно направить скорректированный запрос на фискализацию

Если чек находится в статусе  New , то отправлять его на фискализацию повторно  нельзя .

Warning
titleВнимание!

Если в ответе на запрос данных фискального чека в течение длительного времени (несколько часов) по-прежнему приходит статус New  (особенно в том случае, когда поле errortext ответа не пустое), следует обратиться в службу технической поддержки support@assist.kz.

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

Anchor
par
par


Дополнительные параметры для характеристики чека при внешней фискализации

Параметр

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

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

Описание

paymethod

Нет

Строка

Способ оплаты (карта, QR-код)

payid

Нет

Строка

Идентификатор оплаты (для карт – уникальное значение номера операции, для QR-кода – уникальный идентификатор платежа QR-кодом)

payterminal

Нет

Строка

Уникальный идентификатор терминала (только для карт)

paytype Нет20 символовТип карты (для карты) или тип оплаты QR-кодом (для QR-кода)

payauthcode

Нет

32 цифровых символа

Код авторизации (только для карт)

payreceiptnumber

Нет

32 цифровых символа

Номер чека в системе банка (только для карт)

Наверх