Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't add additional verification documents to Stripe Connect bank account to enable payouts

Question - What fields do I use to create the correct token to update my Stripe bank account to enable payouts?

I'm trying to enable my Stripe bank account payouts - after using this test routing and accounting number (test number link) to trigger a bank account ownership verification status, which disabled payouts.

routing number: 110000000 , account number: 000999999991

I'm trying to enable the payouts by adding an additional document for the error I receive when I created the account when I used these test numbers.

Error Currently Due:

documents.bank_account_ownership_verification.files

Attempt 1: I tried updating the account using these fields but failed

account = {
  documents: {
    bank_account_ownership_verification: {
      files: this.file.value
    }
  }
};

I'm getting a Stripe error saying:

Unrecognized token creation parameter parameter: documents is not a recognized parameter. This may cause issues with your integration in the future.

Attempt 2: Then I tried updating the account with these fields below and failed again to see any payout status change.

account = {
  individual: {
    verification: {
      additional_document: {
        front: this.file.value,
        back: this.file2.value
      }
    }
  }
};

I'm getting a Stripe error saying:

Error updating account. You cannot change individual[verification][additional_document][front] via API if an account is verified. Please contact us via ht

FYI - I can generate the account token from both attempts but both fail to update the account with Stripe to enable the payouts

Here is the code to generate the account token which then gets passed to my server where the Stripe API is called to update the account:

// attempt 1
let account = {
  tos_shown_and_accepted: true,
  documents: {
    bank_account_ownership_verification: {
      files: this.file.value
    }
  }
};
// attempt 2
let account = {
  tos_shown_and_accepted: true,
  individual: {
    verification: {
      additional_document: {
        front: this.file1.value,
          back: this.file2.value
        }
      }
   }
};

from(this.stripe.createToken('account', account)).pipe(take(1)).subscribe((result: any) => {

  if (result.error) {
    this.alertService.danger(result.error.message);
  } else {

    this.accountService.updateStripeAccount(this.route.snapshot.paramMap.get('id'), result.token.id).subscribe(() => {
      this.router.navigate(['/account/banks/accounts']);
      this.alertService.info("Account updated successfully");
    }, error => {
      console.log(error);
    }).add(() => {
      this.loadingAccount = false;
    });

  }
});
like image 374
user1186050 Avatar asked Oct 26 '22 11:10

user1186050


1 Answers

Short answer is that there's no way for you to do this using Account Tokens.

Currently, Account Tokens don't support the documents hash so passing in documents.bank_account_ownership_verification won't work. Your only option is to pass in documents.bank_account_ownership_verification (see apiref) when you update the Account directly (not through a token).

like image 103
karbi Avatar answered Nov 13 '22 02:11

karbi