Stripe:收到未知参数:receipt_email。

3
我正在使用 Stripe 创建一个新的 Session,并尝试传入 receipt_email 属性,以便能够向买家发送明确的收据。以下代码在没有 receipt_email 属性的情况下可以正常工作,但添加它会出现错误:Received unknown parameter: receipt_email
$session_data = [
    'payment_method_types' => ['card'],
    'mode'=>'payment',
    'billing_address_collection'=> 'auto',
    'line_items'=> [['price' => STRIPE_PRICE, 'quantity'=> 1]],
    'success_url' => URL.'success',
    'cancel_url' => URL.'error',
    'receipt_email' => $email
];

$session = \Stripe\Checkout\Session::create($session_data);

我看到receipt_email实际上是payment_intent的一个属性。我应该在什么时候设置receipt_email

根据@hmunoz(被选择的答案)的建议,这是修订后的$session_data对象:

$session_data = [
    'payment_method_types' => ['card'],
    'mode'=>'payment',
    'billing_address_collection'=> 'auto',
    'line_items'=> [['price' => STRIPE_PRICE, 'quantity'=> 1]],
    'success_url' => URL.'success',
    'cancel_url' => URL.'error',
    'payment_intent_data' => ['receipt_email' => $email] //changed this line
];
1个回答

3

我的$session_data里能做到吗?如果可以,怎么做呢?还是说我需要等到结帐会话创建后再获取payment_intent并设置它?抱歉,我只是想了解工作流程... - Shawn Cooke
看一下我发给你的链接(开个玩笑哈哈),以及相关的代码片段,它向你展示了payment_intent_data是CheckoutSession创建端点上的子哈希。所以,是的,你需要将其传递到session_data下面。 - hmunoz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接