Configure your Apple bundle ID and shared secret in the PlayFab title settings under Economy > Marketplace Settings
After a successful StoreKit purchase on the client, obtain the raw receipt or JWS transaction data and send it to your game server or call directly from the client
POST to https://[titleId].playfabapi.com/Inventory/RedeemAppleAppStoreInventoryItems with the player EntityKey and the Receipt string from Apple
PlayFab validates the receipt with Apple's servers and, if valid, grants the mapped catalog item to the player's inventory automatically
The API is idempotent for a given receipt — submitting the same receipt a second time does not double-grant items
Known gotchas
Map each Apple product ID to a PlayFab catalog item in the Economy v2 marketplace settings before testing; unmapped product IDs cause validation to succeed but grant nothing
Sandbox receipts must be tested against PlayFab's sandbox/development environment; production receipts fail in sandbox mode and vice versa
If PlayFab's receipt validation call to Apple times out, the API returns an error rather than a partial grant — implement retry logic with the same receipt, relying on idempotency
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp