Developer Products Article has outdated information

Issue Description
At the bottom of the Developer Products article it states 'Roblox itself does NOT record the purchase history of developer products by specific players, although you can view overall daily/monthly stats as outlined here. If you want to track player-specific purchase history, it’s your responsibility to store the data, typically with data stores.'

However on the contrary, Roblox does in fact record the purchase history of developer products, and this practice is practically unnecessary.

Issue Area: DevHub Content
Page URL: Developer Products | Roblox Creator Documentation

2 Likes

Out of curiosity, where specifically is developer product purchase history located? I haven’t seen it.

To be clear, the emphasis here is on player-specific, e.g. you can see a full log of individual sales, but we currently do not provide easy ways to filter this data by a specific player (you can only see the full list sorted by time). This is what the article is currently referring to.

We can probably improve what words are bolded to make this more clear. Thanks for the feedback.

5 Likes

In addition, while storing player-specific purchase history is entirely up to the developer, important to note that chances become less difficult reaching 4MB data limit per player. (Generalized concept)

DataStores are an in-house example of purchase history but they’re relatively poor unless it’s just a small one-off experience. If the 4MB limit poses a problem you should be clearing off very old purchases that have been confirmed granted and don’t need further keeping.

If you want permanency on your records and you’re operating a serious and big project you would probably use another platform to record purchases that integrates well with any analytics tools you have so that there’s usefulness in keeping records, apart from other use cases like rollbacks/restorations.

Anyhow, not really the subject of the thread, though, this should be implicit if you think about the fact that limits for DataStores exist. Don’t think an additional addendum would be needed here, just clarification on the wording choice about sales history.

4 Likes

Thank you for the clarification. Out of curiosity: If this is the case, shouldn’t gamepasses be treat the same way as there’s no way to check player-specific history for them either? I haven’t seen this sort of message on any of the Gamepass-related articles.

In this regard, this note seems to me like a ‘good practice’ advise. Roblox technically does record the purchase history of developer products by specific players in the Sales of Goods page. It just doesn’t let you filter through the records at this point in time.

Which is the case for any sales type. There are of course other ways to potentially track player-specific purchases on products such as Gamepasses by checking the player’s inventory for example, but this also doesn’t work reliably.

Just found this note on the article page.

It’s nice to see this note on there too. Just want to mention that the ‘here’ reference is broken. A small little bug. @Hooksmith

It looks like you solved this one yourself, but just for other people reading along: there is less of a need for a detailed per-player purchase log for game passes because they are one-time purchases, so it is easier to find out what the user has bought and what they have not bought yet. This is not the case for developer products since they can be bought multiple times, and there is no API to query if or how often a player has bought it.

1 Like