# Импорт клиентов
# Запрос для импорта нескольких клиентов
METHOD POST
URI /v1/client/import/
AUTH Bearer <token>
# Параметры
[client, client...]
где client
имеет следующие атрибуты
Название | Тип | Обязательный | Описание |
---|---|---|---|
id | string(255) | true | Идентификатор в экспортирующей системе |
external_id | integer(11) | false | Идентификатор в принимающей системе |
username | string(255) | true | Имя или название организации |
account_number | integer(11) | true | Абонентский номер |
phones | array | true | Список телефонов, например [+79191991919,+7 (818) 188-18-18] |
requisites | object | false | Реквизиты |
loyalty_system_is_active | boolean | false | Включена ли система лояльности для клиента |
legal_address | object | true | Юридический адрес |
comment | string | false | Комментарий к клиенту - для внутреннего пользования(клиент не фидит этого комментария) |
type | range in 'org', 'fiz' | false | Тип клиента org - организация(юридическо лицо или ИП) fiz - физическое лицо |
string(255) | false | Электронная почта | |
addresses | array | false | Список адресов |
product_price_list | array | false | Список индивидуальных цен на товары |
Атрибуты объекта "Юридический адрес" legal_address
Название | Тип | Обязательный | Описание |
---|---|---|---|
str | string | true | Юридический адрес в виде строки |
Атрибуты объекта "Реквизиты" requisites
Название | Тип | Обязательный | Описание |
---|---|---|---|
inn | string(255) | true | ИНН |
kpp | string(255) | true | КПП |
correspondent_account | string(255) | true | Корреспондентский счет |
account_number | string(255) | true | Расчетный счет |
bik | string(255) | true | БИК |
bank_name | string(255) | true | Название банка |
Список адресов addresses
включает в себя объекты адресов [address, address...]
со следующими атрибутами
Название | Тип | Обязательный | Описание |
---|---|---|---|
id | string(255) | true | Идентификатор в экспортирующей системе |
external_id | integer(11) | false | Идентификатор в принимающей системе |
city | string(255) | true | Город |
street | string(255) | true | Улица |
house | string(10) | true | Дом |
entrance | string(10) | false | Подъезд |
floor | string(10) | false | Этаж |
room | string(10) | false | Номер квартиры или офиса |
loyalty_system | boolean | false | Включена ли система лояльности для адреса клиента |
district_id | integer(11) | false | Идентификатор района доставки в принимающей системе |
legal_person_id | string(255) | false | Идентификатор юридического лица в uuid формате в экспортирующей системе |
Список индивидуальных цен на товары product_price_list
включает в себя объекты цен [product_price, product_price...]
со следующими атрибутами
Название | Тип | Обязательный | Описание |
---|---|---|---|
product_id | string(255) | true | Идентификатор продукта в экспортирующей системе |
external_product_id | integer(10) | false | Идентификатор продукта в принимающей системе |
price | decimal(10,2) | true | Индивидуальная цена на продукт |
active | boolean | true | Активность(вкл/выкл) |
Про изменение данных клиента
При импорте можно указать только те, атрибуты, которые необходимо изменить, при этом атрибут id
обязательный - по нему будет осуществлен поиск клиента для изменения
Про систему лояльности
При импорте клиента можно изменить участвует он в программе лояльности или нет, но кол-во баллов нельзя, их мы можем увидеть только в ответе
# Ответ при импорте нескольких клиентов
Ответ будет содержать объект обработанных клиентов либо сообщение об ошибке
ключами этого объекта будут Идентификаторы в экспортирующей системе external_id
и под каждым ключом будет описание что произошло,
если при импорте не будет ошибок, то атрибут success
будет содержать true
,
а в атрибуте data
будет массив с объектом который был импортирован,
если при импорте произошла ошибка, то атрибут success
будет содержать false
, а в атрибуте data
будут указаны ошибки
Например так
{
"success": true,
"data": {
"external_id_1": {
"success": true,
"data": {}
},
"external_id_2": {
"success": false,
"data": {}
}
}
}
# Пример
Запрос
[
{
"id": "jqLbQR3be8jlJZIh4dBrUCyyIhFzuAKK",
"external_id": 68,
"account_number": 68,
"username": "Василий Тестовый",
"type": "fiz",
"email": "ognev@baitek.org",
"phones": [
"+7(908)328-08-32"
],
"requisites": {
"inn": 1234512345,
"kpp": 1234512345,
"correspondent_account": 1234512345,
"account_number": 1234512345,
"bik": 1234512345,
"bank_name": 1234512345
},
"addresses": [
{
"id": 1234512345,
"external_id": null,
"city": "Сыктывкар",
"street": "Кутузова",
"house": "21",
"entrance": "2",
"floor": "1",
"room": "1",
"loyalty_system": false,
"str": "город Сыктывкар улица Кутузова дом 21",
"district_id": 1
}
],
"legal_address": {
"str": "г. Сыктывкар,ул. Кутузова,д. 21"
},
"product_price_list": [
{
"product_id": "78e66cef-ae2c-11e6-9bf1-f8a9634f667f",
"external_product_id": 36,
"price": 101,
"active": false
}
],
"loyalty_system_is_active": true
}
]
Ответ
{
"success": true,
"data": {
"jqLbQR3be8jlJZIh4dBrUCyyIhFzuAKK": {
"success": true,
"data": [
{
"id": 68,
"external_id": "jqLbQR3be8jlJZIh4dBrUCyyIhFzuAKK",
"username": "Василий Тестовый",
"comment": null,
"email": "ognev@baitek.org",
"account_number": 68,
"type": "fiz",
"phones": [
"9083280832"
],
"addresses": [
{
"id": 2647,
"external_id": null,
"name": "Кутузова, д. 21, эт. 1, кв./оф. 1, под. 2, г. Сыктывкар – Орбита ближняя (Париж)",
"city": "Сыктывкар",
"street": "Кутузова",
"house": "21",
"room": "1",
"entrance": "2",
"floor": "1",
"loyalty_system": false,
"district_id": 1,
"str": "Кутузова, д. 21, эт. 1, кв./оф. 1, под. 2, г. Сыктывкар Орбита ближняя (Париж)"
}
],
"requisites": {
"bank_account": {
"inn": "1234512345",
"kpp": "1234512345",
"account_number": "1234512345",
"correspondent_account": "1234512345",
"bik": "1234512345",
"bank_name": "1234512345"
}
},
"legal_address": [
"г. Сыктывкар,ул. Кутузова,д. 21"
],
"product_price_list": {
"36": {
"product_id": 36,
"external_product_id": null,
"price": "101.00",
"active": false
}
},
"coins_amount": 800,
"loyalty_system_is_active": true
}
]
}
}
}