POST /retail
Проведение продажи в БонусПлюс
Запрос
Тело запроса (объект DoRetail_Request )
| Поле | Описание | Тип | Обязательное |
|---|---|---|---|
| phone |
Номер телефона клиентов |
string |
Да |
| items |
Позиции чека |
Массив RetailItem |
Да |
| bonusDebit |
Сумма бонусов, которую требуется списать для чека |
decimal |
Да |
| externalId |
Идентификатор чека во внешней системе |
string | |
| tags |
Таги |
Массив int | |
| desc |
Примечание |
string | |
| date |
Дата проведения продажи |
string | |
| store |
Магазин |
string | |
| coupons |
Купоны, применяемые к чеку |
Массив string | |
| cashier |
Идентификатор кассира |
int | |
| reserveId |
Id резерва |
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": "3c1ee58e-547f-4005-835b-b9afc9a3fd67",
"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": "3c1ee58e-547f-4005-835b-b9afc9a3fd67",
"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,
"certificate": true,
"reserveId": "sample string 9",
"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": "7a5b3e98-9f7b-4e18-93c1-ba9899aa25de",
"orderUrl": "sample string 3",
"customer": {
"multiplicityDebitBonus": 1.0,
"phone": "sample string 1",
"id": "0c2f7a87-8a4a-4220-89e9-42dbf2f54af3",
"discountCardTypeId": 3,
"discountCardNumber": "sample string 4",
"discountCardName": "sample string 5",
"parentphone": "sample string 6",
"availableBonuses": 7.0,
"notActiveBonuses": 8.0,
"lastPurchaseDate": "2026-01-07T09:56:36.230885+03:00",
"firstPurchaseDate": "2026-01-07T09:56:36.230885+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": "2026-01-07T09:56:36.230885+03:00",
"lastUpdateDate": "2026-01-07T09:56:36.230885+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"
}
],
"significantDates": [
{
"id": "b8365c98-40d1-41fc-9062-a0018d504ee1",
"significantDateId": "6983459a-776c-4f92-aff3-f724438c2d28",
"significantDateType": 3,
"name": "sample string 4",
"date": "2026-01-07T09:56:36.230885+03:00",
"sex": 1
},
{
"id": "b8365c98-40d1-41fc-9062-a0018d504ee1",
"significantDateId": "6983459a-776c-4f92-aff3-f724438c2d28",
"significantDateType": 3,
"name": "sample string 4",
"date": "2026-01-07T09:56:36.230885+03:00",
"sex": 1
}
],
"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": "2026-01-07T09:56:36.230885+03:00",
"eCardStatusID": 1,
"vkStatusID": 1,
"disableAllMessages": true,
"isBlocked": true,
"archived": true
}
}