We're seeing some odd behaviour in our data. When sandbox purchases are made on iOS in GBP, we're seeing them be successful, but the logged price is RM 7 (8GBP), not RM 999 ($9.99). Is this on our end, or on your end?
We're seeing some odd behaviour in our data. When sandbox purchases are made on iOS in GBP, we're seeing them be successful, but the logged price is RM 7 (8GBP), not RM 999 ($9.99). Is this on our end, or on your end?
In the case of receipt validation, we use the price and currency code you provide in the call. In all cases, it follows the same format - the price is in the smallest unit of currency.
So, if you're sending "GBP" for the CurrencyCode, and 8 for the PurchasePrice, that's really saying that the price is 8 pence, would result in it showing up as $0.07.
so that logging is client-controlled? And we should be specifically sending all as US Cents (basically ignore what it says in the receipt)
It does only log if the receipt is verified, right?
Actually, no - you should send the price in whatever currency was used to pay for it. So, for example, USD 199 would be $1.99 US, while GBP 199 would be £1.99. And there's nothing to ignore in the receipt - Apple does not provide that information in the receipt, and they don't give us a way to query for the amount charged, which is why we have no choice but to require that the client send this.
But yes, you are correct that we only then grant the digital goods purchased to the player and log the purchase if the receipt passes all tests (that it's valid, that it's actually for your title, that it's for a valid item in your catalog).
What's the reason to send in gbp? It pretty clearly messed up the analytics to do so - the dashboard adds the values together, so purchases of$19.99 and gbp7.99 would display an incorrect total of of $26.98.
Can you point me to a specific event where you're seeing this? Looking at your purchase events (https://developer.playfab.com/en-us/721F/playstream/event-history?query=cGxheWVyX3JlYWxtb25leV9wdXJjaGFzZQ==), they all appear to have the correct amounts. I do see that in the Event Name column, it's doing something confusing - showing the total for the transaction in USD, but also providing the transaction's currency code. I'll file a bug to get that corrected.
2e830ea682d347a3acff817571233e86 is one event that's showing 0.07 GBP (would be 6.99 GBP). It should be showing up as 999 US cents.
If you look in the reports, you'll see those reflected directly in the reports, without being converted to USD.
I'm just going to send everything in USD.
Let me rephrase - the issue with that receipt validation call is that the PurchasePrice was passed in as 7, where it should have been 699 (using the info above). All purchase prices are handled this way in the service - so in this case, the price isn't stated in British pounds, it's stated in British pence. If you're seeing something that doesn't sync with this in the reports, can you please send me a link to the report in question?
that's not the problem I'm stating. The problem is that the dashboard adds up british pence and US cents, and treats them all as "cents". So passing in non-US currency doesn't help us track global purchases.
Since the cost isn't used in receipt validation, we'd be better off passing in the catalog price in US cents, rather than the actual purchase price.
Ah! Now I understand, thanks. I managed to get some testing on this today and confirmed what you're seeing. That's clearly a regression, as it wasn't doing this previously. We'll get it fixed shortly.
ARG! Wait - I did the same thing you did and flipped the numbers, I just didn't realize 'till I was writing the bug and read what I wrote. :)
The reporting is actually correct. When I add up all the purchases for your title - including those in GBP, the total in USD is correct. Looking at the two most recent GBP purchases:
B6BE05F2A007C96 - OrderTotal (always in USD) is 8, while TransactionTotal - the price you specified in GBP is 7.
823F85B1543D2C9 - OrderTotal is 47, while TransactionTotal (again, GBP) is 39.
Looking at the conversion rate for USD to GBP, those values are correct. You can see that these purchases show up as $0.08 and $0.47 in your player's purchase report.
2 People are following this question.