#andy-potter_unexpected

1 messages · Page 1 of 1 (latest)

high sequoiaBOT
#

👋 Welcome to your new thread!

⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.

⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.

🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1356261258160115762

📝 Have more to share? Add more details, code, screenshots, videos, etc. below.

shell ether
#

Platform is using Stripe Custom Connect, PoLL with Destination Charges on_behalf_of to process payments for Connect Account. We are using the Stripe Embedded Components to provide dashboard access for Connect Accounts.

We are trying to give Connect Accounts the ability to manage refunds and disputes via the Payment Details embedded component as described here : https://docs.stripe.com/connect/supported-embedded-components/payment-details?lang=dotnet#allow-your-connected-accoun[…]o-manage-destination-charges. We followed the directions to allow connected accounts to see payments by setting DestinationOnBehalfOfChargeManagement to true for both PaymentDetails and Payments component options

Running into a odd issue with trying to load the Payment Details in our system for a connected account. When I try to load a payment details screen up is provides an error saying charge ID is not valid. See attached pic.

Here's log for the call https://dashboard.stripe.com/acct_1R7el0GfcvlSBV81/test/logs/req_ZHIFw4E8qe0upu?t=1743203707

Since we're using destination charges with on_behalf_of, the charge is on the platform, not the Connect account. Any ideas on what could be wrong on our end? I feel like I might have seen this before and needed to clone customers to the connect account.

Show details of a given payment and allow users to manage disputes and perform refunds.

misty finch
#

Did you already do that? Can yous hare the request where you did pass this?

shell ether
#

We did set destination_on_behalf_of_charge_management feature to true. Let me see if I can find the logs

misty finch
#

Sure

shell ether
#

account session one is returning 200, but when stripe is trying to fetch charge that is resulting in 404

#

This is what we see if the browser console after successful account session

misty finch
high sequoiaBOT
misty finch
#

Can you audit this on your end and ensure that you're making the requests on the same account?

late surge
#

Hi there 👋 I'm jumping in as my teammate needs to step away.

Am I correct in assuming you're using setPayment to specify what payment should be shown by default when the component is rendered?
Or are you finding the payment in the list of payments the component renders, and then seeing the shared error when clicking on it?

shell ether
#

Going from the PaymentList to the Payment Detail is fine. We're going to the Payment Detail directly from another area of our admin console

late surge
#

Gotcha, do you have a publicly accessible test page available where we can step through this and see if anything stands out to us?

shell ether
#

so to summarize - if we go to payment details from payment list, ✅ if we go to payment detail directly, ❌

#

we do not have a public page for this 😢

#

docs say -

For destination charges and separate charges and transfers, the PaymentIntent doesn’t exist on the connected account. Instead, pass the associated charge ID that belongs to the connected account.

#

but this charge is not on the connected account, only the platform account

late surge
#

Hm, I'm wondering if it's expecting the charge object that gets created on the Connected Account by the Transfer (should have a py_ prefix).

shell ether
#

that's a good idea. Let me try that

#

that does it! only problem is we are storing charge id in the DB, so we need to get to a py_ from a charge. what's the best way to do that?

#

🥳

late surge
shell ether
#

Super helpful @late surge thank you.

Can I suggest the docs get updated to reflect the info about passing in the py_? Right now it says Payment Intent or Charge, not the Payment

late surge
#

py_ is still a Charge object, and I think the docs already try to point this out via the note you cited earlier, but it does seem that could benefit from being more explicit to avoid this confusion.

shell ether
#

yeah, it is confusing. I did not know py_ is still a charge object.

Thanks again for the help @late surge

late surge
#

Any time!