通过API的Stripe API更新帐户

时间:2019-07-06 22:12:04

标签: php stripe-payments

因此,在创建用户后,我需要更新用户帐户,并且能够执行以下操作:

$acc_details = \Stripe\Account::retrieve('');
$acc_details->legal_entity['first_name'] = 'First Name';
$acc_details.save();

但是现在由于某种原因,它不再能够找到legal_entity,我查看了响应代码,它显示它现在处于个人状态,因此我对其进行了更改,但这给了我一个错误:

Indirect modification of overloaded property Stripe\Account::$individual has no effect in update.php on line 110 (which is $acc_details->individual['first_name'] = 'First Name';)

我误解了如何立即更新,还是我的代码错误?它已经运行了一年,直到本月为止没有任何错误。

1 个答案:

答案 0 :(得分:0)

不确定这是否是官方的方法,但这似乎对我有用(如果Stripe做出回应,我也将发布他们的答案)。创建帐户时,我必须至少在individual部分中添加一些内容。我相信您在创建帐户时也可以全部添加。这是对我有用的最终代码:

$user = \Stripe\Account::create(array(
        "type" => "custom",
        "country" => "US",
        "email" => $email,
        "business_type" => "individual",
        "individual" => [
        'first_name' => $firstName, 
        'last_name' => $lastName
        ],
      ));

$token_id = $user->id;
$acct = \Stripe\Account::retrieve($token_id);

$acct->individual->dob->month = $dob_month;
$acct->individual->dob->day = $dob_day;
$acct->individual->dob->year = $dob_year;
$acct->save();