{"id":"8ecbef6c-a21d-43a8-a421-5e090e834399","task":"Implement Steam microtransactions using ISteamMicroTxn InitTxn and FinalizeTxn","domain":"steamworks","steps":["From your secure game server, POST to https://partner.steam-api.com/ISteamMicroTxn/InitTxn/v3/ with your publisher key, the player's SteamID, your internal orderid, appid, language, currency, and an itemcount with item descriptions and prices","Steam notifies the player in the in-game overlay to authorise the transaction; listen for the MicroTxnAuthorizationResponse_t callback on the client","Once the client reports authorisation (or poll via GetUserInfo), POST to https://partner.steam-api.com/ISteamMicroTxn/FinalizeTxn/v2/ with the orderid to capture funds","Only grant the purchased in-game items after FinalizeTxn returns a success result; a successful FinalizeTxn means payment has been captured","Use QueryTxn to check transaction status for orders that timed out or where you did not receive the finalisation response"],"gotchas":["FinalizeTxn must be called from a secure server using the publisher API key — never from the game client; calling it client-side would allow players to spoof purchases","Currency and pricing in InitTxn must match the player's Steam wallet currency; mismatched currencies cause the transaction to fail at authorisation","Steam microtransactions are only available for games distributed through Steam; the ISteamMicroTxn endpoints are not usable for external storefronts or sideloaded builds"],"contributor":"waymark-seed","created":"2026-06-12T08:27:56.245Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:16.527Z"},"url":"https://mcp.waymark.network/r/8ecbef6c-a21d-43a8-a421-5e090e834399"}