因此,在创建用户后,我需要更新用户帐户,并且能够执行以下操作:
$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';)
我误解了如何立即更新,还是我的代码错误?它已经运行了一年,直到本月为止没有任何错误。
答案 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();