question

Good Guy avatar image
Good Guy asked

Noticed Odd Inventory behaviour

I am implementing Steam purchases into a game that already was working with a different type of purchase system. While implementing and testing Steam purchases, I've noticed something that looks "odd":

I have initiated purchasing some Bundles that are priced in RM. The player's Event Data shows these events:

player_started_purchase

player_paid_for_purchase


What hasn't been completed is the final confirmation from Steam, so there are no additional events, like player_realmoney_purchase or otherwise.

.

HERE IS THE ODD PART:

If I explore the player Inventory, they HAVE the bundles. They are consumed and expired and they did NOT receive the items in them.

Since they didn't actually pay for the bundles, it's okay that they don't have the items, but I don't understand why the bundles are even listed in the inventory to begin with. Shouldn't the bundle/item be granted as the final confirmed step of the purchase flow?

In-Game EconomyPlayer Inventory
4 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.

Rick Chen avatar image Rick Chen ♦ commented ·

Could you please provide your title id, the player's id and the order id of that purchase for us to diagnose?

0 Likes 0 ·
Good Guy avatar image Good Guy Rick Chen ♦ commented ·

I should mention that Steam Add-on Sandbox mode is on.

Title: 7962A

Player: E151B6A70C4A9453


Bundle purchase that was NOT completed:

Order ID: 2ABC582FAF78B4E2

Date: 11/02/2021 8:59 PM

Compare to Bundle purchase that WAS completed:

Order ID: 8A9DAF577B743EEC

Date: 11/03/2021 6:27 PM


Thank you for looking into this.

[EDIT]: Further testing revealed this:
Once the player initiated a purchase (Steam) the Bundle is added to the player's account Inventory but Currency contents not given (presumably this would be true of other contents, not just currency but my test bundle only contained currency).

After final authorization of payment is completed, then the Bundle contents are given. It's as if the item is "reserved" for purchase but not actually granted even though it shows up in Inventory either way.

In the end, the experience for the player is not impacted but this does impact data/analytics.


(NOTE for anyone else reading this: "player_paid_for_purchase" event is very misleading, since the player hasn't paid, but this event appears when a request for payment is initiated to Steam. The ACTUAL "paid" event is "player_realmoney_purchase" ).

0 Likes 0 ·
Rick Chen avatar image Rick Chen ♦ Good Guy commented ·

I have inspected your title, I don’t think the bundle was granted to the player for the order 2ABC582FAF78B4E2. Because I cannot find the event “player_inventory_item_added” for the item “TOKENS001” near the time when the event “player_paid_for_purchase” for the order 2ABC582FAF78B4E2 was generated. For the success order 8A9DAF577B743EEC, there is a “player_inventory_item_added” event with id “2783ab7907a840c8abab42a15aa1cc0e”, which indicates that the bundle was added to the player. How do you know the bundle was given to the player for the incomplete purchase?

0 Likes 0 ·
Show more comments

1 Answer

·
Rick Chen avatar image
Rick Chen answered

I cannot find that player in your title anymore, was that Player deleted? You mentioned that you found the bundle in the player’s inventory with "Show Revoked/Expired" turned on, however, it is hard to say that bundle was granted by the incomplete purchase, it could be granted somewhere else. Could you please try again and see if you can still reproduce this issue? If you successfully reproduce it, please provide the player's id, the order id of that purchase and the bundle instance id for us to diagnose.

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.

Error rendering WebPanel (widgets/consolidation-widget.ftl): org.hibernate.hql.internal.ast.QuerySyntaxException: AvailableConsolidation is not mapped [from AvailableConsolidation up where up.node = :node]