|
System Integration with XML
Once again Dynamex offers an industry first with our revolutionary dxNow XML interface. Through our XML interface, delivery service can be requested, price quotes for delivery service can be obtained, deliveries can be tracked, and the available service types to your customer account can be retrieved. Using these four basic types of communication with dxNow it is possible to fully integrate your systems with the delivery services provided by Dynamex. The XML interface to dxNow provides a way for systems to integrate.
Here is an example. Your company takes an order from one of your customers. That order request is entered into your business system. Your system then communicates with our XML interface, sending a request for a delivery. We acknowledge your request and dispatch a vehicle to the locations you have requested. Later, as the delivery progresses, your system can check the XML interface for status updates to find out if the shipment is still in transit, or if it has been completed. With the status update you get back from the XML interface, your business system is updated with the delivery completion information.
Getting started For security purposes we need to know the IP address your system will be sending requests from. To get started simply provide us with that IP address or range of addresses. Once we have that information you we will supply your customer number and password. When we reply with your customer number and password you can begin communicating with the XML interface.
Using the interface Communication with the XML interface is accomplished by sending an XML request in an HTTP POST. The contents of the request that you send will differ according to the type of action you want to complete. The four types of actions are NEW, QUOTE, TRACK, and SERVICES.
NEW: Submit a new request for delivery service. QUOTE: Request a price quote for delivery service. TRACK: Track the status delivery or deliveries. SERVICES: Retrieve the allowable list of services that can be selected.
Requesting delivery service A request for delivery service is made by specifying an action of NEW.
<dxnow>
<delivery>
<customernumber>1234</customernumber>
<password>password</password>
<action>NEW</action>
<customerorderid>2592029</customerorderid>
<requestedby>JOHN DOE</requestedby>
<pickupname>ABC COMPANY</pickupname>
<pickupaddress>505 5TH AVE</pickupaddress>
<pickupaddress2>SUITE 1000</pickupaddress2>
<pickupcity>NEW YORK</pickupcity>
<pickupstate>NY</pickupstate>
<pickupzip>10003</pickupzip>
<pickuptelephone>2125555555</pickuptelephone>
<pickuptelephoneextension>1234 </pickuptelephoneextension>
<pickupcontact>JOHN DOE</pickupcontact>
<pickupinstructions>SEE JOHN AT COURIER DESK</pickupinstructions>
<deliveryname>DEF COMPANY</deliveryname>
<deliveryaddress>111 WALL ST</deliveryaddress>
<deliverycity>NEW YORK</deliverycity>
<deliverystate>NY</deliverystate>
<deliveryzip>10001</deliveryzip>
<deliverytelephone>2129999999</deliverytelephone>
<deliverycontact>JANE SMITH</deliverycontact>
<service>3</service>
<weight>5</weight>
<pieces>2</pieces>
</delivery>
</dxnow>
Delivery price quoting It may be possible to find out ahead of time approximately how much it will cost to complete a delivery. Getting a price quote is exactly the same as placing a NEW request for service. Instead of specifying an action of NEW, simply set the action to QUOTE. You will want to supply all the parameters you can as values such as the service type, weight, addresses, pickup time and so on can all impact the price of a delivery.
<dxnow>
<customernumber>1234</customernumber>
<password>password</password>
<action>quote</action>
... the rest of the XML request ...
</dxnow>
Delivery tracking There are three ways to track a delivery through the interface. It is possible to track on a <customerorderid> field, if you specified one when the delivery request was made. If you know the <controlnumber> of a delivery, you can also track by control number. Finally, tracking can be done by date - the date that the delivery request was submitted.
Tracking by customerorderid
<dxnow>
<track>
<customernumber>1234</customernumber>
<password>password</password>
<type>customerorderid</type>
<value>2123552</value>
</track>
</dxnow>
Tracking by controlnumber
<dxnow>
<customernumber>1234</customernumber>
<password>password</password>
<action>track</action>
<type>controlnumber</type>
<value>637278</value>
</dxnow>
Tracking by date
<dxnow>
<customernumber>1234</customernumber>
<password>password</password>
<action>track</action>
<type>date</type>
<value>20010817</value>
</dxnow>
For further assistance Please contact the dxNow support services team at help@dxnow.com.
|