Reputation: 169
I'm using php stripe API to create an account using below code,
$account = \Stripe\Account::create(array(
"type" => "custom",
"country" => "GB",
"email" => '[email protected]',
'capabilities' => [
'card_payments' => ['requested' => true],
'transfers' => ['requested' => true],
]
));
Account is created, but it shows restricted please check image ,
Can you suggest how to clear these warnings using php Stripe API (without using stripe dashboard), am i missing anything im new to stripe API i checked Stripe API docs but cannot solve this one.
Upvotes: 2
Views: 2560
Reputation: 7218
The API object has a requirements
field which describes exactly what information is needed. You provide it by calling the Account Update API. It's described in detail at
https://stripe.com/docs/connect/identity-verification-api . e.g. you might have a requirements
field like this :
requirements: {
current_deadline: null,
currently_due: [
"business_profile.mcc",
"business_profile.url",
"business_type",
"external_account",
"relationship.representative",
"tos_acceptance.date",
"tos_acceptance.ip"
],
disabled_reason: "requirements.past_due",
errors: [],
eventually_due: [
"business_profile.mcc",
"business_profile.url",
"business_type",
"external_account",
"relationship.representative",
"tos_acceptance.date",
"tos_acceptance.ip"
],
past_due: [
"business_profile.mcc",
"business_profile.url",
"business_type",
"external_account",
"relationship.representative",
"tos_acceptance.date",
"tos_acceptance.ip"
],
pending_verification: []
},
So for example you would clear some of these(let's take the example of "business_profile.mcc" by calling Accounts Update like this
\Stripe\Account::update($account->id, array(
"business_profile" => array(
"mcc" => "5942" // https://stripe.com/docs/connect/setting-mcc#list
)
))
https://stripe.com/docs/api/accounts/update#update_account-business_profile
Overall unless you specifically intend to white-label the account onboarding and KYC information collection yourself, it's much easier to either integrate Express accounts(where Stripe collects the information for you), or to use Connect Onboarding for Custom accounts, where you just pass in an account ID and Stripe gives you a link to a page that the account holder can visit to provide any required info.
Upvotes: 2