Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Stripe s2Member Pro插件返回卡在实时模式下被拒绝_Php_Wordpress_Ssl_Stripe Payments - Fatal编程技术网

Php Stripe s2Member Pro插件返回卡在实时模式下被拒绝

Php Stripe s2Member Pro插件返回卡在实时模式下被拒绝,php,wordpress,ssl,stripe-payments,Php,Wordpress,Ssl,Stripe Payments,我正在使用Wordpress安装来接受订阅付款 在所有测试过程中,Stripe插件每次都能正常工作,当我将其切换到live模式时,我的卡也能正常工作,因此我认为一切都很好,但现在我发现大多数卡在提交表单付款时都会返回一个card_declined错误 用户在表单中填写第一个、最后一个、电子邮件、密码、用户名,然后当用户单击“添加付款”时,条带签出覆盖弹出,我输入卡片详细信息,条带插件用绿色勾号接受它们,但当我点击提交时,我看到错误 该网站是,它有所有正确的SSL设置,所有的条带帐户详细信息、网络

我正在使用Wordpress安装来接受订阅付款

在所有测试过程中,Stripe插件每次都能正常工作,当我将其切换到live模式时,我的卡也能正常工作,因此我认为一切都很好,但现在我发现大多数卡在提交表单付款时都会返回一个card_declined错误

用户在表单中填写第一个、最后一个、电子邮件、密码、用户名,然后当用户单击“添加付款”时,条带签出覆盖弹出,我输入卡片详细信息,条带插件用绿色勾号接受它们,但当我点击提交时,我看到错误

该网站是,它有所有正确的SSL设置,所有的条带帐户详细信息、网络挂钩和验证都是正确的[正如我提到的,它只有一些特定的卡,特别是来自联邦银行的卡]。我还应该提到,无论支付成功与否,客户都是在Stripe帐户中创建的

有没有什么安全措施可以阻止他们通过

***更新 好吧,这是一个发展。我试过4张独立的个人信用卡(朋友和家人),它们都工作得很好。然后我尝试了几张商业信用卡/借记卡,但都失败了

看来s2或stripe的名片交易失败了。。。这是一个普遍的问题吗

***更新

好的,这个问题有了很大的发展。我终于找到了s2成员专业插件创建者,他说:

“因此,我在您的网站上复制了这种行为,并将其追溯到s2Member内发生的卡片更新。最终提交时,s2Member会在将卡片(又名:来源)添加到您的客户后立即添加客户的姓名、地址、邮政编码、地址和国家/地区

您看到的card_declined错误来自Stripe API,每当s2Member尝试用这些基本细节更新卡片时,它都会返回一个card_declined错误。我怀疑这是Stripe API中的一个错误,但我想先在这里发布信息,以防这些信息可能会让您了解为什么会出现这种情况r更新可能会失败

知道哪个条带API调用导致了条带中的card_拒绝错误后,我在您的站点上设置了一个测试页面,在该页面上我运行了更新调用,并尝试一次更新一条信息。我能够毫无问题地更新名称、地址_状态和地址_zip。但是,在这张特定的卡上每当我尝试将address_country更新为AU值时,Stripe API就会说,card_出于某种原因拒绝了。”

从PHP SDK中的条带引用意外的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"
}
因此,事实证明这是条带API中的一个bug。不确定是否有人有解决办法?

短期解决办法

在您的s2Member Pro副本中找到这行代码: 文件:s2member pro/includes/classes/gateways/stripe/stripe-utilities.inc.php

更改:

$source->save();
致:


这将阻止进行额外的更新。不管怎么说,它只是为了报税的目的而存在,这应该能在短期内解决这个问题,直到我们能够找到问题的根源。

您在这里处理的基本上是一个业务问题,而不是一个技术问题。你需要和Stripe谈谈这件事。
// $source->save();