powerpoint presentation templateg-ec2.images-amazon.com/images/g/28/cn-webinar/mws...all rights...
TRANSCRIPT
All rights reserved by Amazon.com, Inc. or its Affiliates 1
亚马逊卖家上线指导
亚马逊卖家技术集成团队
2012年6月
All rights reserved by Amazon.com, Inc. or its Affiliates 2
培训内容(MWS功能资源开发细节)
亚马逊MWS介绍
亚马逊MWS优势
亚马逊MWS功能介绍
亚马逊MWS相关资源
亚马逊MWS开发注意事项
亚马逊MWS开源SDK的使用
All rights reserved by Amazon.com, Inc. or its Affiliates 3
亚马逊MWS介绍
什么是亚马逊MWS
– 亚马逊MWS全称为亚马逊商城网络服务,是一套帮助商家系统化管理店铺运营的API
– 亚马逊提供MWS是为了给商家提供运营上的便利,减少重复性操作,提高自动化水平
– MWS提供了商品及库存管理,订单管理,报告管理
– 针对FBA还提供了商品发货入库、库存状况查看以及多渠道订单的管理
亚马逊MWS的用户范围
亚马逊中国入驻商家
All rights reserved by Amazon.com, Inc. or its Affiliates 4
亚马逊MWS优势
通过MWS进行系统集成的优势
为什么要使用亚马逊MWS
– 将重复性操作交给系统,降低运营成本
– 将大批量数据操作交给系统,提高运营承载力
– 系统规范流程,减少人工错误
– 及时获取信息,加快决策速度
– 掌握运营数据,降低运营成本
All rights reserved by Amazon.com, Inc. or its Affiliates 5
亚马逊MWS功能介绍
上传数据API
– 创建商品信息及图片
– 更新商品信息及图片
– 更新商品的库存与价格
– 订单的确认、发货确认、发票确认、取消订单或订单退款
– 上传其它可批量处理的文件
– 取消上传,查看上传处理结果
All rights reserved by Amazon.com, Inc. or its Affiliates 6
亚马逊MWS功能介绍
上传数据API
– SubmitFeed 上传准备好的XML或者文本文件
– GetFeedSubmissionList 查询上传记录状态
– GetFeedSubmissionCount 查询上传记录数量
– CancelFeedSubmission 取消尚未处理的上传
– GetFeedSubmissionResult 查询上传记录处理结果
上传数据API的作用至关重要,包括添加维护商品,修改库存价格,订单信息更新等需要回写信息至亚马逊的功能都通过上传数据API来实现。
上传数据分为两种格式:XML文件或者用制表符分隔的文本文件。
亚马逊MWS功能介绍
AMTU (了解更多)
卖家自有数据信息
手工输入
向亚马逊上传数据(商品、订单等等)
亚马逊MWS
亚马逊
7
填写模板另存为Unicode文件
卖家后台
All rights reserved by Amazon.com, Inc. or its Affiliates 8
亚马逊MWS功能介绍
上传数据的两种类型 – 以制表符分隔的文本文件:亚马逊提供的Excel模板,填
写数据之后保存为Unicode文件(每一列用制表符分隔),在了解文件格式之后,使用程序生成此类型文件
– 建议流程:下载模板,学习填写,保存为Unicode文件上传至无错误,使用程序生成文件,使用API上传
– 模板使用培训教程http://kaidian.amazon.cn/resources/market-activities/webinars/
– 商品模板、修改库存价格模板、订单相关模板 https://mai.amazon.cn/gp/help/13461
– 上传处理错误说明 https://mai.amazon.cn/gp/help/17781
– 批量上传注意事项 https://mai.amazon.cn/gp/help/200894980
All rights reserved by Amazon.com, Inc. or its Affiliates 9
亚马逊MWS功能介绍
下面以更新订单配送确认模板为例:
首先进入卖家后台下载模板,了解模板格式与数据规范。( https://mai.amazon.cn/gp/transactions/uploadShippingConfirmation.html/ )
模板中包括了详细的数据定义,模板填写页,以及模板属性有效值列表。
模板中包含隐藏行,一般在第三行,请注意这三行的内容和格式都不能修改。
按照数据定义以及示例填写模板,并且另存为Unicode text 文件,这就是最终需要通过API上传到后台的数据格式。(每一列是通过制表符Tab来进行分割的)
示例:http://g-ecx.images-amazon.com/images/G/28/rainier/help/Flat.File.ShippingConfirm.cn.txt
All rights reserved by Amazon.com, Inc. or its Affiliates 10
亚马逊MWS功能介绍
– XML格式的文件:亚马逊提供了XSD文件来定义XML的格式以及参数顺序等信息,同时还需要使用XML数据字典以及相对应Excel模板来确定确定参数含义以及有效值范围
– XML数据字典链接:https://mai.amazon.cn/gp/help/35241
– Excel模板中的数据定义(参数名请参考模板页的隐藏列)
– XML介绍 https://mai.amazon.cn/gp/help/200374090
– 获取XSDs (XML定义描述) https://mai.amazon.cn/gp/help/1611
– 批量上传注意事项 https://mai.amazon.cn/gp/help/200894980
标签名称 描述 可接受的值 示例
订单编号 订单的卓越亚马逊唯一可显示编码,在您的订单报告中
予以提供。
17
位的字母数字文本,格式为
###-#######-#######。
123-1234567-
1234567
订单商品编号 订单中商品的卓越亚马逊唯一可显示编码,在您的订单
报告中予以提供。如果您所确认的是整个订单的配送,
则该项不是必填项。有关拆分货件,请参阅以下说明
。
14 位的正整数。 12345678901234
All rights reserved by Amazon.com, Inc. or its Affiliates 11
亚马逊MWS功能介绍 • <?xml version="1.0" encoding="UTF-8"?>
• <AmazonEnvelope xsi:noNamespaceSchemaLocation="amzn-envelope.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
• <Header>
• <DocumentVersion>1.01</DocumentVersion>
• <MerchantIdentifier>M_EXAMPLE_123456</MerchantIdentifier> ---填入商家编码
• </Header>
• <MessageType>OrderFulfillment</MessageType> ---上传消息的类型,amzn-envelope.xsd文件中有定义
• <Message>
• <MessageID>1</MessageID> ---信息序号
• <OperationType>Update</OperationType> ---操作类型: Update, PartialUpdate, Delete
• <OrderFulfillment>
• <AmazonOrderID>C02-5337249-0029666</AmazonOrderID> ---订单编号
• <FulfillmentDate>2011-05-15T14:41:43+08:00</FulfillmentDate> ---订单发货时间必须晚于订单产生时间,早于上传发货确认数据的时间,请注意时区
• <FulfillmentData>
• <CarrierName>长沙创一</CarrierName> ---快递公司
• <ShippingMethod>快速</ShippingMethod> ---配送方式
• <ShipperTrackingNumber>1</ShipperTrackingNumber> ---单号
• </FulfillmentData>
• <Item>
• <AmazonOrderItemCode>01407449736376</AmazonOrderItemCode> --订单商品编号
• <Quantity>1</Quantity> --数量
• </Item>
• </OrderFulfillment>
• </Message>
• </AmazonEnvelope> ----以上为完整的确认发货XML示例
All rights reserved by Amazon.com, Inc. or its Affiliates 12
亚马逊MWS功能介绍
上传数据的注意事项 – 上传数据为异步操作,必须查看API文档中的处理流程图
– 上传数据以及获取处理报告均需要提供流对象,请注意处理报告根据上传数据格式的不同也分为XML以及文本文件两种
– 上传数据应该仅包含需要修改的商品、订单等信息,如果包括不需要修改的商品,会导致需要更新的信息不能及时被处理。
– 同一类型(FeedType)的文件的上传间隔应该拉大,尽可能把同类型数据放入一次上传中提高效率。
– 批量上传注意事项 https://mai.amazon.cn/gp/help/200894980
All rights reserved by Amazon.com, Inc. or its Affiliates 13
亚马逊MWS功能介绍
订单API
– 根据条件检索订单
– 获取订单详情以及状态
– 获取订单内商品详情和发票需求
All rights reserved by Amazon.com, Inc. or its Affiliates 14
亚马逊MWS功能介绍
订单API
– ListOrders 按照条件检索订单
– GetOrder 查询多个订单详情
– ListOrderItems 查询订单商品详情
– GetServiceStatus 查看服务器状态
All rights reserved by Amazon.com, Inc. or its Affiliates 15
亚马逊MWS功能介绍
亚马逊处理订单的流程:
自发货的订单处理流程可以分为以下几个部分,由亚马逊发货的订单仅需要发送发票并进行发票确认。
1)下单之后,买家会收到亚马逊的订单确认,并提示买家进行在线付款操作。
2)订单在等待状态仅显示订购商品,不提供买家信息以及配送地址,应该在此时就对商品进行预留。
3)订单转为未配送状态需要同时满足两个条件:下单时间超过大约30分钟,买家付款已通过核实。
4)卖家确认订单操作(表明已接收订单)为可选操作,为订单标记的卖家定义订单号,之后可以使用卖家指定的订单号对订单进行操作。
5)确认订单配送和确认发票为两个独立的操作,在确认发货之后买家会收到邮件通知。
6)订单配送之后,买家有可能会通过卖家客服邮件或电话联系进行退换货处理,卖家对部分订单进行部分、全额或超额退款的操作。
1).买家在亚马逊
网站下单 卖家 卖家 卖家 卖家 2).订单对卖家可
见(等待中)
3).买家支付完成
订单转为未配送
4).卖家确认或取
消订单
5).卖家配送商品
和发票,并进行
确认操作
6).卖家对部分订
单进行退款
All rights reserved by Amazon.com, Inc. or its Affiliates 16
亚马逊MWS功能介绍
报告API
– 请求生成报告,并获取报告
– 创建定期生成的报告
– 取消报告或者标记报告为已读
– 查看报告请求情况
注:获取的各种报告可以导入商家系统,进一步整合运营数据。例如结算报告,订单报告,库存报告等等。
All rights reserved by Amazon.com, Inc. or its Affiliates 17
亚马逊MWS功能介绍
报告API
– RequestReport 请求生成报告
– GetReportRequestList 查看报告请求列表
– CancelReportRequests 取消报告
– GetReportList 查看报告列表
– GetReport 下载报告
– UpdateReportAcknowledgements 将报告标记为已下载
All rights reserved by Amazon.com, Inc. or its Affiliates 18
亚马逊MWS功能介绍
报告API
– ManageReportSchedule 创建、更新或删除定期生成的报告
– GetReportScheduleList 获取定期生成报告的列表
– GetReportScheduleCount 获取已请求的定期生成报告数量
注:获取报告是异步操作,在请求报告之后需要等待服务器生成报告,报告生成之后会提供下载报告所需编号,详情请参考API文档
All rights reserved by Amazon.com, Inc. or its Affiliates 19
亚马逊MWS功能介绍
其他相关文档 – 各种报告的详细解释与字段示例
– 使用“在售商品报告”可以获得商品SKU、ASIN,名称等信息
对报告的详细介绍
All rights reserved by Amazon.com, Inc. or its Affiliates 20
亚马逊MWS功能介绍
商品API
– 通过商品条码或关键词查找商品
– 查看商品匹配情况
– 获取商品商家报价信息
– 查看商品分类
注:通过商品API进行商品匹配可以最大限度减少人工匹配操作。获取商品报价信息可以及时了解不同商家定价策略,以便进行对应调整。
All rights reserved by Amazon.com, Inc. or its Affiliates 21
亚马逊MWS功能介绍
商品API – ListMatchingProducts 通过商品条码或关键词查找商品
– GetMatchingProductForId 通过商品ID查看商品属性
– GetCompetitivePricingForSKU/ASIN 获取有竞争力的价格
– GetLowestOfferListingsForSKU/ASIN 查看商品最低报价
– GetMyPriceForSKU/ASIN 查看商品自己提供的价格
– GetProductCategoriesForSKU/ASIN 查看商品分类
注:商品API的访问限额与其他API不同,请参考API文档获取更多信息。
All rights reserved by Amazon.com, Inc. or its Affiliates 22
亚马逊MWS功能介绍
待收货货件API(发货至亚马逊)
– 创建、更新亚马逊物流的入库货件
– 创建或修改货件中的商品列表
亚马逊库存API
– 查看亚马逊库存的实时情况
出口货件API(针对多渠道配送)
– 查看订单的预计送达时间
– 创建、取消多渠道配送订单
– 查看订单配送状态
All rights reserved by Amazon.com, Inc. or its Affiliates 23
亚马逊MWS功能介绍
待收货货件API(发货至亚马逊)
– CreateInboundShipmentPlan 提交发货地址,创建亚马逊物流的入库货件
– CreateInboundShipment 提交入库货件商品
– UpdateInboundShipment 更新入库货件商品
– ListInboundShipments 查看入库货件商品
– ListInboundShipmentItems 查看入库货件中的商品
All rights reserved by Amazon.com, Inc. or its Affiliates 24
亚马逊MWS功能介绍
亚马逊库存API – ListInventorySupply 查看亚马逊库存的实时情况
出口货件API(针对多渠道配送) – GetFulfillmentPreview 多渠道配送订单预览
– CreateFulfillmentOrder 创建多渠道配送订单
– GetFulfillmentOrder 查看多渠道配送订单
– ListAllFulfillmentOrders 查询已创建订单
– GetPackageTrackingDetails 查看订单配送状态
– CancelFulfillmentOrder 取消多渠道配送订单
All rights reserved by Amazon.com, Inc. or its Affiliates 25
亚马逊MWS相关资源
亚马逊MWS资源入口: – 进入卖家后台
– 在主页右上方搜索“MWS”
– 进入“亚马逊 MWS 概览”页面
– 进入注册页面可以进入MWS网站
All rights reserved by Amazon.com, Inc. or its Affiliates 26
亚马逊MWS相关资源
亚马逊MWS网站 – 获取MWS使用权限(注册账号)
– 获取MWS开发文档
– 获取MWS开发SDK
– 使用MWS开发测试工具(ScratchPad)
– 访问MWS开发者社区
– 向亚马逊提交问题,获取支持
卖家后台MWS帮助 – 了解MWS详情
– 获取开发所需XML文档(可选)
– 其他相关文档
All rights reserved by Amazon.com, Inc. or its Affiliates 27
亚马逊MWS相关资源
注册账号
在亚马逊网站使用卖家账号进行注册 https://developer.amazonservices.com.cn/index.html
All rights reserved by Amazon.com, Inc. or its Affiliates 28
亚马逊MWS相关资源
第一种为直接申请访问账号,一般软件都是使用这种模式。
第二种为授权给第三方的账户来访问亚马逊接口,这表明您授权给开发商或者软件商通过MWS接口访问及操作您的店铺
All rights reserved by Amazon.com, Inc. or its Affiliates 29
亚马逊MWS相关资源
图中的信息请妥善保存,此信息为亚马逊卖家链接到MWS所需信息
All rights reserved by Amazon.com, Inc. or its Affiliates 30
亚马逊MWS相关资源
注:软件商有权选择是否要求卖家进行授权才能使用软件。请详细阅读相关解释与协议。
授权模式:软件商提供相关信息,卖家把账号MWS访问权限授权给软件商
All rights reserved by Amazon.com, Inc. or its Affiliates 31
亚马逊MWS相关资源
注:软件商有权选择是否要求卖家进行授权才能使用软件。请详细阅读相关解释与协议。如果需要解除某项授权,请与亚马逊MWS联系,需要提供授权时使用的开发商账号
授权模式:软件商提供相关信息,卖家把账号MWS访问权限授权给软件商
All rights reserved by Amazon.com, Inc. or its Affiliates 32
亚马逊MWS相关资源
MWS网站:https://developer.amazonservices.com.cn/index.html
API文档与SDK,SDK提供了Java,C#及PHP三种版本
All rights reserved by Amazon.com, Inc. or its Affiliates 33
亚马逊MWS相关资源
MWS开发须知 FBA功能对接手册 使用XML的教程 测试工具文档
各部分API的详细文档以及Java、C#、PHP版本SDK的下载
All rights reserved by Amazon.com, Inc. or its Affiliates 34
亚马逊MWS相关资源
https://mws.amazonservices.com.cn/scratchpad/index.html
测试工具填入MWS账号信息,选择需要测试的操作,填入必要参数,便可查看请求详情和响应详情
All rights reserved by Amazon.com, Inc. or its Affiliates 35
亚马逊MWS相关资源
https://mai.amazon.cn/gp/mws/contactus.html
使用“联系亚马逊”功能提交与MWS有关的问题(需要登录卖家账号) 请注意:在使用第三方软件时出现任何问题,请联系软件商寻求解决。
All rights reserved by Amazon.com, Inc. or its Affiliates 36
亚马逊MWS相关资源
卖家后台MWS帮助 – MWS概览 https://mai.amazon.cn/gp/help/200389230
– XML介绍 https://mai.amazon.cn/gp/help/200374090
– 获取XSDs (XML定义描述) https://mai.amazon.cn/gp/help/1611
其他相关文档 – 商品模板、修改库存价格模板、订单相关模板
https://mai.amazon.cn/gp/help/13461
– 上传处理错误说明 https://mai.amazon.cn/gp/help/17781
– 批量上传注意事项 https://mai.amazon.cn/gp/help/200894980
All rights reserved by Amazon.com, Inc. or its Affiliates 37
亚马逊MWS开发注意事项
使用SDK或不使用SDK都需要注意
MWS请求频率限制(Throttling)
MWS请求结果分页(NextToken)
MWS的异步操作模式
MWS的时间格式
MWS的请求时戳(Timestamp)
MWS的常见错误
卖家账号状态
All rights reserved by Amazon.com, Inc. or its Affiliates 38
亚马逊MWS开发注意事项
MWS请求频率限制(Throttling) – 请求频率限制是亚马逊设定的每一个卖家在一段时间内
进行次数的限制
– API的每一个操作都有请求频率限制 例:GetReport 操作的最大请求限额为 15 个,恢复速率为每分钟 1 个请求
这里的最大请求限额数量为初始状态下卖家可以进行此操作的最大次数,同时可用请求次数用远不会超过最大限额次数。当可用请求次数小于最大限额,亚马逊会按照恢复速率为卖家账号增加可用请求次数。
如过当前可用请求次数为 0 ,进行请求就会被MWS拒绝,请开发者注意对请求次数及频率的控制。最简单的方法是保证进行请求的频率不要高于恢复速率,例如上述方法,卖家在请求时频率为30秒1次,则很快会将可用的请求次数用尽,不得不等待服务器每分钟恢复1个请求。如果卖家的请求频率设定为1分钟1次或更低,则永远不会出现请求数量用尽的情况。
每一个卖家账号在一个小时内总计可以进行10,000次请求,请注意。
详情请参考《亚马逊MWS开发者指南》
All rights reserved by Amazon.com, Inc. or its Affiliates 39
亚马逊MWS开发注意事项
MWS请求结果分页(NextToken) – 能够返回多个结果的请求,亚马逊提供了分页的功能。
例:GetReportList 操作返回已生成的报告列表,该请求最大可返回100个结果,如果符合条件的结果大于100个,就需要使用到分页的功能。
支持分页功能的操作都会提供一个与该操作名称相似的新的操作(原操作名后加上ByNextToken),例如GetReportList操作,亚马逊提供了GetReportListByNextToken操作。
当GetReportList或GetReportListByNextToken操作的返回结果中包括NextToken(例 <NextToken>2YgYW55IPQhvu5hbCBwbGVhc3VyZS4=</NextToken> ),将NextToken的值传入ByNextToken操作就可以获取结果的下一页,以此类推。
详情请参考《亚马逊MWS开发者指南》
All rights reserved by Amazon.com, Inc. or its Affiliates 40
亚马逊MWS开发注意事项
MWS的异步操作模式 – 异步模式就是指某些操作在提交请求之后,服务器不会
立刻返回处理结果,而是返回任务编号以便过后可以查看处理进度以及最终结果。上传数据API以及报告API都使用了这种模式。
例:上传数据API的SubmitFeed 操作提交数据之后,服务器将返回FeedSubmissionId,此ID将用于查看上传处理状态及最终结果。
例:报告API的RequestReport 操作在请求一个报告之后,服务器将返回ReportRequestId,此ID将用于查看报告生成状态及获取最终的报告编号。
亚马逊分别对这些异步操作的调用过程制作了流程图,方便开发者了解并使用这些操作。流程图提供在上传数据API以及报告API文档的操作详细介绍之前。
如果在预期长时间等待之后异步操作始终无法完成,卖家需要使用相关的ID联系亚马逊卖家支持团队寻求支持。
详情请参考《上传数据API》《报告API》文档
All rights reserved by Amazon.com, Inc. or its Affiliates 41
亚马逊MWS开发注意事项
MWS的时间格式 – 亚马逊接受的时间格式为ISO8601的时间 – 英文说明 http://www.w3.org/TR/xmlschema-2/#dateTime
– 中文说明 http://www.w3school.com.cn/schema/schema_dtypes_date.asp
– 亚马逊返回的时间格式都会标明时区,一般为UTC( 2012-04-14T22:16:46Z )
– 商家提交时间(作为参数或在上传数据中)必须要注意时区问题,提交时间需要提供时区信息( 2011-05-15T14:41:43+08:00 代表北京时间 15日下午2点41分43秒)
All rights reserved by Amazon.com, Inc. or its Affiliates 42
亚马逊MWS开发注意事项
MWS的请求时戳(Timestamp) – 每个请求都需要提供时戳,最好使用国际标准时间时区
格式(例: 2012-04-14T22:16:46Z )
– 时戳的时间与MWS服务器时间的差值不能大于15分钟,否则请求将被拒绝
– 获取服务器当前时间 https://mws.amazonservices.com.cn/(直接访问即可,用于对时)
– 建议卖家调整本地机器时间与服务器时间一致
All rights reserved by Amazon.com, Inc. or its Affiliates 43
亚马逊MWS开发注意事项
MWS的常见错误 – 账号信息填写不正确
– 请求操作超过限额:需要调整访问频率
– 访问错误的服务器:不同API访问的服务器不同
– 提交的参数不符合要求:参考API文档提供正确参数
– 因时戳问题被拒绝:调整时戳
– 卖家账号因绩效问题导致MWS不能继续使用
All rights reserved by Amazon.com, Inc. or its Affiliates 44
亚马逊MWS开发注意事项
开发注意事项 在使用亚马逊MWS开发店铺所需要的功能时,请注意以下细节。如果您忽略一下一些建议,在您遇到问题需要技术上的支持时,我们排查错误将遇到困难
• 请求都需要提供User-Agent 标头。Application name可以是您的软件的名称、店铺名称、公司名称或可以唯一标示您的应用的信息。请注意不要使用中文,不要包含”/”。(请参考MWS开发者指南)
• 每一个请求失败亚马逊都会返回错误编码,错误信息以及RequestId,这三项内容加上访问时间是解决技术问题的依据,请届时提供。
• 上传数据API要求商家合理的调整上传频率,上传数据中应该仅包括数据发生变更的商品。(例如库存同步:不能频繁的对所有库存进行更新,每次应只更新库存数量有变化的商品)
• 上传数据API的上传内容,上传批量编号(FeedSubmissionId)以及处理结果商家需要做对应保存,以保证之后可以查询。
• 访问配额设置,开发中必须要考虑到访问配额的设置。(请参考MWS开发者指南)
• 注意考虑账户及同步数据的安全性
All rights reserved by Amazon.com, Inc. or its Affiliates 45
亚马逊MWS开源SDK使用
• SDK有Java、C#或PHP三种版本,开发者可以选择需要使用的版本以及需要使用的API
• SDK重要文件有以下,不同语言版本略有不同,这里以Java上传数据API为例: – MarketplaceWebServiceClient 文件——SDK实际进行访问所使用的类
– MarketplaceWebServiceConfig 文件——访问详细参数配置信息(一般不需要修改)
– samples 文件夹——存放每一个操作的调用代码
– model 文件夹——存放类文件
– mock 文件夹——存放模拟的服务器响应,可以进行本地模拟测试
• 在配置好访问环境之后,可以采用如下步骤进行接口调用:a,配置MWS账号以及服务器地址,b,定位需要使用的操作所需要修改的文件,c,反注释相关代码填写参数进行调用。
All rights reserved by Amazon.com, Inc. or its Affiliates 46
亚马逊MWS开源SDK使用
• 配置MWS账号信息以及服务器地址,填写分为2种方式
– 每一个操作单独填写MWS账号信息以及服务器地址(保存在samples目录下调用文件中)
– SDK提供了统一的填写MWS账号信息以及服务器地址的配置文件
• PHP版本在samples目录下提供了“.config.inc.php”文件
• C#版本在samples目录下提供了“MarketplaceWebServiceSamples.cs”文件
账号与参数的对应关系(不同的SDK参数名可能略有不同):
– AWS访问密钥:accessKeyId 或AWS_ACCESS_KEY_ID
– 密钥:secretAccessKey 或AWS_SECRET_ACCESS_KEY
– 卖家编号:merchantId 、 MERCHANT_ID 、sellerId 或 SELLER_ID
– 商城编号:marketplaceId (为List对象)
– 应用名称:applicationName 或appName (用来标识访问MWS的应用,商家自行开发的应用可以填写店铺名称的英文或其他可以唯一标识应用的名称,不要使用中文或“/”)
– 应用版本:applicationVersion 或appVersion
• MWS端口:serviceURL(服务器地址,不同API有所不同)
All rights reserved by Amazon.com, Inc. or its Affiliates 47
亚马逊MWS开源SDK使用
• 定位接口调用所使用的方法
– PHP及Java版本为独立文件,Samples目录下的sample文件可以直接进行访问或运行
– C#版本在samples目录下提供了“MarketplaceWebServiceSamples.cs”文件,其中包括各个操作的调用。
• 反注释所需代码,进行操作调用设置
– MarketplaceWebService service = new MarketplaceWebServiceMock(); //调用模拟测试类(非真实调用)
– MarketplaceWebService service = new MarketplaceWebServiceClient(accessKeyId, secretAccessKey, config);//调用真实访问类(常用)
– RequestReportRequest requestOne = new RequestReportRequest();//创建请求对象
– invokeRequestReport(service, requests);//进行接口调用
• 填写操作所需要的请求参数,进行访问,查看结果
All rights reserved by Amazon.com, Inc. or its Affiliates 48
亚马逊MWS开源SDK使用
• 开发者自行创建SDK,接口调用机制介绍
• 自行创建SDK亚马逊提供了详细的说明文档,请参考《MWS开发者指南》,这里介绍一些调用机制与开发注意事项
• MWS支持HTTP请求,使用Get或Post方法,并在 URL 或 HTTP 正文中分别包含查询参数。亚马逊 MWS要求使用 HTTPS,以防止第三方窃听您与亚马逊的沟通信息。响应为XML文档
• 封装请求大致分为以下几个步骤
– 创建HTTP Header,提供user-agent等信息
– 准备请求所需的参数,包括卖家编号和AWS访问密钥
– 将步骤b中的参数按照规格要求拼接为一个字符串,并使用密钥计算签名
• 如果需要上传数据或者获取处理结果或者各种报告,MWS使用了MD5校验来确保网络传输中数据完整
– 在上传数据之前,开发者需要对上传的数据进行MD5计算,并将MD5值放入请求中发送到服务器端
– 服务器会对接收到的数据进行MD5计算,并与请求中传递的客户端计算的MD5进行比对,确保传输正确
All rights reserved by Amazon.com, Inc. or its Affiliates 49
亚马逊MWS开源SDK使用
• 开发者在自行创建SDK的过程中,请多使用MWS的测试工具ScratchPad,该工具提供了请求详情与签名字符串详情。同时开发者还可以查看开源的SDK的代码(MarketplaceWebServiceClient及其他文件)获取帮助。
• 注意:SDK中对签名计算方法有详细的说明和注释,这里对最常用的signatureMethod = "HmacSHA256" signatureVersion = "2" 签名方法进行介绍: – HTTP 请求方法,之后添加ASCII换行符(%0A)
– HTTP主机的小写地址,之后添加ASCII换行符(%0A)
– 包含在HTTP绝对路径中部分,例如订单API为 ‘/Orders/2011-01-01’如果为空则仅使用‘/’,之后添加ASCII换行符(%0A)
– 将参数按参数名字典顺序排序,使用‘=’链接参数名和值,使用‘&’链接两组参数。
• 准备好可以进行签名计算的字符串,账号信息已用XXX替代 "POST\nmws.amazonservices.com.cn\n/Orders/2011-01-01\nAWSAccessKeyId=XXX&Action=ListOrders&CreatedAfter=2012-08-28&MarketplaceId.Id.1=XXX&SellerId=XXX&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-08-28T12%3A31%3A52.260Z&Version=2011-01-01"
All rights reserved by Amazon.com, Inc. or its Affiliates 50
谢 谢!
亚马逊MWS网站
https://developer.amazonservices.com.cn/index.html
亚马逊卖家后台MWS帮助
https://mai.amazon.cn/gp/help/200389230