API :: Supplier. Получение/изменение данных о поставщиках
В системе реализован программный интерфейс для получения, добавления и изменения данных о поставщиках. Данные выгружаются по HTTP протоколу. Формат на выбор - XML или JSON.
Пример запроса на получение данных
Пример запроса на получение данных о поставщиках:
http://mycompany.virtpos.ru/api/supplier?apikey=MySecret&format=xml
Параметры запроса
Параметры, которые не отмечены как get only, могут быть переданы как get- или как post-параметры.
- apikey - Секретный ключ для доступа к данным. Обязательный параметр.
- format (get only) - формат, в котором сервер отдаст данные. Может принимать значения «xml» или «json». Необязательный параметр.
- id - идентификатор поставщика, для которого надо вернуть данные. Если не указан, то возвращаются данные обо всех поставщиках.
- external_id - код поставщика во внешней системе учета (например, в 1С). Если не указан, то возвращаются данные обо всех поставщиках.
- type_id - идентификатор типа поставщика. Необязательное поле. Если указан, возвращаются поставщики только этого типа.
Ответ сервера
В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info
Пример ответа сервера
Ниже приведен пример ответа сервера в формате XML
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <type>supplier</type> <count>2</count> <suppliers> <supplier> <id>1</id> <name>Мой поставщик</name> <legal_name>Юридическое название</legal_name> <inn>1234567890123</inn> <kpp>111</kpp> <address>Адрес</address> <phone>3252355236443</phone> <email>test@test.com</email> <www>http://test.com</www> <created_date>2015-01-27 14:36:36</created_date> <created_by>1</created_by> <last_update_date>2017-05-25 20:26:22</last_update_date> <last_update_by>2</last_update_by> <attribute1/> <attribute2/> <attribute3/> <attribute4/> <attribute5/> <attribute6/> <attribute7/> <attribute8/> <attribute9/> <attribute10/> <attribute11/> <attribute12/> <attribute13/> <attribute14/> <attribute15/> <type_id>1</type_id> <code>Код контрагента</code> <OKPO>123456</OKPO> <OKONH>1234567890</OKONH> <corraccount>123456</corraccount> <bankaccount>123456</bankaccount> <BIK>123456789</BIK> <status>Статус</status> <delivaddress>Факт. адрес</delivaddress> <external_id>212</external_id> <type_name>Внешний поставщик</type_name> </supplier> <supplier> <id>2</id> <name>Поставщик алкоголя</name> <legal_name/> <inn/> <kpp/> <address/> <phone/> <email/> <www/> <created_date>2016-09-14 17:12:19</created_date> <created_by>2</created_by> <last_update_date>2016-09-14 17:12:19</last_update_date> <last_update_by>2</last_update_by> <attribute1/> <attribute2/> <attribute3/> <attribute4/> <attribute5/> <attribute6/> <attribute7/> <attribute8/> <attribute9/> <attribute10/> <attribute11/> <attribute12/> <attribute13/> <attribute14/> <attribute15/> <type_id>1</type_id> <code/> <OKPO/> <OKONH/> <corraccount/> <bankaccount/> <BIK/> <status/> <delivaddress/> <external_id/> <type_name>Внешний поставщик</type_name> </supplier> </suppliers> </root>
Структура ответа сервера
- id – ID поставщика - int NOT NULL, первичный ключ
- name - Название - varchar(255) NOT NULL, обязательно
- legal_name - Юридическое название - varchar(255) DEFAULT NULL
- inn - ИНН - varchar(255) DEFAULT NULL
- kpp - КПП - varchar(255) DEFAULT NULL
- address - Адрес - varchar(255) DEFAULT NULL
- phone - Телефон - varchar(255) DEFAULT NULL
- email - Адрес электронной почты - varchar(255) DEFAULT NULL, валидный e-mail адрес
- www - WWW - varchar(255) DEFAULT NULL, валидный URL
- type_id - Тип контрагента (1 - Внешний поставщик, 2 - Внутренний поставщик, 3 - Банк) - int NOT NULL DEFAULT '1'
- type_name - наименование типа контрагента - varchar(255) DEFAULT NULL
- code - Код контрагента - varchar(255) DEFAULT NULL
- OKPO - ОКПО - varchar(30) DEFAULT NULL
- OKONH - ОКОНХ - varchar(255) DEFAULT NULL
- bank_name - Наименование банка, обслуживающего организацию - varchar(255) DEFAULT NULL
- corraccount - Номер счета банка, обслуживающего организацию - varchar(255) DEFAULT NULL
- bankaccount - Номер счета организации в банке, обслуживающем организацию - varchar(255) DEFAULT NULL
- BIK - БИК - char(9) DEFAULT NULL, 9 символов ровно
- status - Статус - varchar(255) DEFAULT NULL
- delivaddress - Факт. адрес - varchar(255) DEFAULT NULL
- external_id - Идентификатор во внешней системе - varchar(255) DEFAULT NULL
- created_date - Дата создания - datetime DEFAULT NULL
- created_by - Кем создано - int DEFAULT NULL
- last_update_date - Дата изменения - datetime DEFAULT NULL
- last_update_by - Кем изменено - int DEFAULT NULL
Пример запроса на добавление/изменение данных
Пример запроса на получение данных о поставщике:
Параметры запроса
Параметры, которые не отмечены как get only, могут быть переданы как get- или как post-параметры.
- apikey - Секретный ключ для доступа к данным. Обязательный параметр.
- format (get only) - формат, в котором сервер отдаст данные. Может принимать значения «xml» или «json». Необязательный параметр.
- id (get only) - идентификатор поставщика, данные которого надо обновить
- external_id (get only) - код поставщика во внешней системе учета (например, в 1С)
- create_if_not_exist (get only) - Если истина, то при неудачном поиске поставщик будет добавлен в систему.
- Также в качестве параметров могут быть переданы все поля для поставщика (name, address, phone и т.д.)
Ответ сервера
В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info.
Также возвращается id записи, которая была обновлена или добавлена. Флаг isnew равен «1», если запись была создана, и «0» если обновлена.
Пример ответа сервера
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <id>11</id> <isnew>1</isnew> </root>