PayFlow PayPal 定期付款 EXPDATE 验证

Posted

技术标签:

【中文标题】PayFlow PayPal 定期付款 EXPDATE 验证【英文标题】:PayFlow PayPal recurring Payment EXPDATE Validation 【发布时间】:2016-02-23 22:02:37 【问题描述】:

您好,我一直在尝试验证用户信用卡的 CC 编号、CVV 编号和 EXPDATE,以便在 PayFlow 中进行定期计费。主要目标是让用户只有在信用卡有效的情况下才能访问订阅产品。

有人建议我在创建个人资料之前检查卡,您可以使用信用卡card verification ($0 authorization)

所以我做到了,我得到了[RESPMSG] => Verified

这是我的请求和响应消息:

Request


Array
(
    [TRXTYPE] => A
    [TENDER] => C
    [PARTNER] => PayPal
    [USER] => XXXXX
    [PWD] => XXXXX
    [AMT] => 0
    [ACCT] => 5105105105105100
    [EXPDATE] => 1218
    [INVNUM] => PONUM1
    [VERBOSITY] => HIGH
    [BILLTOZIP] => 95031
)

Response


Array
(
    [RESULT] => 0
    [PNREF] => A11A8C1A41C0
    [RESPMSG] => Verified
    [AUTHCODE] => 992PNI
    [AVSADDR] => X
    [AVSZIP] => X
    [HOSTCODE] => A
    [PROCAVS] => U
    [TRANSTIME] => 2015-11-22 23:30:52
    [AMT] => 0.00
    [ACCT] => 5100
    [EXPDATE] => 1218
    [CARDTYPE] => 1
    [IAVS] => X
    [PREFPSMSG] => No Rules Triggered
    [POSTFPSMSG] => No Rules Triggered
)

现在我的问题是我没有提供 CVV2 以及 EXPDATE 得到验证的任何未来日期。你能解释一下这里的情况吗?还有如何验证 CC、CVV 和 EXPDATE ?

【问题讨论】:

【参考方案1】:

这只是创建个人资料,无需任何初始付款。因此,它根本不会验证卡。当然,在个人资料上尝试的第一次付款会失败。

如果您想在创建配置文件之前检查卡,您可以运行信用卡card verification ($0 authorization)。

所以首先运行卡验证,然后只有在验证成功后,您才会跟进创建配置文件的调用。

请注意,如果您在沙盒中工作,则只要未过期,任何信用卡过期和安全代码都将被接受。这是在沙盒中完成的,以便快速轻松地进行测试。

如果您想在 API 响应中强制出错以便测试这些情况,请查看PayFlow documentation on testing。

【讨论】:

您好 Andrew,我已经尝试了 $0 授权流程。但它给了我 [RESPMSG] => 正在接受欺诈服务审查 更新了问题中的请求和响应,请查看。 好的,所以我在我的贝宝经理帐户中编辑了过滤器,我得到了 [RESPMSG] => 验证。但我不明白为什么我会收到验证消息?我的意思是我没有提供 CVV2 以及 EXPDATE 得到验证的任何未来日期。你能解释一下这里的工作原理吗? 您是在沙箱中还是在实时 PayPal 服务器上运行这些交易? 沙盒服务器通常接受您为信用卡输入的任何值(只要未过期)。如果您要在实时服务器上尝试验证,您会发现它会返回预期结果。【参考方案2】:

是的,在测试模式下,EXPDATE 的任何未来日期都可以,正如 Andrew 提到的那样。如果您正在寻找在测试模式下以“N”形式返回的 CVV 值,那么您可以根据以下文档调整 CVV 值。

https://developer.paypal.com/webapps/developer/docs/classic/payflow/integration-guide/#testing-card-security-code

NVP Request:
VENDOR=XXX&PARTNER=Paypal&USER=XXXX&PWD=XXXX&TRXTYPE[1]=A&TENDER[1]=C&VERBOSITY=HIGH&ACCT[16]=5105105105105100&EXPDATE[4]=1020&AMT=0.00&**CVV2[3]=400**&COMMENT1[23]=Global Test Transaction&FIRSTNAME[4]=John&LASTNAME[5]=Smith&STREET=49354 Main&CITY[7]=SanJose&STATE[2]=CA&ZIP[5]=94303&COUNTRY[2]=US

NVP Response:
RESULT=0
PNREF=A71C8A7EA028
RESPMSG=Verified
AUTHCODE=010101
AVSADDR=N
AVSZIP=N
CVV2MATCH=N
HOSTCODE=A
RESPTEXT=100
PROCAVS=I8
PROCCVV2=N
TRANSTIME=2015-11-23 20:05:55
FIRSTNAME=John
LASTNAME=Smith
AMT=0.00
ACCT=5100
EXPDATE=1020
CARDTYPE=1
IAVS=N
PREFPSMSG=No Rules Triggered
POSTFPSMSG=No Rules Triggered

【讨论】:

以上是关于PayFlow PayPal 定期付款 EXPDATE 验证的主要内容,如果未能解决你的问题,请参考以下文章

在 Payflow 定期付款中被批准为 [RESPMSG],但 PayPal 帐户中没有交易历史记录

Paypal 高级付款和 PayFlow 链接与重复付款

Paypal payflow 在一笔交易中有两个定期订阅

paypal定期支付解决方案

IPN 在 payflow pro 中可用吗?

Magento 2.3.2 PayPal Payflow 付款失败