Интеграция через Web Services / SOAP с системой Door Komplekt Клиент-Online

Интеграция позволит полностью исключить ручную работу по получению данных о товаре, цене, наличию на складах, формированию заявок, получению счетов, проверке взаимозачётов и многому другому.
Веб-сервисы / SOAP являются стандартным интерфейсом при интеграции сложных систем. Работа с ними возможна из 1С, Java, C#, PHP, Perl и многих других языков программирования. В случае возникновения вопросов по интеграции просим обращаться к нам по эл. адресу .
Обработку, демонстрирующую все возможности работы данного комплекса, для 1С v8 вы можете скачать по ссылке:
DoorKomplektSOAPWebServices.epf
WSDL: https://wssoap.doko.ru:3443/dkservices/ws/ws?wsdl
Для каждого запроса к любому веб-сервису передаётся логин-пароль пользователя в стандартном виде в заголовках HTTP-авторизации. Для предоставления логина-пароля вам необходимо написать запрос по эл. адресу .
Каталог продукции хранится в разрезе 2-х справочников: "номенклатура" с 5-и значным кодом и "характеристика номенклатуры" с 3-х значным кодом. Артикул продукции формируется по шаблону DK12345-678, где 12345 — код номенклатуры, 678 — код характеристики. Цены и наличие товара — разные для каждого такого артикула.
Заказ предварительно создается через ordCreateOrder или ordCopyOrder (если необходимо скопировать предыдущий заказ). При необходимости обновляется через ordUpdateOrder или удаляется через ordDeleteOrder. Подготовленный предварительный заказ необходимо через ordActionSendOrder отправить на обработку для выставления счета(ов). Заказ обрабатывается в течение 30 секунд. Через ordGetOrder периодически можно проверять состояние заказа, возможные ошибки в результате обработки и список выставленных счетов. В итоге через invGetInvoice можно получать необходимые счета.
Если функция возвращает структуру — все структуры содержат параметр Errors, который заполняется только в случае наличия ошибок. Если функция возвращает строку — в случае успеха значение = "success", в случае наличие ошибок строка заполняется их описанием.
- CatGroupList catGetGroupList(int ParentGroupId) — Возвращает список разделов каталога. ParentGroupId — код раздела каталога, список подразделов которого необходимо получить. Если код ParentGroupId = 0, в этом случае возвращается корневой список.
- ProductList catGetProductList(int GroupId) — Возвращает список продуктов необходимого раздела. GroupId — код раздела каталога.
- ProductInfo catGetProductInfo(string NomKod) — Возвращает информацию о продукте с кодом NomKod. NomKod — 5-и значный код, например 02920.
- ProductImageList catGetProductImageList(string NomKod) — Возвращает список картинок продукта с кодом NomKod. 1-ая картинка в списке — основная. Возвращаемая структура содержит SmallImageURL — URL картинки малого размера и BigImageURL — URL картинки большого размера. NomKod — 5-и значный код, например 02920.
- ProductFileList catGetProductFileList(string NomKod) — Возвращает список файлов (технические каталоги, чертежи, брошюры) продукта с кодом NomKod. Возвращаемая структура содержит Name — Описание файла и URL — URL файла. NomKod — 5-и значный код, например 02920.
- ProductKindList catGetProductKinds(string NomKod) — Возвращает список характеристик у номенклатуры с кодом NomKod.
- ProductPrice catGetPrice(string DKArticle) — Возвращает цену и валюту цены артикула DKArticle. DKArticle - артикул Door Komplekt, например DK02920-168.
- ProductStock catGetStock(string DKArticle, decimal Quantity) — Возвращает данные о наличии/сроках поставки товара в заданном количестве на складе. DKArticle - артикул Door Komplekt, например DK02920-168. Quantity — требуемое количество товара. В возвращаемых данных Quantity — содержит количество товара в наличии на складе с ограничением по максимальному значению (определенному для каждого товара отдельно). Exceed — содержит Истина если значение Quantity было ограничено максимальным его значением. DeliveryTimeWDays - количество раб. дней до ближайшей поставки товара.
- KontrList getMyKontrList() — Возвращает список прикрепленных контрагентов.
- OrderOut ordCreateOrder(OrderIn OrderIn) — Создает заказ по входящим данным OrderIn. Возвращает данные по созданному заказу.
- OrderOut ordUpdateOrder(int OrderNum, OrderIn OrderIn) — Полностью обновляет существующий заказ номер OrderNum данными OrderIn. Возвращает данные по обновленному заказу.
- OrderOut ordGetOrder(int OrderNum) — Возвращает данные по заказу номер OrderNum.
- string ordDeleteOrder(int OrderNum) — Удаляет заказ номер OrderNum. Удалить заказ можно до его отправки на обработку. Возвращает строку "success" в случае успеха.
- [Планируется ввести] string ordTryCancelOrder(int OrderNum) — Запрос на отмену заказа номер OrderNum и всех счетов выставленных по нему. Доступно после отправки заказа на обработку. Возвращает строку "success" в случае успеха отправки запроса на отмену заказа. Результат "success" не означает подтверждение отмены заказа.
- OrderOut ordCopyOrder(int OrderNum) — Возвращает новый скопированный полностью заказ номер OrderNum.
- OrdersNumList ordGetOrdersNumList(dateTime MinDateTime) — Возвращает список заказов с датой >= MinDateTime.
- string ordActionSendOrder(int OrderNum) — Отправляет заказ номер OrderNum на обработку. Возвращает строку "success" в случае успеха.
- Invoice invGetInvoice(string InvoiceNum) — Возвращает данные счета номер InvoiceNum. InvoiceNum - строка, например "2016/2110/1546".
- Org getOrg(OrgKod) — Возвращает данные по организации с кодом OrgKod. OrgKod - код, например "00024".
- [Планируется ввести] Invoice invTryCencelInvoice(int Year, string InvoiceNum) — Запрос на отмену счета номер InvoiceNum от Year года. Возвращает строку "success" в случае успеха отправки запроса. Результат "success" не означает подтверждение отмены счета.
- [Планируется ввести] TcDetails getTC() — Возвращает список активных счетов, а также информацию по каждому счету: сумма по счету, сумма оплаты, сумма отгруженного товара, макс. допустимую дату оплаты (если согласованы кредитные условия) и другие данные.