#pravin-ach
1 messages · Page 1 of 1 (latest)
i have generated bank token using plaid.
i want perform ach paymnet for connect account using same bank token
What type of model are you interested in, with the involvement of a Connected account?
Does the payment occur on the Connected account, and you as a platform charge the application fee?
ACH Payment Should occur on connected account.
Or the customers pay on your platform account, then you transfer the respective amount to your Connected account?
Nice, thank you.
i dont want transfer
In this case, a "Direct Charge" sounds like a good option: https://stripe.com/docs/connect/direct-charges
yes, but how can i pass Customer id in this
When you create a charge via ACH https://stripe.com/docs/ach#creating-an-ach-charge, if you specify an extra line of code:
RequestOptions requestOptions = RequestOptions.builder().setStripeAccount({{CONNECTED_STRIPE_ACCOUNT_ID}}).build();
{{CONNECTED_STRIPE_ACCOUNT_ID}} is the Connected account's id you can find on your Stripe dashboard
it will not resolve my issue
let me explain step by step
I am referring below docs for ACH Payment
I am verifying bank account using Pliad
plaid*
so it will give me stripe_bank_account_token
by using that bank account token i am creating customer object like below
CustomerCreateParams params =
CustomerCreateParams.builder()
.setDescription("Example customer")
.setSource(tokenID)
.build();
Customer customer = Customer.create(params);
by using this customer object i need to do ACH paymnet for particular connected account
hope its clear now
ok, so what have you tried?
can I suggest again that you don't build this now and wait a while? We're re-launching ACH fairly soon so it's not a great time to build this on the legacy APIs.
i have tried using below code
ChargeCreateParams params =
ChargeCreateParams
.builder()
.setAmount(1500L)
.setCurrency("usd")
.setCustomer("cus_AFGbOSiITuJVDs")
.setTransferData(
ChargeCreateParams.TransferData
.builder()
.setAmount(850L)
.setDestination("{{CONNECTED_STRIPE_ACCOUNT_ID}}")
.build()
)
.build();
Charge charge = Charge.create(params);
its send amout to platform account and then transfer to connect
but i dont want that
i want direct payment in connect account
then there is no use of bank token right?
you should do
RequestOptions requestOptions = RequestOptions.builder().setStripeAccount({{CONNECTED_STRIPE_ACCOUNT_ID}}).build();
ChargeCreateParams
.builder()
.setAmount(1500L)
.setCurrency("usd")
.setSource("btok_xxxx")
//...
//...
Charge.create(params,requestOptions)
you can pass the token directly to the charge API
not really, is something unclear about the code?
its clear for me
one more last question , you said, **can I suggest again that you don't build this now and wait a while? We're re-launching ACH fairly soon so it's not a great time to build this on the legacy APIs.
**
till when new launch coming live
and will be there lots of changes?
can't give you a timeframe! But it's planned to be soon. And yes, it will be entirely different and use the current PaymentMethod and PaymentIntent APIs and so on, like every other payment method does today, not this legacy Token + Charge API.
the code you write today will still work fine and doesn't have to be updated, just be aware all our future work and products will build on the new version instead