我正在使用带有Wordpress安装的s2Member Pro plugin来接受订阅付款。
在所有测试中,Stripe插件每次都工作,当我将其切换到实时模式时,我的卡工作正常,所以我认为一切都很好,但是现在我看到大多数卡在提交时返回了card_declined错误付款表格。
用户使用第一个,最后一个,电子邮件,密码,用户名填写表单,然后当用户点击“添加付款”弹出条纹结帐重叠时,我输入卡片详细信息条带插件接受绿色勾选但是当我点击提交时,我看到了错误。
该网站是https://naturalbusinesstools.com/pricing,它具有所有正确的SSL设置,并且所有Stripe帐户详细信息,网络挂钩和验证都是正确的[因为我提到它只有某些卡片,特别是来自Commonwealth Bank的卡片]。我还要提一下,无论付款成功/失败,都会在Stripe帐户中创建客户。
是否有一些安全层可以阻止它们通过?
***更新 好的,这是一个发展。我尝试了4张独立的个人信用卡[朋友和家人],他们都完美无缺。然后我尝试了几张商业信用卡/借记卡,但都失败了......
所以看起来s2或者条纹是失败的名片交易......这是一个常见的问题吗?
***更新
好的,这个问题有了很大的发展。我终于进入了s2成员pro插件创建者,他有这样说:
“所以我在你的网站上重现了这种行为,并将其追溯到在s2Member内发生的卡片更新。最终提交后,s2Member在卡片后面添加了客户的姓名,address_zip,address_state和address_country(又名:source)已添加到您的Stripe客户。
您看到的card_declined错误来自Stripe API,并且每当s2Member尝试使用这些基本详细信息更新卡时,它都会返回card_declined错误。我怀疑这是Stripe API中的一个错误,但我想先在这里发布信息,以防万一这可能会让你知道为什么这个特定的更新可能会失败。
知道Stripe API调用导致Stripe发生card_declined错误,然后我在您的网站上设置了一个测试页面,我在那里跑回更新调用并尝试一次更新一条信息。我能够毫无问题地更新名称,address_state和address_zip。但是,在我尝试将address_country更新为AU值时,在这张特定的卡上,Stripe API说,card_declined由于某种原因。“
在PHP SDK中引用Stripe的意外API响应失败:
[file] => .../wp-content/plugins/s2member-pro/includes/classes/gateways/stripe/stripe-sdk/lib/Stripe/ApiRequestor.php
[line] => 109
[function] => _interpretResponse
[class] => Stripe_ApiRequestor
[type] => ->
[args] => Array
(
[0] => {
"error": {
"message": "Your card was declined.",
"type": "card_error",
"param": "",
"code": "card_declined"
}
所以事实证明这是Stripe API中的一个错误。不确定是否有人有解决方法?
答案 0 :(得分:3)
短期解决方法
在s2Member Pro副本中找到这行代码:https://github.com/websharks/s2member-pro/blob/000000-dev/s2member-pro/includes/classes/gateways/stripe/stripe-utilities.inc.php#L166 文件:s2member-pro / includes / classes / gateways / stripe / stripe-utilities.inc.php
变化:
$source->save();
要:
// $source->save();
这将阻止额外的更新发生。它只是出于税务报告的目的,这应该在短期内解决问题,直到我们能够深入研究这个问题。