#damonstrr
1 messages · Page 1 of 1 (latest)
You mean creating a destination charge using Checkout Session ?
https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-subscription_data-transfer_data
yes
can you do the above i pasted??
I was told this yesterday by somehere
Yup, you're trying to reference a Customer object that resides on another account, that is not allowed. To accomplish what you're after, you will need to either:
leverage Destination Charges, where all the payments happen on your Platform account and then funds are transferred to your Connected Accounts. This will allow you to create a Customer one time on your Platform account, and then use it for all of the payments processed on your Platform.
https://stripe.com/docs/connect/destination-charges
Build a flow that creates Customers on your Platform account, and then uses copies their key details and payment method details to your Connected Accounts so you can process Direct Charges on those accounts.
https://stripe.com/docs/payments/payment-methods/connect#cloning-payment-methods
So you can't do this
@checkout_session = current_user.payment_processor.checkout(
mode: 'subscription',
locale: I18n.locale,
line_items: [{
price: 'price_1232333,
quantity: 4
}],
subscription_data: {
metadata: {
pay_name: "base" # Optional. Overrides the Pay::Subscription name attribute
},
},
success_url: root_url,
cancel_url: root_url,
}
)
Stripe::PaymentIntent.create(
customer: checkout_session.customer,
payment_method: payment_method_id,
application_fee_amount: application_fee_amount,
transfer_data: {
destination: connected_account_id,
}
)
```??