Request: enable bank-on-file ACH (CreateBankAccount + RECURRING_CHARGE) for production app

Hi Square team,

I’m the developer of Booth Brother, a shop-management app for booth-rental barbershops (production Application ID sq0idp-2Bc4d-BxNAbek1V66kpsWw). Each shop connects its own Square account through OAuth.

We want renters (the barbers who rent a chair) to be able to pay their booth rent to the shop by ACH from a bank they save once, instead of entering their bank details every time. Our flow:

  1. The renter links their bank with the Web Payments SDK ACH (intent STORE), and we call CreateBankAccount to save it on a Square customer in the shop’s account.
  2. The renter authorizes rent payments (RECURRING_CHARGE), and we charge the stored bank account with CreatePayment. The renter controls the amounts and can stop at any time.

When a shop authorizes our app with BANK_ACCOUNTS_WRITE in the requested scopes, the token comes back with every other permission we asked for, but not BANK_ACCOUNTS_WRITE.

Could you please, in production:

  • enable BANK_ACCOUNTS_WRITE / CreateBankAccount for this application, and
  • add it to the allowlist for ACH RECURRING_CHARGE (bank on file)?

If there’s an application or review process we should go through instead, please point us to it. Until then, we’re using Invoices with bank transfer and “save payment method”.

Thanks,
Jacob Benedict

Hi Jacob,

Thanks for the detailed description here.

Have you tried calling CreateBankAccount endpoint? I was told that you’d be able to make the call successfully even though BANK_ACCOUNTS_WRITE access doesn’t seem to be returned when requesting scopes. This way, you should be able to STORE the bank account and charge it for one-off transactions.

We’re no longer accepting applicants for the recurring ACH beta. The team expects a launch in early 2027, but that timing and your app’s eligibility aren’t guaranteed.