Під поняттям Дані по еквайрингу
в чеках мається на увазі вимога податкової щодо зазначення в чеках інформації про платіж при виконанні оплати картою через банківський термінал.
Згідно наказу 13 що визначає форму і зміст розрахункових документів це рядки 12-17 у формах чеків на продаж та повернення.
Коли потрібно ці дані зазначати?
Згідно роз'яснень ДПС, в тому числі на порталі ЗІР ці дані вказуються лише у випадку проведення оплати чи повернення картою з використанням банківського терміналу. Також всі рядки є обов'язковими до заповнення.
У інших випадках ці дані в чеку зазначати не обов'язково (за виключенням випадків роботи по програмі національний кешбек при оплатах не через термінал)
Розберемо по пунктам що саме має бути вказано в чеку при оплаті картою через банківський термінал згідно вимог:
ідентифікатор еквайра та торгівця або інші реквізити, що дають змогу їх ідентифікувати (рядок 12)
- під даним пунктом мається на увазі зазначення номеру мерчанту (унікальний номер торгівця в банку) та, за наявності, інші реквізити що допоможуть ідентифікувати як еквайра так і торгівця.
ідентифікатор платіжного пристрою (рядок 13)
- в даному рядку зазначається номер або унікальний ідентифікатор конкретного терміналу.
сума комісійної винагороди еквайра (у разі наявності) (рядок 14)
- в даному рядку зазначається сума комісії яку банк стягує з продавця у певному % від суми оплати.
Звертаємо увагу що комісію еквайра з терміналу напряму отримати не можливо, тому потрібно буде виконувати додаткове налаштування згідно вашого способу роботи щоб в чеку зазначалась коректна сума комісії.
вид операції (рядок 15)
- зазначається вид проведеної операції, для чеків на продаж може бути оплата
або продаж
для чеків повернення - повернення
.
реквізити електронного платіжного засобу (платіжної картки) у форматі, що дозволений правилами безпеки емітента або платіжної системи (для електронних платіжних засобів, що використовуються для здійснення операцій у платіжній системі), перед якими друкуються великі літери «ЕПЗ» (рядок 16)
- зазначається номер карти клієнта замаскований зі сторони банку символами *
згідно описаних в пункті правил.
напис «ПЛАТІЖНА СИСТЕМА» (найменування платіжної системи, платіжний інструмент якої використовується, код авторизації або інший код, що ідентифікує операцію в платіжній системі та/або код транзакції в платіжній системі, значення коду) (рядок 17)
- в даному пункті потрібно обов'язково зазаначати платіжну систему та код авторизації. Інші реквізити для ідентифікації платежу, наприклад rrn код, є опціональними.
Нижче розповідаємо що потрібно зробити для того щоб ці дані потрапляли в чек.
В разі формування чеків через вебкабінет Вчасно.Каса вам потрібно підключити термінал через Device Manager та при створенні терміналу вказати % комісії що ваш банк стягує з кожного платежу.
При створенні терміналу комісія зазначається в даному пункті
Деталі по повному налаштуванню і підключенню за посиланням.
Якщо у вас уже був підключений термінал раніше таким способом обов'язково перевірте та вкажіть коректний % комісії в налаштуваннях для подальшого відображення в чеках.
Вказати % комісії можна на сторінці налаштування терміналу у пункті "Додаткові налаштування терміналу".
Комісія в чеку буде зазначатись у вигляді суми яка автоматично порахується згідно суми оплати чи повернення що буде в чеку та % комісії що зазначений в налаштуваннях.
Якщо у вас в налаштуваннях чи при створенні терміналу немає поля для заповнення комісії - виконайте оновлення застосунку до версії 6.3.0 або вище.
У випадку якщо чеки ви формуєте по інтеграції (через Device Manager або через хмарне API Вчасно.Каса) є кілька способів як можна налаштувати передачу даних по еквайрингу в чек.
Який обрати буде залежати напряму від способу роботи з терміналом у вашій касовій програмі.
Якщо робота з терміналом здійснюється через Device Manager налаштування будуть відрізнятись залежно від способу використання терміналу.
Додатково лише потрібно перевірити та вказати % комісії еквайра в налаштуваннях терміналу.
Тег | Тип json даних | Зміст |
---|---|---|
bank_name | string | Назва банку еквайра. Необов'язкове поле. Вказується виключно як інформаційне поле для відображення в формі чеку назви банку еквайра. Дані вказані в це поле не відправляються в ДПС. |
bank_id | string | Ідентифікатор еквайра торгівця. Це номер або код мерчанта в системі банку. |
term_id | string | Ідентифіктор платіжного пристрою. Вказується внутрішній ідентифікатор самого терміналу. |
paysys | string | Назва платіжної системи до якої належить платіжний засіб (карта) покупця. |
rrn | string | Унікальний ідентифікатор транзакції, що надається еквайром та ідентифікує операцію в платіжній системі. По даному ідентифікатору можна здійснювати повернення по раніше проведеним операціям. |
cardmask | string | Замаскований згідно правил платіжної системи номер платіжного засобу (картки) клієнта. |
auth_code | string | Код авторизації, що ідентифікує операцію в платіжній системі. |
commission | number | Сума комісії еквайра (банку) що стягується з продавця (до 2 знаків після коми). Дана комісія не змінює фінальну суму чеку, тобто вона включена до суми чеку. |
commission_included | number | Параметр що визначає яка комісія, включена (1) чи не включена (0) до суми чеку. За замовчуванням 0. При роботі з версіями нижче 6.3 обов'язковий до заповнення із значенням 1 якщо сума commission більше 0 інакше буде виникати помилка при фіскалізації чеку. Не має ніякої дії з версії 6.3 або вище і використовується виключно для попередніх версій застосунку. |
show_additional_info | boolean | Показувати додаткову інформацію на друкованій формі чеку, а саме рядок "Комісія", якщо вона рівна 0. Не має ніякої дії з версії 6.3 або вище і використовується виключно для попередніх версій застосунку. |
oper_type | string | Найменування виду операції. Є необов'язковим. Якщо не заповнено - на чеку та в ДПС буде відображено "Оплата"(для чеків на продаж), та "Повернення"(для чеків на повернення). |
purchase_dt | string | Дата та час авторизації оплати на терміналі в форматі YYYYMMDDHHMMSS. У візуалізації чеку даний час не відображається, лише передається в ДПС. Є обов'язковим лише при участі в програмі Національний кешбек. |
Приклад запиту
{
"ver": 6,
"device": "postgres1",
"type": 1,
"fiscal": {
"cashier": "",
"task": 1,
"receipt": {
"sum": 1456.21,
"pays": [
{
"type": 2,
"sum": 1456.21,
"oper_type": "Оплата",
"show_additional_info": false,
"commission": 18.93,
"paysys": "MASTER",
"rrn": "087619612907",
"cardmask": "XXXXXXXXXXXX5840",
"term_id": "S1K90HCY",
"bank_id": "S1K90HCY",
"bank_name": "ПриватБанк",
"auth_code": "075204",
"purchase_dt": "20250610152646",
}
],
"rows": [
{
"code1": "4044572307200",
"name": "Товар 1",
"cnt": 1,
"price": 1456.21,
"cost": 1456.21,
"taxgrp": 7,
"disc": 0
}
]
}
}
}
В деяких банків, як у прикладі у Приватбанку ідентифікатор мерчанту та терміналу однакові (таку інформацію повертає сам термінал), проте вони можуть бути різні залежно від банку та протоколу роботи з терміналами.
Співвідношення даних у відповіді після оплати по терміналу (дані з об'єкту info
) з даними яку потрібно передати при фіскалізації чеку (в масив об'єктів fiscal.receipt.pays
)
Найменування ключа в info після проведення операції по терміналу | Найменування ключа в fiscal.receipt.pays |
---|---|
termid | term_id |
bankid | bank_id |
bankname | bank_name |
payid | auth_code |
refundid | rrn |
cardmask | cardmask |
paysys | paysys |
purchase_dt | purchase_dt |
commission | commission |
Комісію можна як рахувати з боку касової програми так і заповнити % в налаштуваннях терміналу в Device Manager і передавати при фіскалізації уже готову суму яка буде рахуватись по кожній операції окремо.
При створенні терміналу комісія зазначається в даному пункті
Якщо у вас уже був підключений термінал раніше, обов'язково перевірте та вкажіть коректний % комісії в налаштуваннях для подальшого відображення в чеках.
Вказати % комісії можна на сторінці налаштування терміналу у пункті "Додаткові налаштування терміналу".
Якщо у вас в налаштуваннях чи при створенні терміналу немає поля для заповнення комісії - виконайте оновлення застосунку до версії 6.3.0 або вище.
В даному випадку всі дані які можна отримати з терміналу та комісію яку потрібно порахувати окремо потрібно передавати в запиті на фіскалізацію чеку що був оплачений картою з касової програми.
Тег | Тип json даних | Зміст |
---|---|---|
bank_name | string | Назва банку еквайра. Необов'язкове поле. Вказується виключно як інформаційне поле для відображення в формі чеку назви банку еквайра. Дані вказані в це поле не відправляються в ДПС. |
bank_id | string | Ідентифікатор еквайра торгівця. Це номер або код мерчанта в системі банку. |
term_id | string | Ідентифіктор платіжного пристрою. Вказується внутрішній ідентифікатор самого терміналу. |
paysys | string | Назва платіжної системи до якої належить платіжний засіб (карта) покупця. |
rrn | string | Унікальний ідентифікатор транзакції, що надається еквайром та ідентифікує операцію в платіжній системі. По даному ідентифікатору можна здійснювати повернення по раніше проведеним операціям. |
cardmask | string | Замаскований згідно правил платіжної системи номер платіжного засобу (картки) клієнта. |
auth_code | string | Код авторизації, що ідентифікує операцію в платіжній системі. |
commission | number | Сума комісії еквайра (банку) що стягується з продавця (до 2 знаків після коми). Дана комісія не змінює фінальну суму чеку, тобто вона включена до суми чеку. |
commission_included | number | Параметр що визначає яка комісія, включена (1) чи не включена (0) до суми чеку. За замовчуванням 0. При роботі з версіями нижче 6.3 обов'язковий до заповнення із значенням 1 якщо сума commission більше 0 інакше буде виникати помилка при фіскалізації чеку. Не має ніякої дії з версії 6.3 або вище і використовується виключно для попередніх версій застосунку. |
show_additional_info | boolean | Показувати додаткову інформацію на друкованій формі чеку, а саме рядок "Комісія", якщо вона рівна 0. Не має ніякої дії з версії 6.3 або вище і використовується виключно для попередніх версій застосунку. |
oper_type | string | Найменування виду операції. Є необов'язковим. Якщо не заповнено - на чеку та в ДПС буде відображено "Оплата"(для чеків на продаж), та "Повернення"(для чеків на повернення). |
purchase_dt | string | Дата та час авторизації оплати на терміналі в форматі YYYYMMDDHHMMSS. У візуалізації чеку даний час не відображається, лише передається в ДПС. Є обов'язковим лише при участі в програмі Національний кешбек. |
Приклад запиту
{
"ver": 6,
"device": "postgres1",
"type": 1,
"fiscal": {
"cashier": "",
"task": 1,
"receipt": {
"sum": 1456.21,
"pays": [
{
"type": 2,
"sum": 1456.21,
"oper_type": "Оплата",
"show_additional_info": false,
"commission": 18.93,
"paysys": "MASTER",
"rrn": "087619612907",
"cardmask": "XXXXXXXXXXXX5840",
"term_id": "S1K90HCY",
"bank_id": "S1K90HCY",
"bank_name": "ПриватБанк",
"auth_code": "075204",
"purchase_dt": "20250610152646",
}
],
"rows": [
{
"code1": "4044572307200",
"name": "Товар 1",
"cnt": 1,
"price": 1456.21,
"cost": 1456.21,
"taxgrp": 7,
"disc": 0
}
]
}
}
}
В деяких банків, як у прикладі у Приватбанку ідентифікатор мерчанту та терміналу однакові (таку інформацію повертає сам термінал), проте вони можуть бути різні залежно від банку та протоколу роботи з терміналами.