gpt4 book ai didi

javascript - Stripe 支付流程

转载 作者:可可西里 更新时间:2023-10-31 22:40:01 27 4
gpt4 key购买 nike

我对如何使用 Stripe 处理订阅 + 费用支付有点困惑,

这是我得到的:

HTML:

<form id="req" action="/thank-you" method="post">

<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="pk_test_RrE21sY9Xbtwq9ZvbKPpp0LJ"
data-name="Wizard.Build Hosting Package"
data-description=""
data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
data-locale="auto"
data-currency="usd">
</script>
...

感谢页面:

require_once('lib-stripe/init.php');

// create api key
\Stripe\Stripe::setApiKey("sk_TESTING");

// create customer
$customerO =\Stripe\Customer::create(array(
"email" => $_POST["e"]
));
$customer = $customerO->jsonSerialize();

//var_dump($customer);

//create subscription (Package Bronze, Silver or Gold)
$subscriptionO = \Stripe\Subscription::create(array(
"customer" => $customer["id"],
"items" => array(
array(
"plan" => $_POST["pack"],
),
)
));
$subscription = $subscriptionO->jsonSerialize();

//var_dump($subscription);

//create invoice (3rdparty cost)
$invoiceO = \Stripe\Invoice::create(array(
"customer" => $customer["id"],
"amount" =>$p3price,
"currency" => "usd",
"description" => "3rdp Cost",
"subscription" => $subscription["id"]
));
$invoice = $invoiceO->jsonSerialize();

//var_dump($invoice);

我显然不知道整个过程是如何工作的......

我将填充电子邮件字段,但我如何在该弹出表单中请求每月重新发生的设置费和订阅?

理想的工作流程如下:

我的网站页面的形式:用户填写姓名、邮箱、商品名称[需要此元数据]、商品价格、包裹名称[需要此元数据]、包裹价格

点击提交按钮,Stripe 弹出表单出现预填充电子邮件,用户同意打包月付款 + 商品价格,用户输入卡信息,用户提交 Stripe 表单,

用户现在需要支付第 1 个月的包裹费用 + 商品价格,包裹每月自动付款。

返回一个包含所有元数据、价格、包裹等的 url,带有密码或某种安全表单字段,然后我根据返回的 url 数据自动处理订单,

请帮忙,感谢社区!

最佳答案

我想我可以指导您完成整个过程,您必须遵循非常简单的步骤并检查是否一切顺利。

  1. 使用 Stripe 仪表板或 Stripe API(下面的 PHP 代码示例)创建计划

    \Stripe\Stripe::setApiKey("<YOUR SECRET KEY>");

    $plan = \Stripe\Plan::create([
    'product' => {'name' => 'Plan name'},
    'nickname' => 'Plan code',
    'interval' => 'month',
    'currency' => 'usd',
    'amount' => 10,
    ]);
  2. 使用 JS/PHP 等在 Stripe 中创建客户并保存 id 以供引用。(下​​面的 PHP 代码示例)

    \Stripe\Stripe::setApiKey("<YOUR SECRET KEY>");

    $customer = \Stripe\Customer::create([
    'email' => 'customer@example.com',
    ]);

    此调用的响应将为在 stripe 上创建的客户提供一个 json

    {
    "id": "<UNIQUE ID>",
    ...
    }

    您需要将 id 保存在变量或数据库中

  3. 为客户订阅计划。(下面的 PHP 示例代码)

    \Stripe\Stripe::setApiKey("<YOUR SECRET KEY>");

    $subscription = \Stripe\Subscription::create([
    'customer' => '<UNIQUE ID>',
    'items' => [['plan' => '<PLAN ID>']],
    ]);

您可以在 Official Stripe documentation 上找到更多详细信息

关于javascript - Stripe 支付流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48594903/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com