Bill PaymentExt: відмінності між версіями

Матеріал з SERVIO
Перейти до навігації Перейти до пошуку
Немає опису редагування
Немає опису редагування
 
(Не показані 6 проміжних версій 2 користувачів)
Рядок 49: Рядок 49:
     "ReturnResult": false,
     "ReturnResult": false,
     "Summ": 22000.0,
     "Summ": 22000.0,
     "SystemCode": "4503"
     "SystemCode": "4503",
    "Tips": 28.48,
    "PayInfo": "<?xml version="1.0" encoding="utf-16"?><ROOT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><PAYINFO InvNum="1282" RRN="000019186564" TerminalID="50920432" SignVerif="0" PayType="" PAN="XXXXXXXXXXXX1649" AuthCode="800368" IssuerName="MasterCard" emvAID="A0000000041010" Acquirer="0" MerchantID="40913422" MerchID="40913422" /></ROOT>"
  }
  }
</syntaxhighlight>
</syntaxhighlight>
Рядок 63: Рядок 65:
! scope="col"| Опис
! scope="col"| Опис
|-
|-
|<span style="color:#ff0000"><center>*</center></span>
|
| SystemCode
| SystemCode
| String [32]
| String [32]
Рядок 73: Рядок 75:
| ID рахунку
| ID рахунку
|-
|-
|
|<span style="color:#ff0000"><center>*</center></span>
| PaymentID
| PaymentID
| Int
| Int
Рядок 83: Рядок 85:
| Код карти для типу оплаты картою (в інших ігнорується)
| Код карти для типу оплаты картою (в інших ігнорується)
|-
|-
|
|<span style="color:#ff0000"><center>*</center></span>
| Summ
| Summ
| Int
| Int
| Cума оплати в копійках
| Cума оплати в копійках
|-
|
| Tips
| Decimal
| Cума чайових
|-
|-
|
|
Рядок 103: Рядок 110:
| Повернення файлів для друку на Bluetooth принтер
| Повернення файлів для друку на Bluetooth принтер
|-
|-
|Параметри що використовуються для закриття на номер.  Для  отримання параметрів використовувати функцію GetHMSGuests.
|<span style="color:#ff0000"><center>*</center></span>
| DontClose
| Bool
| Hе закривати рахунок після оплати (за замовчуванням рахунок буде закрито) (необов'язковий параметр)
|-
|-
|
|<span style="color:#ff0000"><center></center></span>
| PayInfo
| String
| Інформація про оплату де:<br>
InvNum - номер інвойсу або номер відстеження в платіжій системі ;<br>
RRN - унікальний ідентифікатор банківської транзакції;<br>
TerminalID - Ідентифікатор терміналу, який використовується для обробки платежу;<br>
SignVerif - 0 ПІдпис не потрібен; 1 Підпис потрібен;<br>
PayType - тип операції, оплата, повернення, видача коштів..;<br>
PAN - Номер рахунку платника (Primary Account Number), який зазвичай маскується для безпеки;<br>
AuthCode - код авторизації, який надається банком або платіжною мережею для підтвердження транзакції;<br>
IssuerName -  назва емітента картки, наприклад, MasterCard або Visa;<br>
emvAID - Поле emvAID в платіжній системі означає Application Identifier (AID), який є ідентифікатором конкретного додатку картки;
Acquirer - ІД торговця, ідентифікатор здобувача, який зазвичай вказує на банк або фінансову установу, що обробляє платіж;<br>
MerchantID та MerchID - Ідентифікатори торговця, які використовуються для ідентифікації продавця в платіжній системі;<br>
Acquirer - Ідентифікатор здобувача, який зазвичай вказує на банк або фінансову установу, що обробляє платіж<br>
|-
!style="width:50%;" scope="row" colspan="4"|Параметри що використовуються тільки для закриття на номер.  Для  отримання параметрів використовувати функцію GetHMSGuests.
|-
|<span style="color:#ff0000"><center>*</center></span>
| AccountID
| AccountID
| Int
| Int
| ID аккаунту (вик. тільки для закриття на номер)
| ID аккаунту
|-
|-
|
|<span style="color:#ff0000"><center>*</center></span>
| DepositID
| DepositID
| Int
| Int
| ID депозиту (вик. тільки для закриття на номер)
| ID депозиту
|-
|-
|
|
| Deposit
| Deposit
| Decimal
| Decimal
| Депозит (вик. тільки для закриття на номер)
| Депозит
|-
|-
|
|
| PaySubType
| PaySubType
| Int
| Int
| Tип закриття (вик. тільки для закриття на номер)
| Tип закриття
|-
|
| DontClose
| Bool
| Hе закривати рахунок після оплати (за замовчуванням рахунок буде закрито) (необов'язковий параметр)
|-
|-
!style="width:50%; background:#accae4;" scope="row" colspan="4"| * Позначення обов’язкового параметру
!style="width:50%; background:#accae4;" scope="row" colspan="4"| * Позначення обов’язкового параметру
Рядок 177: Рядок 201:
|-
|-
|  
|  
| BillType
|<span style="color:#9966CC"> Files</span>
| Int
|<span style="color:#9966CC"> Files []</span>
| Тип рахунку: <br>
| Перелік файлів для Bluetooth принтера при ReturnResult = true
1 – звичайний рахунок;<br>
2 – рахунок закрито і не можна редагувати;<br>
3 – рахунок відкритий і сплачений<br>
4 – рахунок бронювання (для готельної системи за замовчуванням;<br>
8 – рахунок доставки
|-
|
| FirstDate
| Datetime
| Дата початку надання послуг. Для рахунків бронювання обов”язковий параметр, для інших ігнорується
|-
|
| BillID
| Int
| ID рахунку
|-
|
| LastDate
| Datetime
| Дата закінчення надання послуг. Для рахунків бронювання обов”язковий параметр, для інших ігнорується
|-
|
| UserName
| String [64]
| Користувач що створив рахунок
|-
|
| PlaceCode
| String [32]
| Код місця надання послуги для рахунків бронювання, допустиме значення NULL для інших
|-
|
| EventName
| String [32]
| Назва заходу для рахунків бронювання, допустиме значення NULL для інших
|-
|
| CompanyCode
| String [32]
| Код компанії, допустиме значення NULL
|-
|
| CompanyName
| String [32]
| Назва компанії, допустиме значення NULL
|-
|
| Description
| String [500]
| Опис рахунку, допустиме значення NULL
|-
|
| ShortComment
| String [255]
| Короткий коментар до рахунку
|-
|
| Total
| Decimal
| Сума по рахунку
|-
|
| SubTotal
| Decimal
| Сума по рахунку без знижки
|-
|
| IsPrepared
| Boolean
| Ознака підготовки рахунку до закриття (встановлюється перед сплатою рахунку і його закриттям)
|-
|
| Printed
| Datetime
| Дата друку рахунку
|-
|
| Closed
| Datetime
| Дата закриття рахунку
|-
|-
|  
|  
| Locked
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> File
| Datetime
| Дата блокування
|-
|
| IsPaid
| Boolean
| Рахунок сплачений
|-
|
| IsUseCard
| Boolean
| Чи додана до рахунку картка
|-
|
| NumType
| Int
| Вид рахунку (Null якщо немає)
|-
|
| GuestCount
| Int
| Кількість гостей
|-
|
| NumName
| String
| Назва виду рахунку (Null якщо немає)
|-
|
| DeliveryComment
| String
| Коментар до рахунку доставки
|-
|
| DeliveryAddressComment
| String
| Коментар до адреси доставки
|-
|
| DeliveryPersonComment
| String
| Коментар до персони
|-
|
| idTemp
| Int
| Тимчасовий код рахунку
|-
|
| ChangeDate
| Datetime
| Дата зміни
|-
|
| WaitedFrom
| Datetime
|  Дата доставки замовлення (з)
|-
|
| WaitedFor
| Datetime
| Дата доставки замовлення (до)
|-
|
| <span style="color:#ff0000">Items</span>
| <span style="color:#ff0000">BillList [] </span>
| Массив опису номенклатури. Елементи масиву з наступними полями:
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> BillItemID
| Int
| ID позиції рахунку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ParentID
| Int
| ID-вказівник батьківської/базової позиції рахунку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> TarifItemID
| Int
| ID номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ModifierID
|  Int
| ID модифікатора стану (для режиму авторизації)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Name
| String [128]
| Назва номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ShortName
| String [32]
| Коротка назва номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Description
| String [500]
| Опис номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Comment
| String [1024]
| Kоментар до позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Quantity
| Decimal
| Кількість номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Price
| Decimal
| Ціна за одиницю номенклатури
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> SectionID
| Int
| ID відділу
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Total
| Decimal
| Ціна позиції (після знижки или вручну тільки за авторизацією)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ItemType
| String [32]
| Тип суб-позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> PhotoUrl
| String [128]
| Url вказівник на картинку в інтернеті
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ComplexID
| Int
| ID комплексу
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> SubItemName
| String
| Назва номенклатури інгридієнту комплексу за замовчуванням
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Ordered
| Datetime
| Дата замовлення позиції рахунку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Status
| Int
| Статус блюда:<br>
0 – не замовлено,<br>
1 – замовлено,<br>
2 – прийнято в роботу,<br>
4 – готово,<br>
7 – готово до відвантаження
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> IsManualPrice
| Int
| Можливість застосування ручної ціни (для режиму авторизації)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Seat
| Int
| Номер клієнта
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> Pos
| Int
| Порядок виносу
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> BillItemTempID
| Int
| Тимчасовий код
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> TimeOut
| Int
| Через скільки хвилин винос
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> EnterpriseTaxCode
| String
| Код зведення (відповідає поєднанню підприємства і податку)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> TypeID
| Int
| Тип номенклатури (для режиму авторизації)<br>
0 - Надбавка<br>
1 - Продукція (можлива не ціла кількість)<br>
2 - Продукція (поштучно – тільки ціла кількість)<br>
3 - Продукція (за вагою)<br>
4 - Товар (можлива не ціла кількість)<br>
5 - Товар (поштучно – тільки ціла кількість)<br>
6 - Товар (за вагою)<br>
7 -  Послуга
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#ff0000">'''|'''</span> ExciseStamps
| String []
| Масив акцизних марок
|-
|
| <span style="color:#9966CC">Discounts</span>
| <span style="color:#9966CC">DiscountList []</span>
| Масив знижок по рахунку з наступними полями (тільки після авторизації)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> DiscountID
| Int
| ID дисконту
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> BillID
| Int
| ID рахунку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> DiscountType
| Int
| Тип знижки:<br>
1 - картка,<br>
2 - по групі карток, <br>
3 - у відсотковому вираженні, <br>
4 - в грошовому, <br>
5 - акційний купон
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> Applied
| String [128]
| Час застосування
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> OwnerID
| Int
| ID персони
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> OwnerName
| String [500]
| Iм'я персони
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> OwnerCode
| String [1024]
| Kод персони
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> Discount
| Decimal
| Дисконт (% або сума, залежить від DiscountType)
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> CardID
| Int
| ID дисконтної картки
|-
|
| <span style="color:#FF1493">IdTemps </span>
| <span style="color:#FF1493">IdTemp []</span>
| Масив id Temp
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#FF1493">'''|'''</span> idTemp
| Int
| Тимчасовий ID позиції при створенні в рахунку
|-
|
| CodeGUID
| String
| GUID-код
|-
|
| AdvancePay
| Decimal
| Сума передплати
|-
|
| BlockedUserName
| String
| Iм'я користувача що заблокував рахунок
|-
|
| BlockedStationCode
| String
| String
| Код станції з якої заблокували рахунок
| Файл для друку
|-
|-



Поточна версія на 09:21, 31 липня 2024

Функція оплачує рахунок і закриває його

Розділ містить методи, необхідні для оплати рахунку за номером 


Опис Оплата рахунку.
Метод POST
URL /POSExternal/Bill_PaymentExt



Request Headers
KEY VALUE
Content-Type application/json
AccessToken



Body raw (json)
 {
    "AccountID": 0,
    "BillID": 17572,
    "Deposit": 0.0,
    "DepositID": 0,
    "Description": "",
    "DontClose": false,
    "id": 828411040,
    "PaySubType": 0,
    "PaymentID": 2441,
    "ReturnResult": false,
    "Summ": 22000.0,
    "SystemCode": "4503",
    "Tips": 28.48,
    "PayInfo": "<?xml version="1.0" encoding="utf-16"?><ROOT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><PAYINFO InvNum="1282" RRN="000019186564" TerminalID="50920432" SignVerif="0" PayType="" PAN="XXXXXXXXXXXX1649" AuthCode="800368" IssuerName="MasterCard" emvAID="A0000000041010" Acquirer="0" MerchantID="40913422" MerchID="40913422" /></ROOT>"
 }



Типи даних Body
* Параметр Тип Опис
SystemCode String [32] Код системи
*
BillID Int ID рахунку
*
PaymentID Int ID оплати
CardCode String Код карти для типу оплаты картою (в інших ігнорується)
*
Summ Int Cума оплати в копійках
Tips Decimal Cума чайових
Description String [500] Подробиці оплати (бажано додавати зміну за якої була проведена оплата, RRN, код карти, номер розрахункового рахунку, і т.д.)
BonusSum Decimal Cума бонусів
ReturnResult Bool Повернення файлів для друку на Bluetooth принтер
*
DontClose Bool Hе закривати рахунок після оплати (за замовчуванням рахунок буде закрито) (необов'язковий параметр)
PayInfo String Інформація про оплату де:

InvNum - номер інвойсу або номер відстеження в платіжій системі ;
RRN - унікальний ідентифікатор банківської транзакції;
TerminalID - Ідентифікатор терміналу, який використовується для обробки платежу;
SignVerif - 0 ПІдпис не потрібен; 1 Підпис потрібен;
PayType - тип операції, оплата, повернення, видача коштів..;
PAN - Номер рахунку платника (Primary Account Number), який зазвичай маскується для безпеки;
AuthCode - код авторизації, який надається банком або платіжною мережею для підтвердження транзакції;
IssuerName - назва емітента картки, наприклад, MasterCard або Visa;
emvAID - Поле emvAID в платіжній системі означає Application Identifier (AID), який є ідентифікатором конкретного додатку картки; Acquirer - ІД торговця, ідентифікатор здобувача, який зазвичай вказує на банк або фінансову установу, що обробляє платіж;
MerchantID та MerchID - Ідентифікатори торговця, які використовуються для ідентифікації продавця в платіжній системі;
Acquirer - Ідентифікатор здобувача, який зазвичай вказує на банк або фінансову установу, що обробляє платіж

Параметри що використовуються тільки для закриття на номер. Для отримання параметрів використовувати функцію GetHMSGuests.
*
AccountID Int ID аккаунту
*
DepositID Int ID депозиту
Deposit Decimal Депозит
PaySubType Int Tип закриття
* Позначення обов’язкового параметру
Додатковий опис вихідних параметрів



Response (json)
{
    "Error": "",
    "Success": true,
    "Files": []
}



Типи даних Response
* Параметр Тип Опис
Error String [] Опис помилки, що виникла
Success Bool Успіх виконання запиту
Files Files [] Перелік файлів для Bluetooth принтера при ReturnResult = true
     | File String Файл для друку
* Позначення обов’язкового параметру
Додатковий опис вхідних параметрів