我正在提交以下表单,PayPal始终会显示错误消息:
无效的常规期间。您必须为订阅指定A3,P3和T3参数的有效值。
问题:我的html表单有什么问题,其中A3,P3和T3有有效值?
订阅付款的PayPal Html表单
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="business" value="someValidValue">
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<input type="hidden" name="return" value="http://www.xyz/pc.aspx" />
<input type="hidden" name="custom" value="23V125,new,architect" />
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="A3" value="200" />
<input type="hidden" name="T3" value="M" />
<input type="hidden" name="P3" value="1" />
<input type="hidden" name="item_name" value="Gold" />
<input type="hidden" name="max_text" value="Commit up to 50 loads per month and unlimited viewing/searching" />
<input type="hidden" name="src" value="1"> <!-- recurring=yes -->
<input type="hidden" name="sra" value="1"> <!-- reattempt=yes -->
<div style="display:inline-block;margin-top:50px;">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</div>
</form>
答案 0 :(得分:0)
我需要以小写字母指定A3
,T3
和P3
。这解决了我的问题。
另外,请务必确保a3
的值不超过2位小数;如果a3
有一个没有小数位的值就可以了。因此,值200或200.34或200.1将起作用,但200.0000或200.345将无效。
我在https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNandPDTVariables/
的PayPal文档中遇到了有关此问题的有用事实IPN和PDT变量名称区分大小写。所有常量值均为小写,但payment_status的值除外,其常量值具有首字母大写字母。
答案 1 :(得分:0)
尝试将输入框的名称更改为小写:a3,p3,t3。
<input type="hidden" name="t3" value="M" />