Link Поиск Меню Развернуть Документ

Создание заказа

Для создания заказа, необходимо вызвать следующий метод API:

Пример запроса
POST /v3/billing/api/order/order
Authorization: Bearer b37c4c689295904ed21eee5d9a48d42e
Content-Type: application/json
User-Agent: MyApp 1.0
Accept: application/json
{
  "merchantId": "01771534-196a-1105-839a-82422289d6d9",
  "merchantOrderId": "m-1608560079",
  "amount": 371.88,
  "successUrl": "https://merchant.ru/order/xxx?result=success",
  "failUrl": "https://merchant.ru/order/xxx?result=fail",
  "returnUrl": "https://merchant.ru/order/xxx?result=return",
  "vatAmount": 61.98,
  "basketItems": [
    {
      "sku": "5fe0adcfa7fb4",
      "name": "Бронирование номера",
      "measure": "шт.",
      "measureCode": "796",
      "grossWeight": 0,
      "netWeight": 0,
      "quantity": 3,
      "amount": 123.96,
      "amountWoVat": 103.3,
      "totalAmount": 371.88,
      "totalVatAmount": 61.98,
      "vatCode": "RUS_VAT20",
      "type": "service",
      "paymentType": "full_prepayment"
    }
  ],
  "metaData": {
    "@type": "LodgingReservation",
    "reservationId": "abc456",
    "reservationStatus": "https://schema.org/ReservationConfirmed",
    "underName": {
      "@type": "Person",
      "name": "John Smith"
    },
    "reservationFor": {
      "@type": "LodgingBusiness",
      "name": "Hilton San Francisco Union Square",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "333 O'Farrell St",
        "addressLocality": "San Francisco",
        "addressRegion": "CA",
        "postalCode": "94102",
        "addressCountry": "US"
      },
      "telephone": "415-771-1400"
    },
    "checkinTime": "2017-04-11T16:00:00-08:00",
    "checkoutTime": "2017-04-13T11:00:00-08:00"
  },
  "expirationDate": "2020-12-22T00:00:00+00:00",
  "languageId": "ru",
  "currencyId": "RUB",
  "description": "Оплата номера в отеле",
  "customer": {
    "type": "private",
    "name": "Peter",
    "phone": "79001112233",
    "email": "peter@domain.com",
    "vatNumber": "",
    "registrationAddress": ""
  }
}

CreateOrderRequest

СвойствоОбязательноеТипОписаниеПример значения
descriptionдаstring(1000)Описание заказаОплата номера в отеле
merchantIdдаstring(36)Идентификатор магазина01771534-1a57-f184-dee3-ebeb91dded76
merchantOrderIdдаstring(256)Идентификатор заказа в учётной системе магазина, должен быть уникальнымO-12345
merchantOrderIdVisibleнетstring(256)Номер заказа, отображаемый на платежной странице. Если не заполнено, показывается значение из merchantOrderId111TN22-33
amountдаfloatСумма заказа, ограничений нет19658.45
vatAmountдаfloatСумма НДС156.56
currencyIdдаstring(3) enumКод валюты заказа в соответствии с ISO 4217RUB, USD,EUR, GBP
languageIdнетstring(2) enumЯзык интерфейса платежной страницыru, en
expirationDateдаdatetimeСрок действия заказа2020-12-22T00:00:00+00:00
basketItemsдаarray of BasketItemКорзина заказа 
metaDataнетobjectДополнительные данные заказа 
customerдаCustomerИнформация о заказчике 
notificationUrlнетstring(1000)URL для отправки уведомлений об изменениях статуса заказа, по умолчанию используется URL из настроек магазина 
successUrlнетstring(1000)Ссылка для перехода на сайт Магазина в случае успешной оплаты 
failUrlнетstring(1000)Ссылка для перехода на сайт Магазина в случае ошибки оплаты 
returnUrlнетstring(1000)Ссылка для возврата на сайт Магазина 
invoiceSettingнетInvoiceSettingДополнительные настройки параметров оплаты 
orderSettingнетOrderSettingДополнительные настройки параметров заказа 
parentIdнетstring(36)Идентификатор базового заказа, применимо для создания корректирующих заказов01771534-196a-1105-839a-82422289d6d9
orderContainerIdнетstring(36)Идентификатор основного заказа, применимо для добавления заказа к уже существующему счёту01771534-196a-1105-839a-82422289d6d9
shopIdнетstring(36)Идентификатор связанного магазина/маркетплейса06581534-196a-1105-839a-82422289d6d9

OrderResponse

Повторяет свойства объекта CreateOrderRequest с дополнительными свойствами:

СвойствоОбязательноеТипОписаниеПример значения
idдаstring(36)Идентификатор заказа в системе Инвойсбокс01771534-1a57-f184-dee3-ebeb91dded75
paymentUrlдаstring(1000)Ссылка для перехода на платёжный шлюз для оплаты заказа 
createdAtдаdatetimeДата создания заказа2020-12-22T00:00:00+00:00
statusдаstring(50) enumСтатус заказаcompleted
paidAtнетdatetimeДата оплаты заказа (если оплачен)2020-12-22T00:00:00+00:00

В зависимости от сценария использования API, ссылка для перехода на платёжный шлюз (paymentUrl) может быть получена для переадресации пользователя в браузере или же закодирована в QR-коде для дальнейшего его сканирования камерой или приложением Инвойсбокс.

Customer

СвойствоОбязательноеТипОписаниеПример значения
typeнетstring(10) enumТип заказчикаlegal - юр. лицо, private - физ лицо
nameнетstring(500)ИмяPeter
phoneнетstring(100)Номер телефона79001112233
emailнетstring(100)Электронная почтаpeter@domain.com
vatNumberнетstring(20)ИНН7710044140
taxRegistrationReasonCodeнетstring(9)КПП770201001
registrationAddressнетstring(1000)Юр. адресс190000, Санкт-Петербург, Невский пр. 147, офис 321

BasketItem

Корзина заказа. Пожалуйста, внимательно ознакомьтесь с требованиями по заполнению наименования номенклатуры.

СвойствоОбязательноеТипОписание
skuдаstring(500)Артикул, например: 5fe0adcfa7fb4
nameдаstring(500)Наименование, например Бронирование номера
groupNameнетstring(500)Наименование группы позиций заказа, используется для формирования отчетных документов
measureдаstring(10)Единица измерения (для России - по ОКЕИ), например шт.
measureCodeдаstring(4)Код единицы измерения (для России - по ОКЕИ), например 796
originCountryнетstring(20)Страна происхождения товара, например, Россия
originCountryCodeнетstring(4)Код страны происхождения, например, Россия 643
grossWeightнетfloatВес брутто, например 125.45
netWeightнетfloatВес нетто, например 125.45
quantityдаfloatКоличество, например 3
amountдаfloatСтоимость единицы, например 100.55, ограничений нет
amountWoVatдаfloatСтоимость единицы без учета НДС
totalAmountдаfloatСтоимость всех единиц с НДС, например123.55
totalVatAmountдаfloatИтого сумма НДС, например 23
exciseнетfloatСумма акциза, например, 10.00
vatCodeдаstring(20) enumКод процента НДС, допустимые значения: VATNONE - не облагается,VATNONE - не облагается, RUS_VAT0 - 0%, RUS_VAT10 - 10%, RUS_VAT20 - 20%
typeдаstring(10) или intТип позиции, в соответствии со справочником или service - Услуга, commodity - Товар
serviceDateнетdateДата оказания услуги, если тип позиции = Услуга, например, 2023-11-16
paymentTypeдаstring(20) enumТип оплаты, допустимые значения: full_prepayment, prepayment, advance, full_payment
categoryTypeпри наличие categorystring(20) enumСправочник категории товаров: merchantHonestSignMap (Справочник категорий магазина) или honestSign (Честный знак)
categoryнетstring(20) enumТоварная группа в справочнике категорий товаров магазина или системы Честный знак: milk, water и т.д.
metaDataнетobjectДополнительные данные элемента корзины

InvoiceSetting

СвойствоОбязательноеТипОписаниеПример значения
customerLockedнетboolЗапретить изменение реквизитов плательщика (всех)true - запретить изменения, по умолчанию false
customerLockedFieldsнетarrayНабор полей из Customer, которые требуется запретить для редактирования на платежной странице['type', 'name', 'phone', 'email', 'vatNumber', registrationAddress']
paymentMethodIdLockedнетboolЗапретить изменение способа оплаты (платёжного инструмента)true - запретить изменения, по умолчанию false
paymentMethodIdнетintИдентификатор предвыбранного способа оплаты (платёжного инструмента)123

OrderSetting

СвойствоОбязательноеТипОписание
roundPolicyнетstring(20)
enum
Тип округления итоговой суммы заказа. По умолчанию strict. Допустимые значения: strict - без округления, строгое соответствие, none - без округления, допустимо когда quantity * amount <= totalAmount, floor - округление к наименьшему целому, ceil - округление к наибольшему целому, halfUp - 0.50 округляется до большего целого, halfDown - 0.50 окруляется до меньшего целого. По умолчанию - none

Читать далее »