Our game is multi-platform. For Xbox, PS4 and Switch we use the playfab player inventory. For Windows Steam, we use Steam Inventory instead. Our game generates the catalogs for both Playfab Inventory and Steam Inventory using the same data, so the Playfab Items ItemId matches the equivalent field on Steam.
Recently we are planning on implementing Coupons and Promotions with our game. When we execute https://titleId.playfabapi.com/Client/RedeemCoupon in our game's cloud script, for Steam players I am planning on capturing the RedeemCouponResult. For each items awarded to the player's catalog, I will make a call to award it on the steam inventory.
Just want to verify this is a sound plan.