Заказы в интернет-магазине

Заказы

Вы можете использовать API для получения заказов в вашу учетную систему. Вы можете хранить номера заказов из своей учетной системе в поле code и потом использовать его в своих запросах к сайту. Чтобы не получать дважды загруженные заказы используйте параметр exchange в запросах получения заказов. После получения заказ, присвойте заказу exchange равный 1.

Список заказов

Получает список заказав. Список можно фильтровать и производить поиск.

Путь: /wp-json/usam/v1/orders

Метод запроса: GET

  • fields — массив, содержащий дополнительные поля. products — товары, shipping — документы отгрузки, payments — документы оплаты, taxes — налоги заказа, properties — свойства заказа (не обязательный);
  • search — поиск по номеру заказа, по артикулу товара, по названию товара, по телефону, электронной почте или адресу покупателя (не обязательный);
  • status — массив кодов статусов заказов (не обязательный);
  • exchange — заказы для выгрузки если 1, если 0 или параметр отсутствует все заказы (не обязательный);
  • bank_account_id — номер продавец заказа (не обязательный);
  • paid — число статуса оплаты, где 0 не оплаченные, 1 частично оплаченные, 2 оплаченные полностью (не обязательный);
  • count — количество заказов, по умолчанию 10 заказов (не обязательный);
  • paged — страница списка (не обязательный);

properties содержит данные покупателя.

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

Запрос для получения всех заказов, не выгруженных в стороннюю учетную систему:

{
   "fields": ["products","shipping","payments","properties"],
   "exchange": 1 
}

Заказ

Получает данные указанного заказа

Путь: /wp-json/usam/v1/order/(номер заказа)

Метод запроса: GET

Возвращает

{"id":"11615", "bank_account_id":"4", "number":"ИН0000011248", "totalprice":"933.00", "cost_price":"0.00", "type_price":"tp_1", "paid":"0", "date_paid":null,"code":"", "status":"waiting_payment", "type_payer":"1", "user_ID":"1", "contact_id":"12567", "company_id":"0", "manager_id":"0", "date_insert":"2021-10-28 12:13:27", "date_status_update":"2021-10-28 12:13:27", "shipping":[{"id":"10631", "order_id":"11615", "courier":"0", "name":"Курьером", "customer_id":"0", "customer_type":"company", "status":"pending", "track_id":"","doc_number":"","doc_data":null,"method":"2", "storage_pickup":"0", "storage":"1", "notes":"","totalprice":"933.00", "price":"200.00", "include_in_cost":"0", "date_insert":"2021-10-28 12:13:27", "date_delivery":null,"readiness_date":null,"readiness":"0", "export":"0", "tax_id":"0", "tax_name":"","tax_value":"0.00000", "tax_is_in_price":"1", "tax_rate":"0"}],"coupon_name":"","notes":null,"source":"order", "number_products":"2", "order_type":"order", "customer":{"billingfirstname":{"value":"тест", "name":"Имя"},"billinglastname":{"value":"Матейкин", "name":"Фамилия"},"company":{"value":false,"name":"Название компании"},"inn":{"value":false,"name":"ИНН"},"ppc":{"value":false,"name":"КПП"},"contact_person":{"value":false,"name":"Контактное лицо"},"company_email":{"value":false,"name":"Email"},"company_phone":{"value":false,"name":"Телефон"},"company_shippinglocation":{"value":false,"name":"Местоположение"},"billingmobilephone":{"value":"99999999999", "name":"Мобильный Телефон"},"company_shippingaddress":{"value":false,"name":"Адрес"},"billingphone":{"value":false,"name":"Телефон"},"billingemail":{"value":"it@radov39.ru", "name":"Email"},"shippinglocation":{"value":"981", "name":"Местоположение"},"shippingaddress":{"value":"yhtr", "name":"Адрес"},"shippingnotesclient":{"value":"","name":"Заметки к заказу"},"company_adr":{"value":false,"name":"Юридический адрес"}},"products":[{"id":"40485", "product_id":"32536", "name":"Миска Ретро-Спешл 2,4 л пластиковая крышка", "order_id":"11615", "old_price":"930.00", "product_day":"0", "price":"744.00", "purchase_price":"0.00", "quantity":"1.000", "unit_measure":"thing", "bonus":"37", "subscribed":"0", "date_insert":"2021-10-28 12:13:27"},{"id":"40486", "product_id":"47165", "name":"Тарелка Океан Эклипс 20 см", "order_id":"11615", "old_price":"66.00", "product_day":"0", "price":"63.00", "purchase_price":"0.00", "quantity":"3.000", "unit_measure":"thing", "bonus":"3", "subscribed":"0", "date_insert":"2021-10-28 12:13:27"}],"payment":[{"id":"10992", "document_type":"","document_id":"11615", "bank_account_id":"4", "document_number":"PH0000000010564", "external_document":"","date_payed":null,"date_insert":"2021-11-05 13:06:53", "note":"","sum":"933.00", "order_id":"0", "name":"Оплата картой через Сбербанк", "status":"1", "payment_type":"card", "gateway_id":"13", "gateway":"","transactid":""},{"id":"10991", "document_type":"","document_id":"11615", "bank_account_id":"4", "document_number":"PH0000000010563", "external_document":"","date_payed":null,"date_insert":"2021-11-05 13:06:48", "note":"","sum":"933.00", "order_id":"0", "name":"Оплата картой через Сбербанк", "status":"1", "payment_type":"card", "gateway_id":"13", "gateway":"","transactid":""},{"id":"10990", "document_type":"","document_id":"11615", "bank_account_id":"4", "document_number":"PH0000000010562", "external_document":"","date_payed":null,"date_insert":"2021-11-05 11:59:08", "note":"","sum":"933.00", "order_id":"0", "name":"Оплата картой через Сбербанк", "status":"1", "payment_type":"card", "gateway_id":"13", "gateway":"","transactid":""},{"id":"10989", "document_type":"","document_id":"11615", "bank_account_id":"4", "document_number":"PH0000000010561", "external_document":"","date_payed":null,"date_insert":"2021-11-05 11:57:01", "note":"","sum":"933.00", "order_id":"0", "name":"Оплата картой через Сбербанк", "status":"1", "payment_type":"card", "gateway_id":"13", "gateway":"","transactid":""},{"id":"10983", "document_type":"order", "document_id":"11615", "bank_account_id":"4", "document_number":"PH0000000010555", "external_document":"","date_payed":null,"date_insert":"2021-10-28 12:13:27", "note":"","sum":"933.00", "order_id":"0", "name":"Оплата картой через Сбербанк", "status":"1", "payment_type":"card", "gateway_id":"13", "gateway":"","transactid":""}],"taxes":[]}
  • id — номер заказа
  • code — внешний номер заказа
  • number — номер заказа, назначаемый по выбору менеджера сайта
  • bank_account_id — номер компании продавца
  • totalprice — полная сумма заказа
  • cost_price — себестоимость
  • type_price — тип цены
  • paid — статус оплаты
  • date_paid — дата оплаты
  • status — код статуса заказа
  • type_payer — тип платильщика
  • user_ID — номер покупателя, если он зарегистрирован
  • contact_id — номер покупателя в базе CRM
  • company_id — номер компании в базе CRM
  • manager_id — номер менеджера
  • date_insert — дата заказа
  • date_status_update — дата обновления статуса
  • shipping — массив документов отгрузок
  • products — массив товаров заказа
  • payments — массив документов оплаты
  • properties — данные покупателя и другие свойства заказа
  • taxes — массив налогов на товары

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

Получить данные 10 заказа

 /wp-json/usam/v1/order/10

Обновить заказ

Обновить данные указанного заказа, например, обновит данные 10 заказа /wp-json/usam/v1/order/10

Путь: /wp-json/usam/v1/order/(номер заказа)

Метод запроса: POST

  • status — новый статус заказа (не обязательный);
  • bank_account_id — новый продавец заказа (не обязательный);
  • manager_id — номер менеджера (не обязательный);
  • code — внешний номер заказа (не обязательный);
  • exchange — обмен произведен, число 1 или 0 (не обязательный);

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

Указать что 10 заказ выгружен во внешнюю учетную систему:

 /wp-json/usam/v1/order/10

{
   "exchange": 1 
}

Возвращает

true если заказ обновлен или false если заказ не обновлен

Создать заказ

Получает список заказав. Список можно фильтровать и производить поиск.

Путь: /wp-json/usam/v1/orders

Метод запроса: POST

  • status — код статуcа заказа (не обязательный);
  • bank_account_id — номер продавец заказа (не обязательный);
  • type_price — тип цены (не обязательный);
  • manager_id — номер менеджера (не обязательный);
  • code — внешний номер заказа (не обязательный);
  • type_payer — тип плательщика (не обязательный);
  • products — массив товаров (обязательный);
  • properties — массив свойств заказа (не обязательный);

properties содержит данные покупателя и содержит массив где ключ это код свойства заказа, а значение элемента массива это значение свойства. Пpимер:

{["billingfirstname":"Сергей", "billingphone":"89218009089"]}

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

 /wp-json/usam/v1/orders

{
  "status": "received",
  "type_price": "tp_1",
  "code": "sdefsd23435",
  "products": [{"code":"rftreg","price":345},{"code":"123hfgj","price":2145}],
  "properties": {"billingfirstname":"Алексей","billinglastname":"Кузин","billingphone":"89039009090"}
}

Массовые обновления заказов

Массовое обновление заказов

Путь: /wp-json/usam/v1/orders

Метод запроса: PUT

  • items — массив содержащий данные для обновления заказа (обязательный)

Данные, которые содержит items

  • status — новый статус заказа (не обязательный);
  • bank_account_id — новый продавец заказа (не обязательный);
  • exchange — обмен произведен, число 1 или 0 (не обязательный);
  • code — код заказа во внешней учетной системе (не обязательный);

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

Пометим, что заказы 1,2,3 выгружены и больше не нуждаются в выгрузке

 /wp-json/usam/v1/orders

{
"items": [{
       "id": 1,
       "exchange": 1
     },
    {
       "id": 2,
       "exchange": 1
    },
    {
       "id": 3,
       "exchange": 1
    }] 
}

или если использовать code вместо id заказа

 /wp-json/usam/v1/orders

{
"items": [{
       "code": "sdfkjliji",
       "exchange": 1
     },
    {
       "code": "1sddd65",
       "exchange": 1
    },
    {
       "code": "fsfdd65",
       "exchange": 1
    }] 
}

Возвращает

количество обновленных заказов