question

contact-5 avatar image
contact-5 asked

Incorrect VTD with iOS in-app-purchase

Hello,
I have noticed that the VTD of iOS players seems not matching RM value.

For example, buying an item worth roughly $5 (and RM is 5 for the item) makes the VTD of the player $0.05 for iOS players and $5 for android players. Both purchases were done with Korean Won. (KRW)
This seems to be related to this(https://community.playfab.com/questions/723/208954957-Can-t-get-ValidateIOSReceipt-to-working.html), but why RM value of the packages are not used for both iOS and Android devices?


However, I am also seeing that RealCurrencyPrices is no longer used (https://community.playfab.com/questions/20493/realcurrencyprices-and-virtualcurrencyprices-are-n.html)

So, in order to correctly set the price value for iOS players, what should be done?

1) RealCurrencyPrices is still valid solution for the case above?


2) Is RealCurrencyPrices still used and I need to set manually all of the items for all currencies that are supported by Apple?

BTW, the title value is 5CC39.

10 |1200

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

contact-5 avatar image
contact-5 answered

Sorry, there was confusion when I asked the question.

The item's RM is set as above, 499 to represent 499 cents. The RM value I set there is used correctly for Android devices. For android users, the VTD and the items they bought correctly refer to this. However, this seems not so for purchases with iOS devices.


ValidateIOSReceiptRequest request = new ValidateIOSReceiptRequest() { ReceiptData = receipt, CurrencyCode = currencyCode, PurchasePrice = purchasePrice };

I believe that ValidateIOSReceiptRequest needs the correct currency code and price in that currency to validate the purchase correctly. (Correct me if I am wrong.) However, for example, if Korean Won is used, the RM and USD are incorrectly recorded as my previous question.

Is this expected behavior? Why does iOS validation override the RM value of the item?


2 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.

contact-5 avatar image contact-5 commented ·

@Sarah Zhang, I found this issue is happening in previous titles that we launched before.

Now I think this is a bug with Playfab, that RM is incorrectly overridden for some currencies like Japanese Yen or Korean Won for iOS devices. (USD seems fine)

0 Likes 0 ·
Sarah Zhang avatar image Sarah Zhang contact-5 commented ·

Thanks for the clarification, as thread -- ValueToDate calculation bug in Russian ruble? - Playfab Community said. For Real Money prices, we use whole numbers of the currency's fractional unit (https://en.wikipedia.org/wiki/List_of_circulating_currencies). For KRW, that would mean setting the price to 499 is actually setting it to 4.99 won (or 499 jeon). The mirror question could be this -- Problem with real money purchase event - Playfab Community.

0 Likes 0 ·
Sarah Zhang avatar image
Sarah Zhang answered

>> 1) RealCurrencyPrices is still valid solution for the case above?

RealCurencyPrices is deprecated. Setting this attribute won’t make sense anymore. We’d recommend you just use RM. RM is reserved for Real Money that is defined in US Cents. It means, 199 RM represents USD 1.99. 5 RM being converted to 0.05 USD is expected behavior. Besides, as this thread -- RM currency does not make sense? - Playfab Community said, only if you don’t provide the price to IAP provider, will PlayFab use the one you set as RM price. Hence, if you set the price to 5 USD in the Google Play Store, this price would override the RM configuration – 0.05 USD, you would see “5 USD”on Android Devices.

>> 2) Is RealCurrencyPrices still used and I need to set manually all of the items for all currencies that are supported by Apple?

As the above answer, and the documentation -- Getting started with PlayFab, Unity IAP, and Android - PlayFab | Microsoft Docs said, RM is defined in US Cents. If you want to set the IAP price as 5 USD, you can try to set the RM price to 500.

10 |1200

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

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.