ARB更新的XML是:
<subscriptionId>2313340</subscriptionId>
<subscription>
<name>Testing Name Yearly Level 3 Subscription</name>
<paymentSchedule>
<interval>
<length>12</length>
<unit>months</unit>
</interval>
<startDate>2015-01-02</startDate>
<totalOccurrences>9999</totalOccurrences>
</paymentSchedule>
<amount>85.2500</amount>
<payment>
<creditCard>
<cardNumber>5424000000000015</cardNumber>
<expirationDate>2015-02</expirationDate>
<cardCode>123</cardCode>
</creditCard>
</payment>
<billTo>
<firstName>Tester First Name</firstName>
<lastName>Tester Last Name</lastName>
<company>Testing name</company>
<address>Testing address</address>
<city>Testing City</city>
<state>Testing State</state>
<zip>12345</zip>
</billTo>
</subscription>
我的沙箱帐户上确实存在ID,问题是,当我查看我的帐户时,它没有更新任何内容,但响应还可以。
ARB更新的代码是:$request->updateSubscription($subscribeModel->subscription_id, $subscription)
可以正常工作,因为它在我记录时会生成上面的XML结果。
我使用的是从这里找到的php-sdk:https://github.com/AuthorizeNet/sdk-php
任何人都可以解释为什么我无法更新订阅?
更新
ARB回应:
object(AuthorizeNetARB_Response)#326 (3) {
["xml"]=>
object(SimpleXMLElement)#324 (1) {
["messages"]=>
object(SimpleXMLElement)#316 (2) {
["resultCode"]=>
string(5) "Error"
["message"]=>
object(SimpleXMLElement)#328 (2) {
["code"]=>
string(6) "E00034"
["text"]=>
string(43) "The interval information cannot be changed."
}
}
}
["response"]=>
string(396) "<?xml version="1.0" encoding="utf-8"?><ARBUpdateSubscriptionResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"><messages><resultCode>Error</resultCode><message><code>E00034</code><text>The interval information cannot be changed.</text></message></messages></ARBUpdateSubscriptionResponse>"
["xpath_xml"]=>
object(SimpleXMLElement)#325 (1) {
["messages"]=>
object(SimpleXMLElement)#316 (2) {
["resultCode"]=>
string(5) "Error"
["message"]=>
object(SimpleXMLElement)#328 (2) {
["code"]=>
string(6) "E00034"
["text"]=>
string(43) "The interval information cannot be changed."
}
}
}
}
似乎间隔无法改变?这很奇怪:(