签到领奖
查看: 1276|回复: 1

[eDIS API] eDIS FAQ

  [复制链接]
发表于 2018-3-13 15:59:22 | 显示全部楼层 |阅读模式
eDIS网站平台 https://www.edisebay.com
eDIS开发者平台 https://www.edisebay.com/open/api-document-detail
API正式环境 https://api.edisebay.com/v1/api
API沙箱环境 https://sandbox.edisebay.com/v1/api

1.完成渠道对接必须对接的接口有哪几个?
FetchToken、AddAddressPreference、AddConsignPreference、GetServiceList+AddPackage或AddPackageWithoutService+AssignService、ConfirmPackages、GetLabel、GetHandoverSheet.

2.api接口,订单包裹推送到平台物流发货的时候,物流商Carrier是平台指定还是我们自己指定? 物流商Carrier是什么?
(AddPackage指定物流上传包裹,AddPackageWithoutSeivice无指定物流服务上传包裹)
每个物流服务由特定物流商Carrier提供,接口指定物流服务serviceId即可。

3.目前是否有PHP语言版本的SDK?
暂时没有。

4.面单获取大小是多少?
GetLabel接口可指定pageSize参数选择A4或者10*10。

5.轨迹查询网站是什么?
EDIS网页或GetTrackingDetail接口均可提供轨迹查询功能。

6.API里面提到的沙箱环境,请问一下有测试账号么?
沙箱环境的账号用户名和密码是正式环境开发者管理页面中申请到的开发者ID和Secret。
在正式环境注册成为开发者之后,使用appid和密码即可访问沙箱环境。

Step1:先在web页面注册一个账号(使用自己的QQ邮箱,不要用企业邮箱):
5.png

Step2:按流程注册成功后,登录进去。
6.png

Step3:选择右上角的“前往个人中心”。
7.png

选择“开发者管理”,然后点击“申请开发者ID”。

7.API接口是用什么方式调用的 webserveices 还是http Post? 支持的数据格式是什么?
API接口推荐使用开发者平台提供下载的SDK调用,后端使用的是http post,使用的数据格式是application/json。

8.已经获取到了token的,除了FetchToken (登录认证) 这个接口外, 其他接口的Authorization 要怎么样传递?
其他接口请求头Authorization的值为“Bearer ”+token,注意Bearer和token之间需要有一个空格。

9.addPackage接口中的messageId 是填写什么?
messageId可以任意填。

10.请问当一个账号绑定了多个ebay账号的时候,addPackage接口的ebayId 字段要怎么传递?
应该传收到下单时对应的那个ebayId。

11.绑定了多个ebay账号后是否需要多个发货地址?只用一个发货地址有什么影响呢?
不一定需要多个,只用一个发货地址也可以正常使用。

12.客户授权给第三方开发者后,上传订单使用的是第三方的token。我们怎么识别这个订单对应的是哪个edis账号的呢?是根据上传时的ebayId吗?
你们根据ebayId去区分账号的吗?
商户API的请求参数中包含ebayID,第三方调用时EDIS首先会检查是否做过授权,接口都是需要带着eBayId来调用的。

13.上传包裹的订单数据是必须要ebay正式环境的订单数据吗?如果用ebay正式环境的数据会影响到客户正常发货吗?
上传的订单必须是EDIS中已绑定ebayID产生的交易,否则无法上传;如果用正式环境的数据交运以后会回传eBay物流状态,可能会影响正常发货, 沙箱环境可以用于测试。

14.请问这个客户端在哪里下载?或者提供一下wsdl文件路径。
2.png

这个Client是SDK中的类提供的,SDK从开发者平台https://open.edisebay.com/open/sdk-download)下载即可。

15.开发者平台下载了jar包,请问这个jar包编译的jdk版本是多少?可以提供jdk1.6编译的吗?
jar包jdk版本为**新的1.8,我们不提供1.6版本。

16.上传的订单必须是EDIS中已绑定ebayID产生的交易,否则无法上传。沙箱环境也是需要EDIS中已绑定ebayID产生的交易吗?
沙箱环境无需绑定eBayID产生的交易。

17.我使用正式环境的偏好ID在测试环境上传可以吗?我看测试环境没办法添加偏好的,返回consignPreferenceId is not exist 的错误。
1.png

正式环境和SandBox环境的偏**是独立维护的, 可以在SandBox环境调用AddConsignPreference接口,不需要通过Web UI设置偏好。

18.addPackage的district字段的问题,上传接口的packageWeight 字段文档是选填,但是不传这个参数会返回错误missing。
上传包裹的入参收件人distirct字段已经确认改为Optional。包裹重量为传入的packageWeight参数,已在文档中改为必填参数。

19.上传接口中 sku 里面的weight字段,是指这个sku在这个包裹的总重量(单个sku重量 * 数量)是吧?因为可能有多个sku。
是的,是指这个sku的总重量,weight字段是sku里每个item重量乘以数量。

20.获取实际运费的返回的报文不是200,这样是不是没有问题?
  1. class GetActualCostResponses {   
  2. status: class ResponsesStatus {      
  3. resultCode: 206      
  4. message: partial success      
  5. timestamp: 1520419602959        
  6. messageId: P024782719fce209b62b649f1a7e4526c426fac55   
  7. }   
  8. data: [class GetActualCostResponsesData {        
  9. trackingNumber: null        
  10. currencyCode: null      
  11. amount: null        
  12. billingTime: null        
  13. remark: null        
  14. resultCode: 44040003        
  15. message: no cost record   
  16. }]
复制代码

所查询的包裹还未结算实际运费,返回不是200没有问题。

21.成功上传了订单到eDIS平台了,然后调用取消包裹接口把包裹取消掉了。再次上传返回错误对应的 orderLineItem (即transactionId-itemId) 在系统已经存在。请问是否需要再调用删除包裹接口才可以重新上传那个订单呢?
是的,需要删除包裹后才能重新上传。

22.下面截图中的“orderLineItem”字段对应的是什么值?
11.jpg

对应的是eBay中transaction的orderLineItem。

23.当包裹是多品的时候itemList应该怎么样组织数据?
多个item时itemList为数组格式。

24.请问是否有接口中具体每个字段长度限制信息?
暂时没有整理长度限制的信息。

25.GetHandoverSheet 获取交接单这一步是否必须要有?还是只要获取了包裹的面单即可?
交接单是Carrier揽件时需要的交接单据,不打印可能影响揽收。

26.交接单格式是否有大小要求?有的话要求多少?
eDIS打印的交接单为A4大小。

27.交接单是不是一个包裹一张交接单?
一张交接单可以包含多个包裹,UI方式可以对包裹多选,API方式获取交接单可以传入多个包裹的运单号。

28.获取到交接单之后一般是如何打印?一个包裹一张交接单的话是不是和面单一起出单?
获取到的交接单数据为BASE64数据,需要以PDF格式输出到打印设备,同一批次揽货的包裹只需要一张交接单。

29.如果一天一张交接单,我们自己手写的交接单是否可以用?
手写是否可用需要Carrier确认,如果货物较多手写效率较低,建议从eDIS获取交接单。

30.请问这个切换成API同步,需要等我们API对接完成了才能切换吗?
12.jpg
不是的,你直接选第二项“用户通过API同步”就可以了,这样WEB UI的订单就不会自动同步过来了。
跟你们API对接完成与否没有关系。

31.调用AddPackage这个接口时,出现了以下问题。
  1. {
  2. "status": {
  3. "resultCode": 44040003,
  4. "message": "263465522178-2186026461016 declaration status is
  5. DECLARING",
  6. "timestamp": 1520582569189,
  7. "messageId": "123"
  8. },
  9. "data": null
  10. }
复制代码

上传包裹的时候,如果交易还没有通过预申报是会打回的,提示信息为“declaration status is DECLARING”,应该等预申报成功后再上传包裹。

32.我们接口都还没有对接通,怎么同步过来的订单就有一个已经有包裹信息了呢?这个是自动创建的包裹吗?
13.jpg
这个是eDIS系统自动同步过来的。
订单来源里你应该是选择了“系统自动导入”这一项,当有新的交易产生时,eDIS系统会自动把订单同步过来并创建包裹。

14.png


33.调用AddPackage上传订单这个接口,报错“Invalidvalue for itemId or transactionId or orderLineItem”。原因是数据不符合规则,假设itemId=12345transactionId=67890,则orderLineItem应为“12345-67890”。


34.客户通过第三方ERP打印发货面单,在edis系统里面的地址标签是没有勾选打印ebayId的,不过在[size=13.3333px]第三方ERP系统获取的打印地址面单是有那个客户id 和 自己的[size=13.3333px]ebayId的,请问是怎么回事?
用户在页面上的设定仅针对页面操作打印label通过第三方打印的面单设定需要在第三方系统中单独设置。

35.[size=13.3333px]通过第三方ERP系统上传订单申请跟踪号的时候,系统提示失败,失败原因:“have nouseful product service”。
是由于此包裹上传的申报总价格超过了800美金的限额,所以匹配不到物流服务。


36.客户打印面单的时候下面的条码打印不出来,如果客户不勾选商品信息,下面的条码就可以打印出来,但是面单上面没有申报信息,请问如何解决?
Fj7dv9szammOlzjgFmTQydaRGPQ9.png Fvq6Br4uhTg_TuYOvoeP5hAYXVR2.png

如果客户一个包裹中含有的交易数量超过了面单能显示的范围肯定是显示不全的,因为面单就那么大的地方。建议用户打这种面单的时候可以不选择商品显示打印,这不影响发货的。
面单上的区域有限,为了保证条码的完整性,对于商品种类过多的情况,我们也只能修改为用……来表示未完整显示商品信息,我们在后面的eDIS版本中会添加“拣货清单”功能,客户可以单独打印A4拣货清单来进行拣货操作。

37.客户自有ERP对接已经完成,测试期间生成的运单是带取件的状态,实际客户的货物已经发其他物流,因为运费被冻结了,客户现在要取消交运,退回运费,请问这种情况可以取消交运吗?
微信图片_20180322105010.png

微信图片_20180322105031.png
通过日志定位到这个包裹返回的物流轨迹,该条物流轨迹上的supportCancel=1.表示不能取消,所以该包裹不能进行取消操作

38.MANIFEST状态的订单能否取消是不定的吗?
这块还要追溯到之前反复沟通的“取消逻辑”问题

IS 与 OCL 之间有“取消申请”,“取消结果”两个接口,**早的设计为“IS平台提交取消申请”后“OCL回执是否可以取消”,因此物流轨迹中,OCL默认所有的轨迹均为 supportCancel=0,标识可以取消,针对每一次IS的询问,OCL都反馈是否可以操作取消;
后来了解到IS的逻辑为”待取件”页签下均允许卖家操作取消,且取消操作一定成功,不等待OCL返回的“取消结果通知“,因此要求OCL全部将轨迹设置为 supportCancel=1
IS现在”待取件“页签下取消逻辑调整了?
a.png

b.png

我刚刚和IS同事电话沟通,了解到IS的逻辑为“收到**个OCL tracking event”后,即会将订单转移至“运输中”页签,因此不能再操作“取消”,如果在“待交运“页签下,则可以操作取消,且均能取消成功;
1.  数据先行调整,以便卖家操作:
a-scan状态后不能取消,MANIFEST状态下可以取消订单,能否IS同事先手动调数据,将MANIFEST状态下订单调整为“可以取消”,以便卖家尽快取消并且冻结运费?
2.如之前所说的方案,MANIFEST运输轨迹,在IS平台需要对应“待取件”状态;
3.OCL中,针对轨迹的‘supportCancel’进行逻辑设计;

39. 客户通过ERP下单,出现“Invalidvalue for contact”报错项。
Invalid value for contact的原因是传递的收货地址联系人含有中文或者长度超过了20。


40.调用AddPackage接口返回如下错误,为什么会提示这个呢?
{"status":{"resultCode":44040002,"message":"202180991785-1643374206010 is not exist","timestamp":1520833551456,"messageId":"1520833551"},"data":null}
202180991785-1643374206010is not exist的原因是切换了订单来源,历史的交易已经被清除,这笔订单在eDIS系统里已经找不到了,需要重**成一个正式订单。
以前选的是系统自动同步,后来你改成了API同步后,eDIS系统会把之前UI自动同步的订单全部删掉,应该找一个设置成API同步后**成的正式订单。

41.eDIS后台可以打印交接单吗?
aa.jpg

可以,待取件的订单可以批量选择打印。

42.如果我们在你们EDIS系统后台操作打印交接单,是不是我们这边就可以不用对接这个打印交接单这个接口了,请帮忙确认下。
是的,可以不用去对接打印交接单这个接口了。

43.预申报是等系统去操作还是我们这边要对接什么接口吗?
预申报是等系统自动去操作,不需要调用任何接口。

44.请问预申报大概等多久呢?
一般是2个小时左右。

45.帮忙看看是什么原因提示获取不到跟踪号呢?我现在试了几单都是提示这个。
{"status":{"resultCode":44040007,"message":"apply tracking numberfailed","timestamp":1520990736879,"messageId":"1520990733"},"data":null}

是因为没有充值,所以无法申请到运单号。


46.用你们的沙箱环境的时候,登录账号沙箱账后,系统里面不能设置地址和交运偏好等设置吗? 但是接口要求必须传对应的ID,沙箱环境没有,请帮忙看下怎么处理呢?

都是灰色无法添加。
bb.jpg


沙箱环境是不能通过WEB UI设置地址和交运偏好的,可以采用调用相应API的方式。
c.png




47.用户上传订单时,报错显示“无可用物流服务”,请问是什么原因?
WeChat Image_20180416151809.png


无可用物流服务可能原因:1.超尺寸限制 2.超金额限制(申报价格超过了800美金) 3.预申报中 4.收件人名字含特殊字符 5.收货人手机为空 6.收货地址洲不全 7.包裹的重量超过2公斤(2000g)等。


48.关于SpeedPAK问题,英、德路向分为两个:标准型和经济型,我们系统对接需要将这两个类型分开吗?那么渠道产品编号是多少?SpeedPAK项下的物流服务包含加快型、标准型、经济型三种不同时效与追踪节点的物流服务。路向有美国线,英国线,德国线。但卖家对接,仅对接eDIS物流平台即可,通过平台可使用所有SpeedPAK物流服务。

49.包裹获取面单是否可以字画面单?能否提供面单模板给我?
目前不提供自画面单。


50.SpeedPAK渠道是否有专业的营运团队?以便后续卖家发货需上门揽收包裹,异常包裹的的问题方反馈及处理?
SpeedPAK由橙联科技提供给服务。目前已开通21个城市https://exportnews.ebay.com.hk/Home/speed_us/2,上门揽收,一件起揽,不设揽收门槛。异常问题,可联系橙联客服。https://exportnews.ebay.com.hk/Home/speed_us/5


51.关于取消包裹和删除包裹的区别。
CancelPackages (取消包裹信息):用于取消订单,只有状态为待交运、待取件、运输中的包裹支持取消,其中取消运输中的包裹需要物流商确认,取消成功的包裹会回到待申请运单号状态。DeletePackages (删除包裹信息):用于删除没有申请运单号的订单,申请运单号成功的订单需要取消后才能删除。


52.获取单号报错:
{"status":{"resultCode":44040008,"message":"352246795396-966173567022has been in otherpackage","timestamp":1523432540948,"messageId":"XM2U39137081"},"data":null}

has been in otherpackage是因为订单已经上传成功,再次上传就会报这样的错误。如果想重新上传,可以先删除订单。


53.有服务问题,卖家可以直接找 SpeedPAK的客服热线。



54.sku信息上传失败,文件模板错误。
FotzHMsMwaziVshppZ-RweTKmC7Q.png

解决办法:1. 使用excel打开该文件,另存为选择.CSV文件2. 使用记事本打开**的CSV文件,再次另存为,并选择编码格式为UTF-8  3. 去掉SKU编码超过20个字符的数据。


55.客户通过edis下单,反馈界面无法申请物流单号,apply trackingNumber failed.
此用户没有充值,所以无法申请物流单号。EDIS 平台上会有个冻结金额的动作, 这个动作是在ApplyTracking 时发生的。
冻结的金额是根据我们设的平均重量来冻,所以一般会在30元左右。

56.接口传送的是如下的serviceId,为什么现在返回提示"serviceId is not exist"?
["serviceId"]=>string(9) "EBCNUSPN2"
s:186:"failure-%%包裹接口返回错误;response=>s:132:"{"status":{"resultCode":44020015,"message":"serviceIdis notexist","timestamp":1523062814116,"messageId":"1523062813"},"data":null}";";

关于这个问题,是由于物流服务列表刷新导致的。遇到serviceId不存在错误时,可能是由于物流供应商提供了新的物流服务导致。您需要通过重新调用GetServiceList接口,重新获取**新的物流服务列表。

56.请问下交运包裹是不是要等我们仓库操作出货后再确认交运包裹呢?
是的,打印好发货标签并且包裹打包好后就可以操作确认交运了。

57.GetLabel(获取面单打印详情)接口,传入的trackingNumber字段是否支持一次上传多个,即t是否支持批量打印标签?

GetLabel这个接口一次只能传一个跟踪号,不支持批量打印标签。

58.沙盒环境订单是怎么产生的? 是授权了 ebay账号会自动产生还是什么?没有看到沙盒环境有授权ebay账号入口。
沙箱环境的订单需要调用AddPackage上传订单接口,item ID和transaction ID可以是虚拟的。

59.预申报什么情况下会出现?是否每个订单都会出现在预申报里?每个订单都需要用户等待两个小时才能获取运单号?
只要买家在ebay上付款后,该笔订单就会自动进行预申报,预申报原则上2个小时以内就会完成,个别情况也可能超过两个小时。
60.ConfirmPackages(确认并交运包裹信息),该接口什么时候调用?是否不调用该接口物流商就无法揽收此包裹?
当调用GetLabel接口打印标签后,并且包裹已经打包好准备出仓库时,就可以调用ConfirmPackages接口了。如果不调用该接口,物流商就无法揽收此包裹。

61.edis对应ebay后台 标记发货的物流方式是什么?我们该如何向ebay提交发货?
标记发货的物流方式是在AddPackage接口里指定的物流服务ID。当订单交运后,由卖家自送或者邮局上门揽收,包裹扫描之后物流状态会变成“已发货”。
123.png


62.客户反馈在第三方ERP对接中,系统报错:unauthorized ebayId: ganvillage_green,与客户确认已在EDIS已绑定此eBay账号,现无法完成对接。
此问题的原因用户没有对[size=13.3333px]第三方[size=13.3333px]ERP做过授权操作。需要在个人中心-开发者管理页面,找到“授权第三方开发者ID”进行操作。







评分

1

查看全部评分

发表于 2018-3-13 18:07:47 | 显示全部楼层
非常好,文档很详细
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表