簡體   English   中英

如何使用PHP從Stripe獲取費用?

[英]How to get the charge ID from Stripe using PHP?

首先,我知道這個問題已被提出,但他們沒有解釋如何使用這些信息

 charge.succeeded

我正在使用Stripe創建一個auth和捕獲費用。 我需要收費ID來確認/收取費用。

以下代碼會產生費用,但在獲得批准之前不會收費。

\Stripe\Charge::create(array(
    "amount" => $price,
    "currency" => "usd",
    "customer" => $custID, // obtained with Stripe.js
    "description" => "Charge for test@example.com",         
    "capture" => false
));

我以為我可以通過以下方式獲得費用ID:

$chargeID = $charge->id;

因為這是我在創建客戶時獲取客戶ID的方式。 但是當我回顯變量時,我什么也得不到,因為我想將它保存在數據庫中,所以沒有用。 我到處都看,但找不到任何具體的或近期的東西。

然后完成充電。 我必須這樣捕捉它:

$ch = \Stripe\Charge::retrieve("$chargeID");
$ch->capture();

這些都來自Stripe API Reference,但它沒有解釋如何獲取費用ID。 它甚至沒有告訴你如何獲得客戶ID,幸運的是,Stack Overflow就是通過這個ID獲得的。

這都是使用PHP完成的。

根據Stripe的文檔 ,在創建新的收費時,你會獲得Stripe\\Charge JSON對象(如果出現問題則會出現異常)。

您可以var_dump剛創建的對象以查看對象的外觀,但根據API您可以使用返回對象的id

$charge = \Stripe\Charge::create(array(
    "amount" => $price,
    "currency" => "usd",
    "customer" => $custID, // obtained with Stripe.js
    "description" => "Charge for test@example.com",         
    "capture" => false
));

// you can use the var_dump function to see what's inside the $charge object
// var_dump($charge);

$chargeID = $charge->id;

(而且你不需要再次調用Charge::retrieve ,你可以使用當前的$charge對象)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM