1.申请正式采购账号,有什么注意事项?
需要使用个人淘宝账号+绑定非航旅版的企业支付宝。该个人淘宝的会员名不要出现与贵公司相关的信息,在售后旺旺沟通时,卖家可以看到买家会员名;
2.申请应用名称时,有什么注意事项?
建议使用 企业名+使用场景(巴拿马) 的格式;审核小二花名:诚善
3.正式环境支付失败,报错:支付宝协议支付失败AGREEMENT_ERROR AGREEMENT_ERROR
先看下代扣协议签约是否完成(接入文档第4步),签约成功后,如果还是报这个错,检查下开发帐号和采购签约账号是否一致,不一致的话,需要先授权(接入文档第5步
4.授权怎么做?
严格按照文档第5步,先在开发者应用的 应用设置->授权管理,设置店铺授权;然后在登陆链接open.alitrip.com/apitools/sessionPage.htm 页面输入开发者的AppKey点击登录并授权,登陆采购账号,授权获取sessionkey
5.必须入聚石塔吗?
是。这是集团安全的规定。建议入塔的流程早一点开始准备
6.不同的账号可以共用同一个聚石塔吗?
可以。新采购账号不用重新申请聚石塔,国内国际可以使用同一个聚石塔资源,不会造成数据混淆
7.应用提交发布上线时填写的回调URL地址有没有什么特殊要求,比如,这个URL接收飞猪推送的哪些信息,是否需要采购商返回信息?
会推送sessionkey,以及有效期. sessionkey是有时效性的,上线后一般3个月,需要定期刷新。只接收,不返回就ok
8.SessionKey 的有效期是多久呢?如何保证这个SessionKey的有效?
可以登录淘宝,看到有效期,未上线的应用有效期为24小时,上线后一般是3个月;提高应用的安全等级,可以提升sessionkey的有效周期 更新sessionkey的方法: 1.可以通过程序刷新,文档地址:https://open.alitrip.com/doc2/detail?spm=a21tt.8223301.0.0.MUem7Y&docType=1&articleId=102635&treeId=1 2.人工更新 沙箱的:sessionkey失效时,请@红丹提供; 正式的:有授权链接://open.taobao.com/apitools/sessionPage.htm?spm=0.0.0.0.5Fhlji, 3.sessionkey过期时,接口报错:{"Result":null,"ErrCode":"27","ErrMsg":"Invalid session","SubErrCode":"invalid-sessionkey","SubErrMsg":null,"Body":"<?xml version=\"1.0\" encoding=\"utf-8\" ?><error_response><code>27</code><msg>Invalid session</msg><sub_code>invalid-sessionkey</sub_code><request_id>15a03cthnbqf7</request_id></error_response>
9.可以使用沙盒进行测试吗?
支持沙箱测试。但是由于沙箱环境线路行程不全。建议直接在线上测试即可。测试支付接口时,需要选择自营的产品,下单后请自营的运营同学确认可以全退后,在调用支付接口测试。
10.询价接口的OD信息和selected_flight信息怎么传?
中转的,是一个od,里面多个selectflight;往返是两个od;多程是多个od。
11.中转往返4程,“trip_type”字段传什么值
传2 ,属于往返
12.调用询价接口的时候没有旅客信息,怎么传?
乘机人信息例如姓名性别可以使用默认的假信息,但是 乘机人类型(成人儿童) 及对应的乘机人数 必须要正确
13.获取商品详情接口,product->modify_ticket_rule 是什么规则 我看了几个有的感觉是退票规则有的感觉是改签规则,product->refund_ticket_rule 这个是什么规则 退票还是改签?两个会有一样的情况吗?
modify_ticket_rule----改签; refund_ticket_rule----退票; 存在两个返回一致的情况,你们可以做一个判断,如果内容一样,只显示一个
14.获取商品详情接口,这个国籍跟签发国是中文名字 你们那边的格式是什么样子的?
请在钉钉群联系@红丹 提供国籍对照表
15.创建订单接口:out-relation-id 这个字段我们怎么填,自己生成吗?
可以理解为你们的订单号,或者唯一标示号;string格式;trace_id 是每次搜索查询下单都有唯一的一个trace_id 。用于咱们联调,排查问题使用,从询价到下单查询订单等整个流程使用同一个trace_id;不同的搜索使用不同的trace_id,保持唯一性和统一性;另外下不同的订单需要更新out-relation-id,系统会根据这个参数验重,如果两次下单请求传的是同一个out-relation-id,第二次下单将会返回第一次生成的飞猪订单
16.第一步查询已经返回价格,我想跳过getitem的直接下单可以吗?
不行的,每个接口都是关联的,下一个接口需要用到上一个接口的返回,下单接口需要使用商品详情返回的session_id,不能跳过
17.如果订单没有支付,有取消这个概念吗?
未支付超时自动会关闭;可以通过用采购账号登录淘宝后台操作取消,或者调用取消接口。取消接口已经于2月6号上线
18.我们需要对支付接口返回的└ trade_no 担保交易号 做记录吗?
关于└ trade_no 担保交易号,这个是支付宝的交易号,可以用于你们后期对账使用,可以和根据你们的使用场景需求选择是否要记录
19.如何判断订单支付状态?
根据订单详情接口返回的└ pay_status, 支付成功就是支付成功的状态;转交易成功就是卖家已经回填票号,并且验真成功的状态
20.获取订单详情接口, pay_status 支付状态创建担保交易成功和转交易成功是代表啥意思啊?支付状态(INITIAL: 初始状态, CREATED:已创建担保交易, PAYED:已付款, TURNED:转交易成功)
担保的模式是指先生成交易单,但是这时候是买家待支付状态,你可以理解成支付前的一个状态。简单理解就是担保是没支付的,转交易是支付成功
21.订单详情接口,pnrtype 指的是什么类型?
Together(1, "成人+儿童"),AdtTogether(2, "成人"), ChdTogether(3, "儿童");
22.查询订单详情里边的book_order_vos 这个是个集合。 会有好几个预定订单信息是吗 那么里边的信息是不一样的是吗?
只会返回一条记录,不存在多条的情况
23.轮询商品详情接口的频率,有什么推荐值?
建议5分钟一次,同时接收消息
24.改签申请的dst_itinerary 这个集合第一个是去程段 第二个是回程段吗?└ segment_index 航段的序号 这个是怎么计算的? 第一个就是第一段吗 以此类推吗
多程和往返的就是多个dst_itinerary;└ segment_index有几段就按照顺序传,从1开始;例如:中转往返4程这种类型的,└ segment_index 传1 2 3 4
25.调用shopping出现,儿童税是-1
税费没算出来,会返回-1
26.你们的票号是那种形式的?
666-4786701000 这种格式;如果是廉航航班,票号与pnr一致
27.我们通过接口创建的订单,还可以在什么地方可以查看。会出现在我们航旅平台的订单里面吗?
就跟普通买家一样,在 飞猪 - 买家登录后 (或者登陆采购账号淘宝) 能看到了,可以在买家后台操作支付、退改
28.咱们这边的服务时间有吗 ?每种产品类型的服务时间我们接口里有没有这个参数,比如金牌是24小时
这个接口里没有,可以联系运营@展获 手工提供一份;本质上不需要关心我们的开票服务时间,如果不在服务时间的商家,我们在询价接口就不会吐出来
29.支付完成之后出票时限是多少
不同产品类型不一样: 金牌:1小时内;极速:10分钟内 自营:10分钟内;航司旗舰店:10分钟内;特卖:2天内
30.组合的那种怎么算? 自营+特卖 算那个时间
自营跟任何其他标组合,结果都是自营,以自营的服务标准和时间来算;极速,特卖,金牌,航司旗舰店 这四个标都是相互不能组合出现的;只有自营跟他们可以组合,其他的都不会出现组合数据的
31.还有废票支持吗
废票目前只有自营的某些航司支持,测试时需要与自营的同学确认。提交废票的时候,可以选择 “非自愿退票”,在备注中写上“废票”,选择退票接口最后一个非自愿
32.如果我们这边有婴儿接口怎么处理
抱歉,我们平台目前不支持婴儿,婴儿票不要来请求
33.search返回的儿童票价为-1属于正常情况吗?
一般儿童税费和儿童价都是 -1 说明不支持儿童票订购,是正常的。
34.舱位等级对应关系
F:FIRST, -头等 C:BUSINESS-商务 Y:ECONOMY-经济 M:ECONOMY_STANDARD -标准经济 W:ECONOMY_PREMIUM --超值经济舱
/**系统错误1001开始**/ SYSTEM_ERROR("1001", "系统错误"), PARAM_ILLEGAL("1002", "参数非法"), OUTSYSTEM_ERROR("1003", "外部系统错误"), OUTSYSTEM_TIMEOUT("1004", "外部系统超时"), BUSINESS_ERROR("1005", "业务异常"), SYSTEM_CLOSE("1006", "平台暂时关闭"), NO_AUTH("1007", "用户无权限操作"), /**询价接口从2001开始**/ SEARCH_SYSTEM_ERROR("2001", "询价系统错误"), EMPTY_RESULT("2002", "询价没有结果"), NO_SEAT("2003", "座位数不足"), /**商品详情从3001开始**/ PRICING_UNKNOWN_ERROR("3100","验价未知异常"), NO_SAME_FAREBASIS("3101","未找到相同的fare basis"), GET_PRICE_FAIL("3102","查询验价结果异常"), AV_UNKNOWN_ERROR("3200", "验座未知异常"), SEAT_INSUFFICIENT("3201", "座位数不足"), GET_SEATS_FAIL("3202", "查询验座结果异常"), ORDER_EXTRA_UNKNOWN_ERROR("3300", "获取扩展信息失败"), REFUND_RULE_UNKNOWN_ERROR("3301", "获取退改签未知异常"), BAGGAGE_RULE_UNKNOWN_ERROR("3302", "获取行李规则未知异常"), GET_REFUND_RULE_FAIL("3303", "获取退改签规则失败"), GET_BAGGAE_RULE_FAIL("3304", "获取行李额规则失败"), NOT_FIND_ITINERARY("3400", "获取商品详情异常"), /**生单接口从4001开始**/ BUYER_SELLER_NOT_SAME("4000","买家卖家不能相同"), ITINERARY_EXIPIRE("4001","航程信息失效"), BUYER_ACCOUNT_ERROR("4002","买家账号异常"), NEED_BUSINESS_TIME("4003","需在营业时间内提交"), HAS_SAME_ORDER("4004","已存在相同订单"), NOT_SUPPORT_CHILD("4005","不支持儿童"), AT_LEAST_NOT_ADULT("4006","至少一名成年人"), PNR_ERROR("4007","预订失败"), NO_PNR_ERROR("4008","预订无座位"), PNR_SEATS_CHANGED("4008","座位发生变动,请重新预订"), ORDER_CREATING("4009","亲,请稍等,已有相同订单正在生成"), /**可支付校验5001开始**/ ORDER_VALIDATE_BIZ_ERROR("5001","可支付校验错误"), /**可支付校验6001*/ ORDER_PAY_BIZ_ERROR("6001","可支付校验错误"), ORDER_PAY_RT_ERROR("6002","可支付校验失败,关闭订单"), ORDER_PAY_ORDER_CLOSE("6003","订单已经关闭,导致支付失败"), ORDER_PAY_SUCESS("6004","亲,已经付款成功"), ORDER_BLANCE_NOT_ENOUTGH("6005","账号余额不足"), /**订单详情从7001开始**/ ORDER_DETAIL_BIZ_ERROR("7001","订单详情查询错误"), ORDER_DETAIL_NOT_FOUND("7002","订单未找到"), ORDER_DETAIL_NO_POWER("7003","用户无权限查询订单"), /**订单退票从8001开始**/ REFUND_TICKET_CREATING("8001","亲,请稍等,相同的退票申请单正在生成"), REFUND_TICKET_NOT_EXIST("8002","申请退票不存在"), ONLINE_REFUND_NOT_ALLOW("8003","不允许线上退票"), REFUND_TICKET_NOT_ALLOW("8004","不支持进行退票操作"), AIRLINE_NOT_ALLOW_REFUND("8005","航司不允许进行退票操作"), REFUND_TICKET_ERROR("8006","订单中票信息有误"), REFUND_TICKET_REPEAT("8007","重复提交退票"), REFUND_TICKET_NOT_FIT_ORDER("8008","订单与退票不符"), /**创建改签申请单*/ EXCHANGE_NOT_ONLINE_ERROR("-2001","不支持在线改签"), EXCHANGE_NOT_VALIDATE_ERROR("-2002","改签校验不通过"), EXCHANGE_NOT_CREATE_ERROR("-2003","创建改签申请失败"), EXCHANGE_PASSENGER_NOT_EXSTS("-2003","改签乘机人不存在"), /**改签申请详情*/ EXCHANGE_QUERY_ERROR("-3001","查询改签申请详情失败"), EXCHANGE_QUERY_NO_POWER_ERROR("-3002","用户无权限查询改申请单"), /**改签申请支付*/ EXCHANGE_PAY_CREATE_ERROR("-4001","改签创建担保交易失败"), EXCHANGE_PAY_CONFIRM_ERROR("-4002","改签确认支付失败"), EXCHANGE_PAY_ALREADY_ERROR("-4003","改签已经支付成功"), EXCHANGE_NOT_ENOUGH_ERROR("-4004","改签支付账号金额不足"), EXCHANGE_ORDER_STATUS_ERROR("-4005","改签申请单状态不匹配"), EXCHANGE_ORDER_PAY_ERROR("-4006","改签支付异常,关闭申请单");