【发布时间】:2023-03-25 11:48:01
【问题描述】:
我是 Authorize.Net 的新手,我正在实施 Authorize.Net PHP SDK 来实现它。我正在尝试向信用卡收费,但它给出的错误是:
“已提交重复交易”
解决方案提到在脚本中添加 x_duplicate_window =(您自己选择,最长 28800 秒)。 所以我添加如下:
<createTransactionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name>
<![CDATA[API_LOGIN_ID]]>
</name>
<transactionKey>
<![CDATA[API_TRANSACTION_KEY]]>
</transactionKey>
</merchantAuthentication>
<refId>
<![CDATA[ref1465541052]]>
</refId>
<transactionRequest>
<transactionType>
<![CDATA[authCaptureTransaction]]>
</transactionType>
<amount>1</amount>
<payment>
<creditCard>
<cardNumber>
<![CDATA[4111111111111111]]>
</cardNumber>
<expirationDate>
<![CDATA[1233]]>
</expirationDate>
</creditCard>
</payment>
<order>
<description>
<![CDATA[DESCRIPTION]]>
</description>
</order>
</transactionRequest>
<extraOptions><![CDATA[x_duplicate_window=0]]></extraOptions>
</createTransactionRequest>
但它会抛出错误
E00003:命名空间“AnetApi/xml/v1/schema/AnetApiSchema.xsd”中的元素“createTransactionRequest”在命名空间“AnetApi/xml/v1/schema/AnetApiSchema.xsd”中具有无效的子元素“extraOptions”。
我无法在我的脚本中添加 x_duplicate_window。 这是防止重复交易错误的正确方法吗
注意:我在沙盒环境和实时模式下工作
请帮忙。
【问题讨论】:
标签: xml authorize.net