#Sold

1 messages · Page 1 of 1 (latest)

elder bridgeBOT
loud pumice
#

👋 happy to help

#

would you mind sending your text here in the thread?

quick tartan
#

Sure, I will send it in 2 messages.

#

Hello, I have a few questions regarding how the exchange rate works. For context, I’m using the Stripe API through Ruby. I’m using a standard connected account (RON) to make payments and then collecting a fee that goes into the platform account (USD).

The customer is charged in USD, then the amount is converted to RON in the connected account and finally the application fee is converted back to USD and sent to the platform account (correct me if I’m wrong). Then, when the payment is refunded, I also refund the application fee which is converted back to RON and then the full amount is converted to USD and sent back to the customer (and the connected account supports the Stripe fees, in RON). What I’m trying to do here is to find the correct exchange rates for each of these operations.
I’m trying to do this by looking at the exchange_rate field in the BalanceTransaction object, which states: "If money was converted from currency A to currency B, then the amount in currency A, times exchange_rate, would be the amount in currency B". I can see that this is true only in some cases, I will write down the steps:

  1. Convert USD to RON when the customer makes the payments and the funds go into the connected account -> The BalanceTransaction object (found on the Charge object) states that the exchange_rate was 4.44881, which is lower than the real amount, so I suppose a conversion fee is applied here (2% probably): "This is fine and respects the above: If money was converted from USD to RON, then the amount in USD, times 4.44881, would be the amount in RON". In my example, 240 USD * 4.44881 = 1067.71 RON. All good here.
#
  1. Convert RON to USD when the application fee is taken from the connected account to the platform account -> The BalanceTransaction object (found on the ApplicationFee object) states that the exchange_rate was also 4.44881. The application fee here was initially $99, which, from the context of the connected account, is 440.43 RON. This exchange rate doesn’t make sense to me. Since the exchange was made from RON to USD, shouldn’t the exchange rate be 1 RON = 0.224779 USD and not the other way around? (QUESTION 1).

  2. Convert USD to RON when the application fee is refunded from the platform account to the connected account -> Now, the $99 should be converted back to the 440.43 RON, but the BalanceTransaction object (found on the ApplicationFee, refunds field) states that the exchange rate was 4.5396 (which is closer to the real exchange rate). However, when checking the real amount that was converted back (from the same ApplicationFee object, refunds field), it is exactly 440.43 RON. If we were to go by the exchange rate of 4.5396, that amount would be 449.42 RON. What is going on here? What is that exchange rate showing? How is the $99 from the platform account converted back? Is the current exchange rate taken into account or the exact exchange_rate of when the payment was made? (QUESTION 2).

  3. Convert RON to USD when the payment is refunded from the connected account to the customer -> All good here as well.

I tried to give the best context in order to have QUESTION 1 and QUESTION 2 answered, but let me know if anything doesn’t make sense. I can also provide some screenshots with the Stripe objects in question. The API version is 2020-08-27. Thanks!

loud pumice
#

just give me a couple of minutes to read over this is a lot of text to go through

quick tartan
#

Sure, take your time and let me know if you need some further information!

loud pumice
#

have you tried contacting support https://support.stripe.com/?contact=true ?

#

this is beyond what we are capable of helping with within this channel

#

you already have written the text, I would suggest sending it by email via the URL I sent you earlier and someone would come back to you with some answers

quick tartan
#

I understand, I'll do that then. Thanks!

loud pumice
#

sure thing

#

let me know if you need any more help

quick tartan
#

It's not really related to this and not even technical at all, but I'll try asking it. In the context of a full refund from a standard connected account the account now has a -1.12 USD balance.

I've read the documentation that explains how this can be fixed and how further refunds will not work, but I just wanted to ask: What happens if this account will never be used from now on? Will Stripe just be at a loss of 1.12 USD or will these funds be removed from the platform account?

loud pumice
quick tartan
#

"Stripe will resume sending payouts to the connected account once the account’s Stripe balance is again positive". What if this never happens and the balance will continue to be negative?

loud pumice
#

I'm sorry but you're asking non-technical questions for which we don't really have enough info on this channel here

#

you can ask your question to support either with the same request you already sent or by chatting with someone from support on https://support.stripe.com/?contact=true

quick tartan
#

Yep, I understand. I will also ask the support.

#

Thanks a lot for your help tarzan!

#

Have a nice day

loud pumice
#

thanks you too

#

if you don't mind I would archive/close this thread