我有一个Web应用程序,配置为使用PayFlow Pro和托管的结帐页面以及SecureToken。它目前处于测试模式,我已经配置了帐户(通过PayPal Manager)以使用FULL AVS,但是当我使用无效的测试ZIP(> 50000)付款时,我看到AVSZIP标志设置为'来自PayFlow的响应中的N',但该事务被批准,结果为0,RESPMSG为“已批准”。当我检查PayPal Manager上的交易分类帐时,它还显示已批准的成功交易(具有讽刺意味的是,它还显示了'N'的AVS拉链匹配)
我对online help documentation的理解是,当AVS设置为Full时,PayPal将使交易无效且买方拒绝(这是我正在寻找的行为),但这不是我的意思看到。我在Payflow Gateway开发人员指南(最后更新于2013年2月7日)中注意到围绕AVS的以下声明:
地址验证服务将提交的结算街道地址和邮政编码与之比较 持卡人银行存档的价值。响应包括AVSADDR和的值 AVSZIP:Y,N或X表示客户街道地址和邮政编码的匹配状态。 Y =匹配,N =不匹配,X =持卡人的银行不支持地址验证服务。 地址验证服务结果仅供建议。 银行不会拒绝交易 基于地址验证服务结果。商家决定批准或拒绝 交易。大多数美国银行和一些国际银行都支持地址验证 服务。
然而,这似乎与在线帮助文档相矛盾。
以下是来回发布的请求和响应数据。我遗漏了中间POST并重定向到payflowlink.paypal.com,因为所有内容都是SecureTokenID和SecureToken。
有人可以说明我可能做错了吗?我对pilot-payflowpro.paypal.com的初始请求中是否有丢失或不正确的值?除了这个问题,一切都很好,完全符合我的预期。
至https://pilot-payflowpro.paypal.com:
Mode=TEST&CreateSecureToken=Y&SecureTokenID=1508D489FD8F4A0BB47CA541D7191427&User=########&Vendor=#######&Partner=PayPal&Pwd=#######&TrxType=S&Tender=C&FirstName=Test&LastName=User&Address=101 N. Wacker Dr.&City=Chicago&State=IL&Zip=60606&Country=US&Phone=312-000-0000&Email=test.user@testdomain.com&Amt=160.00&Currency=USD&User1=276&User2=C161168&Comment1=Tampa Spring Regional Training Event&Comment2=Current User PersonID: 690399, Effective Current User PersonID: 690399&CancelURL=http://localhost:5527/PaymentQueue/Registration/ProcessPayPalCancel&CSCRequired=True&CSCEdit=True&DisableReceipt=True&Template=TEMPLATEA&ErrorURL=http://localhost:5527/PaymentQueue/Registration/PaymentError&ReturnURL=http://localhost:5527/PaymentQueue/Registration/ProcessPayPalResponse&URLMethod=POST
来自https://payflowlink.paypal.com:
AVSZIP=N&STATE=IL&TYPE=S&BILLTOEMAIL=test.user@testdomain.com&USER2=C161168&ACCT=4444&PROCCVV2=M&BILLTOLASTNAME=User&BILLTONAME=Test+User&CVV2MATCH=Y&LASTNAME=User&PNREF=V78A4A45A75A&TENDER=CC&EMAIL=test.user@testdomain.com&PHONE=312-000-0000&METHOD=CC&BILLTOFIRSTNAME=Test&AMT=160.00&SHIPTOCOUNTRY=US&TRANSTIME=2013-04-05+07%3A47%3A38&ZIP=60606&AUTHCODE=031PNI&BILLTOCOUNTRY=US&EXPDATE=1213&IAVS=N&RESPMSG=Approved&COUNTRY=US&BILLTOZIP=60606&BILLTOCITY=Chicago&TAX=0.00&BILLTOSTATE=IL&CARDTYPE=1&FIRSTNAME=Test&AVSDATA=YNY&PROCAVS=A&SECURETOKEN=#########&SECURETOKENID=1508D489FD8F4A0BB47CA541D7191427&AVSADDR=Y&CITY=Chicago&BILLTOPHONE=312-000-0000&NAME=Test+User&USER1=276&HOSTCODE=A&COUNTRYTOSHIP=US&BILLTOSTREET=101+N.+Wacker+Dr.&RESULT=0&ADDRESS=101+N.+Wacker+Dr.