接收“未通过PROP接受的INVLD信用卡类型”错误,但当我致电HotelRateDescriptionLLSRQ时,Master Card显示为有效选项。虽然保证已接受为主卡(包括CA)指定多个字符代码,但我在CA中作为卡传递。我该如何解决这个问题?
<Guarantee>
<GuaranteesAccepted>
<PaymentCard Code="AX" Type="AMERICAN EXPRESS" />
<PaymentCard Code="CA" Type="MASTERCARD" />
<PaymentCard Code="DC" Type="DINERS CLUB CARD" />
<PaymentCard Code="DS" Type="DISCOVER CARD" />
<PaymentCard Code="IK" Type="MASTER CARD" />
<PaymentCard Code="JC" Type="JCB CREDIT CARD" />
<PaymentCard Code="MC" Type="MASTER CARD" />
<PaymentCard Code="NA" Type="NONE ACCEPTED" />
<PaymentCard Code="VI" Type="VISA" />
<PaymentCard Code="VS" Type="VISA" />
<Text>/GAGT GUARANTEE TO AGENCY TIDS/IATA NUMBER</Text>
</GuaranteesAccepted>
</Guarantee>
使用以下内容调用OTA_HotelResRQ:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader">
<From>
<PartyId type="urn:x12.org:IO5:01">REMOVED</PartyId>
</From>
<To>
<PartyId type="urn:x12.org:IO5:01">Sabre webservices.havail.sabre.com</PartyId>
</To>
<CPAId>REMOVED</CPAId>
<ConversationId>1519099174</ConversationId>
<Service type="sabreXML">OTA_HotelResLLSRQ</Service>
<Action>OTA_HotelResLLSRQ</Action>
<MessageData>
<MessageId>1519099174</MessageId>
<Timestamp>2018-02-19T20:59:34</Timestamp>
<TimeToLive>2018-02-19T21:59:34</TimeToLive>
</MessageData>
</MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/12/utility">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESH!ICESMSLB\/RES.LB!-3176496554278439282!433327!0</wsse:BinarySecurityToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<OTA_HotelResRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" ReturnHostCommand="true" TimeStamp="2015-05-12T02:00:26-06:00" Version="2.1.0">
<Hotel>
<BasicPropertyInfo InsertAfter="0" RPH="008" />
<Guarantee Type="GC">
<CC_Info>
<PaymentCard Code="CA" ExpireDate="2018-09" Number="****REMOVED" />
<PersonName>
<Surname>REMOVED</Surname>
</PersonName>
</CC_Info>
</Guarantee>
<RoomType NumberOfUnits="1" />
</Hotel>
</OTA_HotelResRQ>
</soapenv:Body>
</soapenv:Envelope>
完整的错误回复:
<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="URI">Sabre webservices.havail.sabre.com</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">REMOVED</eb:PartyId>
</eb:To>
<eb:CPAId>REMOVED</eb:CPAId>
<eb:ConversationId>1519099174</eb:ConversationId>
<eb:Service>OTA_HotelResLLSRQ</eb:Service>
<eb:Action>OTA_HotelResLLSRS</eb:Action>
<eb:MessageData>
<eb:MessageId>1364889143752860193</eb:MessageId>
<eb:Timestamp>2018-02-20T03:59:35</eb:Timestamp>
<eb:RefToMessageId>1519099174</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<BinarySecurityToken valueType="String" EncodingType="Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESH!ICESMSLB\/RES.LB!-3176496554278439282!433327!0</BinarySecurityToken>
</Security>
</Header>
<Body>
<OTA_HotelResRS xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:stl="http://services.sabre.com/STL/v01" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="2.1.0">
<ApplicationResults status="NotProcessed">
<Error type="BusinessLogic" timeStamp="2018-02-19T21:59:35-06:00">
<SystemSpecificResults>
<HostCommand LNIATA="222222">/0/0H1½Ú008/GCCA****REMOVEDEXP 09 18-REMOVED</HostCommand>
<Message code="0">½øINVLD½ø CREDIT CARD TYPE NOT ACCEPTED BY PROP</Message>
<ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</ShortText>
</SystemSpecificResults>
</Error>
</ApplicationResults>
</OTA_HotelResRS>
</Body>
</Envelope>
修改使用G而不是GC作为G.的保证类型.G =保证卡,而GC =保证公司。很容易理解为什么我认为GC意味着后者。我们为什么需要这些?因为Sabre是在50年代建造的,它讨厌你。如果Sabre正确报告错误也会很好,因为这是保证类型的问题,而不是信用卡的类型。我对佩剑的仇恨是无限的。
答案 0 :(得分:1)
我认为您必须联系Sabre的Web服务支持团队。该物业可能会发送不正确的信息,他们应该能够到达酒店或其GDS。