在通过Stripe处理信用卡交易时,为什么为什么我一直没有输入付款方式

时间:2019-12-28 03:03:33

标签: php stripe-payments payment-processing

我遇到了一些技术难题,我的编程知识有限,因此可能很容易解决。我正在尝试将Stripe信用卡交易集成到我们的网站https://cdunion.ca/stripe/中。一切正常,它将连接到Stripe,没有错误消息,但是当我登录我的Stripe仪表板时,每个事务都列为200 ok,但也列为不完整。确切的错误是“客户尚未输入他们的付款方式”。我一直在谷歌搜索并花了2星期的时间进行脑力测试,但没有成功。我已检查并在我的Stripe仪表板中启用了卡支付方式。我的代码在下面列出。我在家庭测试服务器和实时服务器上都在Composer中使用Stripe库。谢谢,谢谢,谢谢。

PS列出的信用卡专用于所有信用卡处理商使用的测试目的,因此请不要担心,不会发布任何机密信息。

<?php
/* 
$donation_amount = ($_POST["donation-amount"]) . '00';
$address = (($_POST["unit"]) . '-' . ($_POST["address"]));
$city = ($_POST["city"]);
$province = ($_POST["province"]);
$country = ($_POST["country"]);

echo ($donation_amount . "<br>" . $address . "<br>" . $city . "<br>" . $province . "<br>" . $country);

*/

require_once 'C:/xampp/composer/vendor/autoload.php';

\Stripe\Stripe::setApiKey('*censored*');

\Stripe\PaymentMethod::create([
  'type' => 'card',
  'card' => [
    'number' => '4242424242424242',
    'exp_month' => 12,
    'exp_year' => 2020,
    'cvc' => '314',
  ],
]);

\Stripe\PaymentIntent::create([
    'payment_method_types' => ['card'],
    'amount' => $donation_amount,
    'currency' => 'cad',
]);

die();

?>

1 个答案:

答案 0 :(得分:0)

创建付款意图时,您需要传递付款方式的ID。

$method = \Stripe\PaymentMethod::create([
  'type' => 'card',
  'card' => [
    'number' => '4242424242424242',
    'exp_month' => 12,
    'exp_year' => 2020,
    'cvc' => '314',
  ],
]);

\Stripe\PaymentIntent::create([
    'payment_method_types' => ['card'],
    'payment_method' => $method->id,
    'amount' => $donation_amount,
    'currency' => 'cad',
]);