oTMS logo 开放平台
Documentation Help

订单自定义文本字段更新

通过订单自定义文本字段更新接口,可以将不同外部系统如ERP系统、WMS系统的大量订单进行批量的自定义文本字段更新。

版本号 文档 说明
0.1 当前版本文档

配置说明

oTMS同时在生产环境和测试环境中提供Web Service接口,其中测试环境用于集成测试。两种环境下都需要由oTMS系统管理员分配API帐号密码后方可使用。

注意: 请合理地调用公共接口。如果发现存在异常调用或者对我们系统性能造成影响等情况,会对API账号的调用进行限制,甚至停用。

目前对该接口的调用限制为每个公司每秒最多20个请求

接口说明

公共参数

环境 HTTP请求方法 HTTPS请求地址 请求主体MIME类型 响应主体MIME类型
正式环境 POST https://login.otms.cn/ws/orderCustomUpdate application/xml application/xml
沙箱环境 POST https://demo.otms.cn/ws/orderCustomUpdate application/xml application/xml

请求参数

字段名 位置 是否必填 描述 Schema
body body 是 订单自定义文本字段更新请求 OrderCustomUpdateRequest
Authorization header Basic Authorization。如果不为空,则优先使用该值作身份认证。否则使用请求报文中的用户名与密码 string

响应参数

状态码 描述 响应模型
200 successful operation OrderUpdateResponse

详细描述

OrderCustomUpdateRequest

字段名 类型 是否必填 描述 示例
version string 是 请求的版本号。当前版本号为0.1
login string 否 用户名。用于 API 调用者身份认证。如果请求头中的Authorization不为空,则该值会被忽略。
password string 否 密码。用于 API 调用者身份认证。如果请求头中的Authorization不为空,则该值会被忽略。
orders array[UpdatedOrderCustomField] 是 待更新的订单列表。一次请求最多可以更新100条订单

OrderUpdateResponse

字段名 类型 是否必填 描述 示例
version string 是 响应版本号
responseCode string 否 全局的反馈代码
processedOrders string 否 处理的订单数量
orders array[UpdateResult] 否 处理的订单列表

UpdateResult

字段名 类型 是否必填 描述 示例
sequence integer (int32) 否 序列数
erpNumber string 否 订单erp单号
orderNumber string 否 oTMS订单号
updateStatus string 否 DRAFT - 订单更新后为草稿状态
UPDATED - 订单正常更新
FAILED - 订单更新失败
NOT UPDATED - 订单无更新
strResponseCodes array[string] 否 -
errorColumnName string 否 对应字段名称
strErrorMsgs array[string] 否 -

UpdatedCustomFields

字段名 类型 是否必填 描述 示例
customText1 string 否 自定义文本字段1
customText2 string 否 自定义文本字段2
customText3 string 否 自定义文本字段3
customText4 string 否 自定义文本字段4
customText5 string 否 自定义文本字段5
customText6 string 否 自定义文本字段6
customText7 string 否 自定义文本字段7
customText8 string 否 自定义文本字段8
customText9 string 否 自定义文本字段9
customText10 string 否 自定义文本字段10
customText11 string 否 自定义文本字段11
customText12 string 否 自定义文本字段12
customText13 string 否 自定义文本字段13
customText14 string 否 自定义文本字段14
customText15 string 否 自定义文本字段15
customText16 string 否 自定义文本字段16
customText17 string 否 自定义文本字段17
customText18 string 否 自定义文本字段18
customText19 string 否 自定义文本字段19
customText20 string 否 自定义文本字段20
customText21 string 否 自定义文本字段21
customText22 string 否 自定义文本字段22
customText23 string 否 自定义文本字段23
customText24 string 否 自定义文本字段24
customText25 string 否 自定义文本字段25
customText26 string 否 自定义文本字段26
customText27 string 否 自定义文本字段27
customText28 string 否 自定义文本字段28
customText29 string 否 自定义文本字段29
customText30 string 否 自定义文本字段30
customText31 string 否 自定义文本字段31
customText32 string 否 自定义文本字段32
customText33 string 否 自定义文本字段33
customText34 string 否 自定义文本字段34
customText35 string 否 自定义文本字段35
customText36 string 否 自定义文本字段36
customText37 string 否 自定义文本字段37
customText38 string 否 自定义文本字段38
customText39 string 否 自定义文本字段39
customText40 string 否 自定义文本字段40
customText41 string 否 自定义文本字段41
customText42 string 否 自定义文本字段42
customText43 string 否 自定义文本字段43
customText44 string 否 自定义文本字段44
customText45 string 否 自定义文本字段45
customText46 string 否 自定义文本字段46
customText47 string 否 自定义文本字段47
customText48 string 否 自定义文本字段48
customText49 string 否 自定义文本字段49
customText50 string 否 自定义文本字段50
customText51 string 否 自定义文本字段51
customText52 string 否 自定义文本字段52
customText53 string 否 自定义文本字段53
customText54 string 否 自定义文本字段54
customText55 string 否 自定义文本字段55
customText56 string 否 自定义文本字段56
customText57 string 否 自定义文本字段57
customText58 string 否 自定义文本字段58
customText59 string 否 自定义文本字段59
customText60 string 否 自定义文本字段60
customText61 string 否 自定义文本字段61
customText62 string 否 自定义文本字段62
customText63 string 否 自定义文本字段63
customText64 string 否 自定义文本字段64
customText65 string 否 自定义文本字段65
customText66 string 否 自定义文本字段66
customText67 string 否 自定义文本字段67
customText68 string 否 自定义文本字段68
customText69 string 否 自定义文本字段69
customText70 string 否 自定义文本字段70
customText71 string 否 自定义文本字段71
customText72 string 否 自定义文本字段72
customText73 string 否 自定义文本字段73
customText74 string 否 自定义文本字段74
customText75 string 否 自定义文本字段75
customText76 string 否 自定义文本字段76
customText77 string 否 自定义文本字段77
customText78 string 否 自定义文本字段78
customText79 string 否 自定义文本字段79
customText80 string 否 自定义文本字段80
customNum1 string 否 自定义小数字段1 -- 精确到18位数、6位小数
customNum2 string 否 自定义小数字段2 -- 精确到18位数、6位小数
customNum3 string 否 自定义小数字段3 -- 精确到18位数、6位小数
customNum4 string 否 自定义小数字段4 -- 精确到18位数、6位小数
customNum5 string 否 自定义小数字段5 -- 精确到18位数、6位小数
customNum6 string 否 自定义小数字段6 -- 精确到18位数、6位小数
customNum7 string 否 自定义小数字段7 -- 精确到18位数、6位小数
customNum8 string 否 自定义小数字段8 -- 精确到18位数、6位小数
customNum9 string 否 自定义小数字段9 -- 精确到18位数、6位小数
customNum10 string 否 自定义小数字段10 -- 精确到18位数、6位小数
customEnum1 string 否 自定义字段中定义并激活的枚举变量1的逻辑名
customEnum2 string 否 自定义字段中定义并激活的枚举变量2的逻辑名
customEnum3 string 否 自定义字段中定义并激活的枚举变量3的逻辑名
customEnum4 string 否 自定义字段中定义并激活的枚举变量4的逻辑名
customEnum5 string 否 自定义字段中定义并激活的枚举变量5的逻辑名
customEnum6 string 否 自定义字段中定义并激活的枚举变量6的逻辑名
customEnum7 string 否 自定义字段中定义并激活的枚举变量7的逻辑名
customEnum8 string 否 自定义字段中定义并激活的枚举变量8的逻辑名
customEnum9 string 否 自定义字段中定义并激活的枚举变量9的逻辑名
customEnum10 string 否 自定义字段中定义并激活的枚举变量10的逻辑名
sendMq boolean 否 -
customEnums array[string] 否 -
customNum8WithBigDecimal number 否 -
customNum9WithBigDecimal number 否 -
customNum10WithBigDecimal number 否 -
customEnum1WithLogicName string 否 -
customEnum2WithLogicName string 否 -
customEnum3WithLogicName string 否 -
customEnum4WithLogicName string 否 -
customEnum5WithLogicName string 否 -
customEnum6WithLogicName string 否 -
customEnum7WithLogicName string 否 -
customEnum8WithLogicName string 否 -
customEnum9WithLogicName string 否 -
customEnum10WithLogicName string 否 -
customNum1WithBigDecimal number 否 -
customNum2WithBigDecimal number 否 -
customNum3WithBigDecimal number 否 -
customNum4WithBigDecimal number 否 -
customNum5WithBigDecimal number 否 -
customNum7WithBigDecimal number 否 -
customNum6WithBigDecimal number 否 -

UpdatedOrderCustomField

字段名 类型 是否必填 描述 示例
sequence integer (int32) 是 序列数
clientCode string 否 oTMS线下客户公司代码 (承运商帐户适用)
clientReferenceNumber string 否 调用的系统订单标识符
erpNumber string 否 外部系统的唯一的订单号
orderNumber string 否 oTMS订单号。如果已提供erpNumber,oTMS订单号视为无效。
customFields UpdatedCustomFields 否 自定义字段。这适用于启用并且正确配置了自定义字段的公司。

报文示例

请求示例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<orderCustomUpdateRequest version="0.1" login="username" password="password">
    <orders>
        <order sequence="1">
            <erpNumber>ERP-2017101702</erpNumber>
            <customFields>
                <customText1>2</customText1>
                <customText2>2</customText2>
                <customText3>3</customText3>
                <customText4>4</customText4>
                <customText5>5</customText5>
                <customText6>6</customText6>
                <customText7>7</customText7>
                <customText8>8</customText8>
                <customText9>9</customText9>
                <customText10>10</customText10>
                <customText11>11</customText11>
                <customText12>12</customText12>
                <customText13>13</customText13>
                <customText14>14</customText14>
                <customText15>15</customText15>
                <customText16>16</customText16>
                <customText17>17</customText17>
                <customText18>18</customText18>
                <customText19>19</customText19>
                <customText20>20</customText20>
                <customText21>21</customText21>
                <customText22>22</customText22>
                <customText23>23</customText23>
                <customText24>24</customText24>
                <customText25>25</customText25>
                <customText26>26</customText26>
                <customText27>27</customText27>
                <customText28>28</customText28>
                <customText29>29</customText29>
                <customText30>36</customText30>
            </customFields>
        </order>
    </orders>
</orderCustomUpdateRequest>

响应示例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<orderUpdateResponse version="0.1">
    <responseCode/>
    <processedOrders>1</processedOrders>
    <orders>
        <order sequence="1">
            <erpNumber>ERP-2017101702</erpNumber>
            <orderNumber>BESTSELL935000</orderNumber>
            <updateStatus>UPDATED</updateStatus>
            <responseCodes>
                <responseCode>
                    <code>7022</code>
                </responseCode>
                <responseCode>
                    <code>7044</code>
                </responseCode>
                <responseCode>
                    <code>7032</code>
                </responseCode>
                <responseCode>
                    <code>7045</code>
                </responseCode>
                <responseCode>
                    <code>7037</code>
                </responseCode>
                <responseCode>
                    <code>7029</code>
                </responseCode>
            </responseCodes>
        </order>
    </orders>
</orderUpdateResponse>

错误码解释

全局反馈代码

反馈代码 说明
0客户验证失败
1不支持的请求版本
2请求中的更新订单过多

单个请求反馈代码

反馈代码 说明
7000客户代码未找到。
7001无效的数据类型。
7003订单匹配结果不唯一。
7004用户地区权限不匹配。
7006订单不属于该公司。
7008已入账单的订单不允许更新。
7009订单不存在。
7043自定义字段不能识别——可能公司已经取消了自定义字段。订单不能更新。
7044未定义的自定义字段枚举值。订单不能更新。
7045未启用自定义字段,将忽略更新订单中的自定义字段。
7046订单缺少必填的自定义字段。订单不能更新。
7051承运商账户通过erpNumber更新订单时必须提供clientCode。
7054订单优化进行中,更新被拒绝。
7100其他错误。

API工具