DAVE. SOAP Web Services

Similar documents
The contents of this publication the specifications of this application are subject to change without notice.

Lab 3: Simple Integration Use Case

it is

Perceptive Connector for Microsoft Dynamics AX

City/Zip Lookup Web Service Implementation Guide Version 1.00

How To Add a Borrower Via Web Services API

Objective: Review how to use access the Bulkvs.com Origination and 911 SOAP API using SOAP UI

Visma Nova Webservice Version 1.1 /

AdvCash Payment System Merchant API. Version Merchant API. Version Merchant API. Version 1.0

GoToMyPC Reporting Services API

Real-Time Connectivity Specifications For. 270/271 and 276/277 Inquiry Transactions

Create an account in Salesforce using the Web Services consumer functionality

User Manual. Exact Online Accounting basic- Magento synchronization. iwebdevelopment Klokgebouw AC Eindhoven E:

UC API Reference for UC s international consumer credit report

End User Manual. End user manual Daikin E-Commerce Application (ECOM), Daikin UK

An introduction API testing with SoapUI

dciphering Computing Amazon Seller Central Soap/XML Services as of Jan/2009

Fyndiq Magento Extension

Enterprise PeopleTools 8.50 PeopleBook: Reporting Web Services

Admin/User Manual SoftPal.com.ng

Classic Payment API. SOPG (Service Oriented Prepaid Gateway - xml based protocol) Documentation. Version history. Service Oriented Prepaid Gateway

27-Jan Customer Portal API. Quick reference for developers

User Manual: MSE Project

Introduction to the Prime Fulfillment API

Using BMC SRM OOB Web Services

Securities Lending Reporting Web Service

Actinic DataPlug. For Windows XP, Windows Vista, Windows 7 and Windows 8. User Guide Link for Sage 200 v2015

Installation of Gnet on Linux and Unix

IUID Registry Application Programming Interface (API) Version Software User s Manual (SUM)

Admin/User Manual. om

TIS HELP FOR INDEPENDENT OPERATORS CONTENTS

All About Integration

Business Register Web Services XML Services (v6 adapter)

Setting up B2B and Frequently Asked Questions

Search API. Overview. This chapter describes the Search API.

NEMSIS V3 Performance Measure Service Technical Guide

SPARROW Gateway. Developer API. Version (Build 7373)

Reseda E-Shop Manual

Web Developers Guide Merlin Web Services Toolkit

e-invoicing on the e-prior Supplier Portal

SPARROW Gateway. Custom Payment Redirect. Version (Build 7373)

Product Feed for Magento 2

Fyndiq Prestashop Module

AdvCash Payment System Merchant API. Version 1.8. Merchant API. Version 1.8. Merchant API. Version 1.0

VEDATRAK CRM 3.0. User Guide

Version 7 & 8. Note for users of MYOB AccountRight Live : Please use version 9 of Act! Link for MYOB instead USER GUIDE

Bidvest Bank Personal Internet Banking User Manual

Power IQ WS-API Programming Guide Release 2.0

INSURER BATCH UPLOAD GUIDE NORTH CAROLINA SURPLUS LINES ASSOCIATION

F-Billing Revolution 2015 User Manual F-Billing Software

Event Push SOAP Contract

MYOB Exo Business. Release Notes

Servicebeschrijvingen Nummervoorziening Pseudonimisering in de leermiddelenketen

Reliable Messaging between SAP XI 3.0 and Microsoft BizTalk Server 2004 Using SOAP-Compliant Communication

User Guide. 3CX Enhanced Billing Codes. Version

Scheduling API. Getting Started. Scheduling API Overview CHAPTER

Your trusted partner SIMS/FMS USER GUIDE

WebShop. User Manual. protonic software GmbH

Step 1: Create a totals query to show the total cost price and total sale price of the wine for each supplier.

cdiscount version BoostMyShop

Vendor Portal User Guide

Discover the new B2B Portal! B2B Portal. Public page of B2B Portal : Don t you have yet an access to the B2B Portal?

4. Can I pay for tickets if my card expires before the tournament?

Introduction to IEC Landis+Gyr May 27, 2015

You can use these quick links, and the links on the left sidebar to navigate quickly around this User Manual.

User Documentation. t-commerce User s Guide

CMSnipcart Documentation

Ariba Network Configuration Guide

Welcome to dayz Fashion Business to Business.

Logging In to MultiTrans 2 The Main Screen 3 My Flow 4. Tasks 11

The BritNed Explicit Auction Management System. Kingdom Web Services Interfaces

QuickSwipe Web User Guide

HP Operations Orchestration

Gift Card Instructions Daxko Spectrum

August Release 2017 v12.8

Mercateo Catalogue Management for Suppliers

User Guide. 3CX Enhanced Billing Codes. Version

Invoice 13 Pro Outline

Documentation OXID esales Documentation ERP interface (SOAP) Protocol version

Hewlett Packard Enterprise Smart Quote

Documentation Cendris Web Services Version July 2015

BUSINESS ACCOUNT MANAGEMENT SYSTEMS (BAMS) AND TRAVEL MANAGEMENT COMPANIES (BAMS)

User Manual Shopping Basket. Proximus Proximus ICT Self- Service Portal. Date 30/09/2014 Sensitivity Unrestricted Contact Peggy Booten

1. INTRODUCTION 3 2. MENU COMMANDS 5 3. CAT OPTIONS END USER LICENSE AGREEMENT 14

for Windows XP, Vista and 7 User Guide Link for Sage 50 Accounts 2012

Invoicing brings it all together

OKPAY guides INTEGRATION OVERVIEW

Quick Start Guide. Microinvest Warehouse Pro Mobile

New Dashboard - Help Screens

Lead Tracker Jack Getting Started Guide

User Manual. Interactive

Magento 2 - Bpost. Shipping Module

USER MANUAL. Fooman Connect: Xero - Magento 2. Quick Links. Leave a Review Reviews help to build a trusted Magento community.

HKTA TANG HIN MEMORIAL SECONDARY SCHOOL SECONDARY 3 COMPUTER LITERACY. Name: ( ) Class: Date: Databases and Microsoft Access

User Guide My Account

User Guide for the Key s Client Portal

Sage Construction Central Setup Guide (Version 18.1)

USER MANUAL Setting Up Fooman Connect: Xero

WEB OF SCIENCE USAGE REPORTING

Industry Training Register. Guide to integration for ITOs

Transcription:

DAVE SOAP Web Services

Introduction This document provides information about the Dave Web Services API and serves as a basic explanation for people with technicals skills who are making a connection to Dave with the Dave Web Services. If more explanation is required, then Just Software can provide consulting on this subject. Please contact our administration for more information on info@justsoftware.be. Table of contents 1.General! 3 2.Installation & setup! 3 3.Data formatting! 3 4.Web Services! 4 4.1.List of webservices! 4 4.2.Web Service types! 4 4.3.Web service defaults! 4 4.4.Testing connectivity! 5 4.4.1. Ping request! 5 4.4.2. Ping response! 5 4.5.Opening a connection! 6 4.5.1. Logon request! 6 4.5.2. Logon response! 6 4.6.Inserting a sales order! 7 4.7.Searching sales orders! 8 5.Scenario s! 10 5.1.Website! 10 5.2.Webshop! 10 Versie 18/03/2015! 2/10

1.General Dave Web Services API uses the SOAP protocol. And this protocol communicates between computers with XML-files through HTTP. (REST is not yet supported.) 2.Installation & setup DAVE stores its data in a central FrontBase-database (sql92). And to avoid network delays the Omnis Webserver with the Dave Web Services usually is installed on the same computer as where the database is installed. The installation of the Omnis Webserver needs to be done by the services of Just Software. For more information please contact info@justsoftware.be. 3.Data formatting Fields of the type shortnumber2dp must be delivered with 2 decimals : 0.00 and not 0 An empty date is presented as 1980-01-01 A date&time value has the format 2000-01-01T10:00:00.0Z Versie 18/03/2015! 3/10

4.Web Services 4.1. List of webservices A full list of the Dave Web Services with detail and description can be found in the file wsdl-report.html. If needed, you can request this file by sending an e-mail to support@justsoftware.be. Retrieving all SOAP requests and responses is possible with the.wsdl file on the server (after installation or with demo-setting from ). Demo from Just Software: http://hal.justsoftware.be:49001/davewslink/integration.wsdl Live (after installation): http://[server]:[port]/davewslink/integration.wsdl There are SOAP requests for: general data : vat codes, contacts, contact groups, delivery adresses, payment conditions, delivery conditions, customer groups, countries, currency codes, language codes, price lists, sales persons, zip codes, legal forms, settings such as point of sales customer number, standard price list code, intro and footer texts, standard currency code,... data from the Order-module : quotes, sales orders, article items, article sales prices,... Some requests do not have any parameter, others need a company code or a branch code. All requests require a live connection except for the Ping message as it allows to check for the availability of the service. In the webservice examples in this document you need to replace localhost by the web server IP address. By default the offset is 1000. 4.1. Web Service types Search : these series of requests deal with searing using several selection criteria Get : these series of requests deal with retrieving 1 specific article, sales order,... GetKlant : to look for a specific customer GetArtikel : to look for a specific article GetArtikelPrijzen : to get the up-to-date sales prices for an article Sync : these series of requests allow an automated process to store a sync data so that only newly created or modified data is retrieved, you should keep the latest sync data on your system. SyncKlanten : get all customers since the last synchronisation (keep the sync date) SyncArtikels : get all articles since the last synchronisation (keep the sync date) SyncArtikelPrijzen : get all article sales prices since the last synchronisation (keep the sync date) In case you maintain your own database, you will first need the Sync calls 4.2. Web service defaults When connection to Dave Web Services, you need to get to know some default values from the Demo or Live Dave database : - what is the company code and branch code in the database? - what is the standard tariff code in the company? - what is the prefix for a sales order ( B/ )? Versie 18/03/2015! 4/10

4.3. Testing connectivity 4.3.1. Ping request <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http://localhost:5912/davewslink/integration.wsdl"> <soapenv:header/> <soapenv:body> <int:ping/> </soapenv:body> </soapenv:envelope> 4.3.2. Ping response <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/ 2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"> <soap:body> <PingResponse xmlns="http://localhost:5912/davewslink/integration.wsdl"> <return>true</return> </PingResponse> </soap:body> </soap:envelope> Since this response answered a return of true, this ping indicates that it successfully communicated with the Omnis Webserver. Versie 18/03/2015! 5/10

4.4. Opening a connection Before you start retrieving data, you should logon to the services. After that do a Logoff in order to free the web service session. Default time-out is 5 minutes. Warning: If you are testing requests, don t forget to Logoff or you will exceed the maximum number of sessions. 4.4.1. Logon request <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http:// localhost:5912/davewslink/integration.wsdl"> <soapenv:header/> <soapenv:body> <int:logon> <int:puser>dave</int:puser> <int:ppassword></int:ppassword> <int:pdevicetype></int:pdevicetype> <int:pdeviceid></int:pdeviceid> <int:pdevicename></int:pdevicename> </int:logon> </soapenv:body> </soapenv:envelope> all parameter tags should be sent 4.4.2. Logon response <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/ 2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"> <soap:body> <LogonResponse xmlns="http://localhost:5912/davewslink/integration.wsdl"> <return> <_connectionid>@@@@@@@a@@@@@@dvs@qh@a@dagahgshe</_connectionid> <return> <status>1</status> <timestamp>2012-12-25t19:28:59.0z</timestamp> <errcode/> <errdesc/> <count>0</count> <newdeviceid/> <data>true</data> </return> </return> </LogonResponse> </soap:body> </soap:envelope> The most important return parameter is _connectionid. You will need it for every other request during this session. Every response has a fixed structure : status : 0=error 1=OK timestamp : date and time sent from the web service errcode : in case of an error, this will contain an error code f.i. a database error code errdesc : same, but a readable description count : mentions the number of rows in a list data : this can be character, a date, a row or a list Versie 18/03/2015! 6/10

4.5. Inserting a sales order Web Service: CreateBestellingLite If the orders are numbered by Dave, you also need GetBestellingNummer. The request below adds a sales order to Dave with one article of 100 and which is paid cash. <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http:// localhost:5912/davewslink/integration.wsdl"> <soapenv:header/> <soapenv:body> <int:createbestellinglite> <int:_connectionid>@@@@@@@@@@@@@@dvs@qh@@fdagahtvu@</int:_connectionid> <int:pcinternefirma>justdeco</int:pcinternefirma> <int:pcinternefirmavestiging>dilbeek</int:pcinternefirmavestiging> <int:porder> <int:cinternefirma>justdeco</int:cinternefirma> <int:cinternefirmavestiging>dilbeek</int:cinternefirmavestiging> <int:cnummer>20007</int:cnummer> <int:cbedragbtw>21.00</int:cbedragbtw> <int:cbedragexcl>100.00</int:cbedragexcl> <int:cbedragincl>121.00</int:cbedragincl> <int:ccontact>1090</int:ccontact> <int:cdatum>2013-07-13</int:cdatum> <int:cleveringsadres></int:cleveringsadres> <int:cleveringsdatumgewenst>1980-01-01</int:cleveringsdatumgewenst> <int:cmunt>eur</int:cmunt> <int:cprioriteit>1</int:cprioriteit> <int:conzereferentie></int:conzereferentie> <int:cterattentievan></int:cterattentievan> <int:cuwreferentie></int:cuwreferentie> <int:cvolledig>0</int:cvolledig> <int:cdocumentgroep>weborder</int:cdocumentgroep> </int:porder> <int:porderlines> <!--Zero or more repetitions:--> <int:row> <int:clijnnummer>1</int:clijnnummer> <int:cartikel>7002</int:cartikel> <int:ckleur></int:ckleur> <int:cmaat></int:cmaat> <int:cartikelbarcode></int:cartikelbarcode> <int:comschrijving>gsm</int:comschrijving> <int:caantal>1</int:caantal> <int:caantalfactor>0</int:caantalfactor> <int:ceenheidverkoop></int:ceenheidverkoop> <int:cverkoopprijs>100.0000</int:cverkoopprijs> <int:cverkoopprijsophalen>1</int:cverkoopprijsophalen> <int:clijnkortingpercentage>0.00</int:clijnkortingpercentage> <int:cbedrag>100.00</int:cbedrag> <int:cleveringsdatumgewenst>1980-01-01</int:cleveringsdatumgewenst> </int:row> </int:porderlines> <int:porderpayments> <!--Zero or more repetitions:--> <int:row> <int:clijnnummer>1</int:clijnnummer> <int:cbedrag>100.00</int:cbedrag> <int:cbetaalwijze></int:cbetaalwijze> <int:ccash>1</int:ccash> <int:cdatum>2013-07-13t00:00:00.0z</int:cdatum> <int:cmunt>eur</int:cmunt> <int:comschrijving></int:comschrijving> </int:row> Versie 18/03/2015! 7/10

</int:porderpayments> </int:createbestellinglite> </soapenv:body> </soapenv:envelope> The response below indicates that the order has successfully been added to Dave. <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/ 2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"> <soap:body> <CreateBestellingLiteResponse xmlns="http://localhost:5912/davewslink/integration.wsdl"> <return> <status>1</status> <timestamp>2013-07-18t11:02:25.0z</timestamp> <errcode>0</errcode> <errdesc/> <count>1</count> <data>true</data> </return> </CreateBestellingLiteResponse> </soap:body> </soap:envelope> 4.6. Searching sales orders Web Service: SearchBestellingen The request below searches for all open Orders for the client with code 1085. <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http:// localhost:5912/davewslink/integration.wsdl"> <soapenv:header/> <soapenv:body> <int:searchbestellingen> <int:_connectionid>@@@@@@@@@@@@@@fqs@qh@a@eagah@qie</int:_connectionid> <int:pcinternefirma>justdeco</int:pcinternefirma> <int:pcinternefirmavestiging>dilbeek</int:pcinternefirmavestiging> <int:pselections> <int:ccontact>1085</int:ccontact> <int:cnummer>0</int:cnummer> <int:cnummertot>0</int:cnummertot> <int:cdatum>1980-01-01</int:cdatum> <int:cdatumtot>1980-01-01</int:cdatumtot> <int:cvertegenwoordiger></int:cvertegenwoordiger> <int:conzereferentie></int:conzereferentie> <int:cuwreferentie></int:cuwreferentie> <int:copenstaand>1</int:copenstaand> </int:pselections> </int:searchbestellingen> </soapenv:body> </soapenv:envelope> The response indicates with status=1 that the search was succesfull and gives back one Order B/10309 that is already reserved. <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/ 2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"> <soap:body> <SearchBestellingenResponse xmlns="http://localhost:5912/davewslink/integration.wsdl"> <return> <status>1</status> <timestamp>2013-07-20t18:35:38.0z</timestamp> Versie 18/03/2015! 8/10

<errcode>0</errcode> <errdesc/> <count>1</count> <data> <row> <CINTERNEFIRMA>JUSTDECO</CINTERNEFIRMA> <CINTERNEFIRMAVESTIGING>DILBEEK</CINTERNEFIRMAVESTIGING> <CNUMMER>10309</CNUMMER> <CPREFIX>B/</CPREFIX> <CDATUM>2013-07-18</CDATUM> <CCONTACT>1085</CCONTACT> <CNAAM1>Onder de Kerk</CNAAM1> <CBEDRAGEXCL>7395.0</CBEDRAGEXCL> <CBEDRAGINCL>8947.95</CBEDRAGINCL> <CMUNT>EUR</CMUNT> <CVERVALDATUM>1980-01-01</CVERVALDATUM> <CVERTEGENWOORDIGER>ELLEN</CVERTEGENWOORDIGER> <CSTATUSPERCENTAGE>46</CSTATUSPERCENTAGE> <CSTATUS1>Gereserveerd</CSTATUS1> <CSTATUS2>Reservé</CSTATUS2> <CSTATUS3>Reserved</CSTATUS3> <CSTATUS4>Reserviert</CSTATUS4> <CGEVERIFIEERD>false</CGEVERIFIEERD> <CONZEREFERENTIE/> <CUWREFERENTIE/> <CDOCUMENTGROEP/> </row> </data> </return> </SearchBestellingenResponse> </soap:body> </soap:envelope> Versie 18/03/2015! 9/10

5.Scenario s A different structure is needed based on business requirements of the client. There are basically 2 directions of data transfer in the Dave Web Services. From Dave to an external program/website and vice versa. 5.1. Website You want to show a list of your articles with matching images and prices on your website. In this case you only need to get data out of Dave and into the database of the website. Once you have all the basic data, you can start to develop the website-interface to add items to your basket. Whether the website uses a Content Management System (CMS) or not, does not change the connection to the web services. 5.2. Webshop Not only does your webshop need to show the articles from DAVE (see Website), but it also needs to register orders. Setting up a webshop for online ordering requires a bit more setup and decisions to make. Examples of items you need to discuss with your customer: - where will the login-passwords stored? In a website portal or in a Dave extra field? - does the numbering of the orders come from the webshop or Dave? -... For a webshop you best consider the following setup: First you request customer- and article-information out of Dave with Sync-requests on a regular basis (daily, hourly,...). When a customer requests the stock of a specific article inside the webshop, you can do a Live Get-request to check an up-to-date stock. When the customer creates an order, this should first be stored inside the database of the webshop and then this can be sent to Dave with a Create-request. In case you always work online, you only need the Get calls, but we suggest you maintain a seperate database for the webshop. Because if orders are first registered in your webshop and there is a sudden loss of connection between the webshop and the Dave Web Services, then these orders will not be lost. Warning: If the orders created in the webshop need to be created exactly the same way as in Dave (prices, discounts,...), then you better contact Just Software for a detailed explanation. Versie 18/03/2015! 10/10