question

glen avatar image
glen asked

Player's Value to Date not calculating correctly

The Value to Date of a player doesn't seem to be calculated properly in regards to currency exchange rates. I'm testing CAD (Canadian) transactions right now and the 0.99 USD price tier for iOS equals 1.39 CAD. But when validating with PlayFab using the CAD currency and the 139 price value it appears that PlayFab is equating 1.39 CAD to be 1.05 USD when it should be 0.99 USD.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
brendan avatar image
brendan answered

Actually, I'm getting $1.39 CAD being equal to $1.06 USD right now, on multiple currency converters. What we use is a realtime query of the currency exchange rate when we make the conversion, so whatever the rate is when the items is purchased is going to determine what the USD price is recorded as.

6 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

glen avatar image glen commented ·

That makes sense, but it's unfortunately inaccurate to the actual revenue being generated in the app store. I suppose there's no efficient way to query the actual price in the app store?

0 Likes 0 ·
glen avatar image glen glen commented ·

I sort of recant this. It will be somewhat inaccurate, but the deeper I think about it the more I'm realizing this is less to do with PlayFab and more to do with constant fluctuation of Forex. By the time payments are made from Apple the exchange rate may be different anyways and there is no reasonable way to track that.

0 Likes 0 ·
brendan avatar image brendan glen commented ·

Indeed - because we're one step removed from the actual payment provider, we can only work from the data we're provided. For foreign currency transactions, we convert at the time it's reported to us, but there could be a significant delay between when the purchase was made and when the call could be made to us, in rare instances (lose internet connection at just the right time).

0 Likes 0 ·
brendan avatar image brendan glen commented ·

Unfortunately, Apple doesn't give us the ability to query for that information directly. But if you know that the value you want is $0.99 USD, you can simply report it in the receipt validation API call as 99 USD, as the values you pass in are simply used for reporting.

0 Likes 0 ·
glen avatar image glen brendan commented ·

True, I had considered that. But I'm not even sure if that would be more accurate anymore :S

0 Likes 0 ·
glen avatar image glen commented ·

Although to be fair the amount received from Apple (and other stores) payments will also have similar variance.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.