oTMS-openapi en
  1. oTMS API
oTMS-openapi en
  • oTMS API
    • Order Import
      PUT
    • orderOutbound
      POST
    • shipPointImport
      PUT
    • Delete delivery point
      DELETE
    • Order Assignment to Driver
      POST
    • TruckAndDriverImport
      PUT
    • Assign Driver to Order
      POST
    • Job Sheet Import
      PUT
    • Delete Job Sheet
      PUT
    • Order Recall
      POST
    • Share Link
      PUT
    • Carrier Export
      POST
    • Order Update
      PUT
    • Order Dispatch
      POST
    • Order Revoke
      PUT
    • Order Rating
      POST
    • Order Handover Creation
      PUT
    • Oorder Custom Update
      POST
    • Price File Matching
      POST
    • Order cost update
      POST
    • Shipper/Receiver export
      POST
    • Job Sheet Outbound
      POST
    • Job Sheet Recall
      PUT
    • TruckPosition
      POST
    • GPS Device
      POST
    • Jobsheet To Driver
      PUT
    • TrackandTrace
      POST
    • H5 Link
      PUT
  1. oTMS API

Order Handover Creation

PUT
/ws/handoverCreate
Order Handover Creation

Order Handover Creation Interface#

Through the Order Handover Creation Interface, batch orders from external systems such as ERP systems and WMS systems can be packaged into a single handover order. This makes subsequent pickup and delivery operations more convenient.

Configuration Instructions#

oTMS provides Web Service interfaces in both production and testing environments, where the testing environment is primarily used for integration testing. In both environments, API account credentials must be assigned by the oTMS system administrator before they can be used.

Important Notes#

Please use the public interfaces reasonably. If abnormal calls or any issues affecting system performance are detected, we will impose restrictions on the API account calls, or even deactivate them.

Call Limitations#

Currently, the call limit for this interface is set to a maximum of 20 requests per second per company.

Request

Header Params
Authorization
string 
optional
Basic Authorization. If not empty, this value will be used for authentication. Otherwise, the username and password in the request message will be used.
Default:
Body Params application/xml
version
string 
optional
Version number of the request
login
string 
optional
Username. Used for API caller authentication. If the Authorization header is not empty, this value will be ignored.
password
string 
optional
Password. Used for API caller authentication. If the Authorization header is not empty, this value will be ignored.
handoverOrders
array[object (HandoverOrderRequestEntry) {4}] 
optional
List of orders
sequence
integer <int32>
optional
Sequence number
clientCode
string 
optional
oTMS offline customer company code (applicable to carrier accounts)
erpNumber
string 
optional
Unique order number in the external system
orderNumber
string 
optional
oTMS order number. If erpNumber is provided, the oTMS order number is considered invalid.
Example
<?xml version="1.0" encoding="utf-8"?>
<handoverCreateRequest login="login" version="0.1" password="password">
<handoverOrders>
  <order sequence="1">
    <orderNumber>AXDHBMAV009893</orderNumber>
  </order>
  <order sequence="2">
    <erpNumber>241108006</erpNumber>
    <clientCode>AXDHBMAV</clientCode>
  </order> 
</handoverOrders>
</handoverCreateRequest>

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PUT 'https://login.otms.com/ws/handoverCreate' \
--header 'Authorization;' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="utf-8"?>
<handoverCreateRequest login="login" version="0.1" password="password">
<handoverOrders>
  <order sequence="1">
    <orderNumber>AXDHBMAV009893</orderNumber>
  </order>
  <order sequence="2">
    <erpNumber>241108006</erpNumber>
    <clientCode>AXDHBMAV</clientCode>
  </order> 
</handoverOrders>
</handoverCreateRequest>'

Responses

🟢200成功
application/xml
Successful operation
Body
version
string 
required
Response version number
responseCode
string 
optional
Global feedback code
handoverCode
string 
optional
Content of the generated QR code
failedOrders
array[object (HandoverOrderResponseEntry) {5}] 
optional
sequence
integer <int32>
optional
Sequence number
erpNumber
string 
optional
ERP order number
orderNumber
string 
optional
oTMS order number
status
string 
optional
Processing status
responseCodes
array[object (ResponseCode) {1}] 
optional
List of response codes, explaining the reasons for failed order handover creation. This list may be empty.
Error code prompt
object 
optional
Single request feedback code
999
string 
optional
failed to create batch order handover code
1000
string 
optional
cannot find the company corresponding to the client code
1100
string 
optional
Other errors
1109
string 
optional
No corresponding order was found
1112
string 
optional
matches multiple orders
1113
string 
optional
request is missing client code
1127
string 
optional
split orders do not support creating handover codes
1128
string 
optional
orders with multiple vehicles per order do not support creating handover codes
1129
string 
optional
The current node of order does not support creating handover codes
1134
string 
optional
order handover function not enabled
Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<handoverCreateResponse version="0.1">
    <responseCode>200</responseCode>
    <handoverCode>HF527DAR77NVRUUVWU6C5LAW</handoverCode>
    <orders>
        <order sequence="1">
            <erpNumber>241108007</erpNumber>
            <orderNumber>AXDHBMAV009893</orderNumber>
            <status>SUCCEED</status>
            <responseCodes/>
        </order>
        <order sequence="2">
            <erpNumber>241108006</erpNumber>
            <orderNumber>AXDHBMAV009892</orderNumber>
            <status>SUCCEED</status>
            <responseCodes/>
        </order>
    </orders>
</handoverCreateResponse>
Previous
Order Rating
Next
Oorder Custom Update
Built with