API учетных записей Stripe Connect - переход от юридического лица к компании / физическому лицу - PullRequest
0 голосов
/ 06 марта 2020

Я управляю платформой, где мы используем Stripe Connect (пользовательские учетные записи) для управления платежами и выплатами платформы. В предыдущей версии API следующий код работал нормально.

// Company Details
$account->legal_entity->business_name = $data['business_name'];
$account->legal_entity->business_tax_id = $data['business_tax_id'];


// Legal entity personal details
$account->legal_entity->first_name = $data['first_name'];
$account->legal_entity->last_name = $data['last_name'];

Однако в более поздней версии Stripe API (2019-09-09) это больше не работает, потому что, как я обнаружил, Stripe изменил API аккаунтов. Новые сопоставления описаны здесь: https://stripe.com/docs/connect/required-updates/accounts-arguments

На основании этого должен работать следующий код:

// Company Details
$account->company->name = $data['business_name'];
$account->company->tax_id = $data['business_tax_id'];

// Legal entity personal details
$account->individual->first_name = $data['first_name'];
$account->individual->last_name = $data['last_name'];

Но это не работает, и я получаю следующее сообщение:

Создание объекта по умолчанию из пустого значения

Я в недоумении, неправильно понял API новых учетных записей. Любая помощь всегда ценится.

1 Ответ

1 голос
/ 06 марта 2020

Вы не можете объединить компанию с отдельным . Индивидуальный является лишь временным мостом для взаимодействия с API Persons. Он создаст нового человека для вас в случае, если business_type было установлено на individual, но должно быть пустым для всех других типов бизнеса. (Аналогично, компания должна иметь значение NULL и установить индивидуальное свойство, если ваш business_type индивидуален)

С чередой:

Если вы создаете учетные записи с набором business_type для отдельного лица вам необходимо предоставить хотя бы одно индивидуальное свойство (например, индивидуальное [имя_первой]), чтобы объект Person создавался автоматически. Если вы создаете учетные записи с business_type, установленным в company, вам необходимо создать каждого Person для этой учетной записи.

Если бизнес-тип отличается от индивидуального, вам нужно работать с API Persons (рекомендуется, конечно, работать с API Persons все время, индивидуально только в особом случае, когда только 1 необходимо вести учетную запись этого лица)

В старых действующих учетных записях будет автоматически создан человек для вас с помощью Stripe, и он появится, если вы перечислите лиц для этой учетной записи с помощью API.

Для новая учетная запись, что вам нужно сделать, это создать одного или нескольких человек. Stripe do c on Persons

\Stripe\Account::createPerson(
  'CONNECTED_ACCOUNT_ID',
  ['first_name' => 'Jane', 'last_name' => 'Diaz ']
);

Просмотрите поле relationship объекта Person , чтобы описать отношение человека к компании, которую вы регистрируете.

После настройки подключенной учетной записи и добавления всех нужных вам людей может потребоваться установить некоторые флажки в поле компании учетной записи, например directors_provided или executives_provided, чтобы сигнализировать о процессе проверки, что Вы закончили предоставлять Людей для этих ролей. (например: в компании может быть более 1 руководителя)

...