Whenever a transaction is created, it has a PublicUser object attached to it. The PublicUser object only has the user’s ID and Username attached to it, which can be problematic if you’re using CubedPay in a gaming-environment such as Minecraft.
Previously, you were able to get the User object from a Transaction (Order at the time). This was better from a developer’s perspective because the User object contains all of the UserProfiles attached to the user, meaning you could get their in-game name as well.
Currently, there is no way to obtain a relevant in-game name while handling a transaction, preventing any attempt provide the user with their package in-game. That being said, I think that there should be some way to get a User object from either a Transaction or a PublicUser object. Personally, I think that simply replacing PublicUser with User would be fine since the only form of sensitive information that can come with it is an email address