POST /retail
Запрос
Тело запроса (объект DoRetail_Request )
Поле | Описание | Тип | Обязательное |
---|---|---|---|
phone |
Номер телефона клиентов |
string |
Да |
items |
Позиции чека |
Массив RetailItem |
Да |
bonusDebit |
Сумма бонусов, которую требуется списать для чека |
decimal |
Да |
externalId |
Идентификатор чека во внешней системе |
string | |
tags | Массив int | ||
desc |
Примечание |
string | |
date |
Дата проведения продажи |
string | |
store |
Магазин |
string | |
coupons |
Купоны, применяемые к чеку |
Массив string | |
cashier |
Идентификатор кассира |
int | |
AppDomain | string | ||
Host | string | ||
certificate |
Магазин |
bool | |
reserveId | string | ||
giftCards | Массив DoRetailGiftCard |
Пример запроса
application/json, text/json
Sample:
{ "phone": "sample string 2", "items": [ { "sum": 1.0, "qnt": 2.0, "product": "sample string 3", "ds": 4.0, "cat": "sample string 5", "label": "2bbe4a2a-ed64-468f-b84c-98d187288302", "ext": "sample string 6", "price": 1.0, "firstCost": 1.0, "costPrice": 1.0, "sellMode": "sample string 7" }, { "sum": 1.0, "qnt": 2.0, "product": "sample string 3", "ds": 4.0, "cat": "sample string 5", "label": "2bbe4a2a-ed64-468f-b84c-98d187288302", "ext": "sample string 6", "price": 1.0, "firstCost": 1.0, "costPrice": 1.0, "sellMode": "sample string 7" } ], "bonusDebit": 3.0, "externalId": "sample string 4", "tags": [ 1, 2 ], "desc": "sample string 5", "date": "sample string 6", "store": "sample string 7", "coupons": [ "sample string 1", "sample string 2" ], "cashier": 1, "AppDomain": "sample string 8", "Host": "sample string 9", "certificate": true, "reserveId": "sample string 11", "giftCards": [ { "id": "sample string 1", "paymentSum": 2.1 }, { "id": "sample string 1", "paymentSum": 2.1 } ] }
Ответ
Тело ответа ( объект RetailResult )
Поле | Описание | Тип | Обязательное |
---|---|---|---|
id |
Идентификатор продажи в БонусПлюс |
int |
Да |
orderUid |
Идентификатор продажи в БонусПлюс |
GUID | |
orderUrl |
Ссылка на чек |
string | |
customer |
Клиент |
Customer |
Да |
Пример ответа
application/json, text/json
Sample:
{ "id": 1, "orderUid": "9ae70993-9941-4dc5-81eb-5b061217546e", "orderUrl": "sample string 3", "customer": { "multiplicityDebitBonus": 1.0, "phone": "sample string 1", "id": "de6b5f3e-54df-416e-8d25-18f8ebb5e0cd", "discountCardTypeId": 3, "discountCardNumber": "sample string 4", "discountCardName": "sample string 5", "parentphone": "sample string 6", "availableBonuses": 7.0, "notActiveBonuses": 8.0, "lastPurchaseDate": "2025-09-15T20:44:29.5345279+03:00", "firstPurchaseDate": "2025-09-15T20:44:29.5345279+03:00", "totalBonusCredit": 9.0, "totalBonusDebit": 10.0, "person": { "fn": "sample string 1", "ln": "sample string 2", "mn": "sample string 3", "sex": "Female", "email": "sample string 4", "desc": "sample string 5", "birthDay": "sample string 6", "profileInstagram": "sample string 7", "profileVkontakte": "sample string 8", "profileOdnoklassniki": "sample string 9", "address": "sample string 10", "utmSource": "sample string 11", "creationDate": "2025-09-15T20:44:29.5345279+03:00", "lastUpdateDate": "2025-09-15T20:44:29.5345279+03:00", "createdInStore": "sample string 13", "disablePromoSMS": true, "relatives": [ { "birthDay": "sample string 1", "sex": "Female", "name": "sample string 2" }, { "birthDay": "sample string 1", "sex": "Female", "name": "sample string 2" } ], "createdInStoreId": 1, "lastOperationStoreID": 1, "createdByCashierId": 1 }, "purchasesTotalSum": 11.0, "purchasesSumToNextCard": 12.0, "nextCardName": "sample string 13", "regressEnabled": true, "bonusDebitDenided": true, "nearestBonusesExpirationAmount": 16.0, "avgPurchasesTotal": 17.0, "nearestBonusesExpirationDate": "sample string 18", "purchasesCount": 19, "confirmed": true, "inviteCode": "sample string 21", "registrationSourceId": "sample string 22", "baseDiscountPercent": 23.0, "baseBonusDebitPercent": 24.0, "baseBonusCreditPercent": 25.0, "telegramBotStatus": 26, "telegramBotRegistrationDate": "2025-09-15T20:44:29.5345279+03:00", "eCardStatusID": 1, "vkStatusID": 1, "disableAllMessages": true, "isBlocked": true, "archived": true } }