====== 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 1 supplier 2 1 Мой поставщик Юридическое название 1234567890123 111
Адрес
3252355236443 test@test.com http://test.com 2015-01-27 14:36:36 1 2017-05-25 20:26:22 2 1 Код контрагента 123456 1234567890 123456 123456 123456789 Статус Факт. адрес 212 Внешний поставщик
2 Поставщик алкоголя
2016-09-14 17:12:19 2 2016-09-14 17:12:19 2 1 Внешний поставщик ==== Структура ответа сервера ==== * **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// ===== Пример запроса на добавление/изменение данных ===== Пример запроса на получение данных о поставщике: http://mycompany.virtpos.ru/api/supplier/update?apikey=MySecret&create_if_not_exist=0&external_id=777 ==== Параметры запроса ==== Параметры, которые не отмечены как **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" если обновлена. ==== Пример ответа сервера ==== 1 11 1