Передача заказа

Версия 1.2 от 01.01.2001

Передача заказов в систему заказчика

Для передачи заказа в систему заказчика предлагается на сервере заказчика подготовить страницу (URL адрес), которая может принимать POST запросы. В качестве POST запроса будет являться заказ в формате JSON.

Пример адреса http://notissimus.com/api/add-order

Входные данные

В качестве данных передается структурированная модель заказа. Общий основных блоков данных

    Order
      Products

Параметр

Тип

Значение

CreationDate

Дата

Дата и время

AuthCode

Строка

Код, полученный в процессе авторизации.

Address

Строка

Адрес доставки. Адрес доставки передается одной строкой.

AddressModel

Объект (AddressModel)

Объект, содержащий информацию об адресе в виде отдельных полей (улица, дом, квартира и т. д.).

Comment

Строка

Комментарий

DeliveryDate

Дата?

Дата и время доставки. Может быть null.

DeliveryTime

Строка

Время доставки (если выбирается из списка или невозможно представить в виде модели)

Products

Список продуктов (модели Product)

Name

Строка

Имя покупателя

Email

Строка

Электронная почта

Phone

Строка

Телефон

City

Строка

Город

DeliveryType

Число

Выбранный тип доставки
Возможные значения:

    1 — Доставка на дом 2 — Самовывоз 3 — Бронь 4 — EMS 5 — Почта России 6 — PickPoint 7 — СПСР 8 — DPD

ShopId

Число

Идентификатор магазина в системе заказчика. Заполняется при определенном выборе типа доставки.

PromoCodes

Список промокодов, купонов на скидку или списания бонусных баллов с карты

ClientDeliveryTypeId

Строка

Id способа доставки (в системе клиента)

ClientPaymentTypeId

Строка

Id способа оплаты (в системе клиента)

Параметры, вложенные в Products

ID

Строка

Идентификатор товара из выгрузки

Name

Строка

Название товара

Quantity

Число

Количество товаров в заказе

Price

Число (цена)

Цена одного товара

RelatedItems

Топпинги к товару. Имеют такую же структуру, как и товары.

Параметры, вложенные в PromoCodes

Type

Число

Тип запрашиваемой информации
Возможные значения:

    1 – Бонусная карта 2 – Купон (промокод)

Value

Число (цена)

Значение скидки, применяемое к заказу. Например, для бонусной карты количество списываемых бонусов

Code

Строка

Код купона или номер дисконтной карты

Параметры, вложенные в AddressModel

City

Строка

Город

Index

Число

Индекс

Street

Строка

Улица

MetroStation

Строка

Станция метро

House

Число

Номер дома

Corpus

Строка

Корпус

Flat

Число

Номер квартиры

Floor

Число

Этаж

Porch

Строка

Подъезд

Пример json запроса

{
"Address":"Санкт-Петербург, Хасанская 2/1",

  "AddressModel":

  {

  "City": “Санкт-Петербург”,

  "Street": “Хасанская”,

  "House": 2,

  "Corpus": 1,

  "Flat": 123

  },
"Comment":"Комментарий",
"CreationDate":"25-02-2014 14:00",
"Email":"*****@***ru",
"Name":"Иванов Иван",
"Phone":"+ 7 (921) 999-99-99",
"DeliveryType":1,
"ShopId":33112,
"City":"Санкт-Петербург",
"AuthCode":"q2n2ufd9n08r7vg34=",
"Products":[
{
"ID":111,
"Name":"Платье",
"Price":76.43,
"Quantity":2,
"RelatedItems":[
{
"ID":222,
"Name":"Ремень",
"Price":55.43,
"Quantity":1
}
]
}
],
"PromoCodes":[
{
"Type":1,
"Code":"10289371203912",
// К заказу применяются баллы с дисконтной карты, передается номер ДК и кол-во списываемых баллов
"Value":500
},
{
"Type":2,
"Code":"LETO_2015" // К заказу применяется купон на скидку (скидка высчитывается на сервере клиента)
}
]
}


Выходные данные

Если заказ успешно добавлен в базу данных заказчика следует вернуть идентификатор заказа.

{
"ID":11111,
"Error":false
}

Если добавление заказа завершилось ошибкой следует вернуть сообщение об ошибке.

{
"Error":true,
"Message":"Сообщение об ошибке"
}


История

1.2

Поле AddressFull переименовано в AddressModel.

1.1

Добавлена передача информации о купонах и активированных скидках.

Убрано поле PromoCode из передачи в заказе. Добавлен список PromoCodes.