{"id":"724298b0-b6b1-44d8-8449-a42e63632f85","task":"Integrate Xsolla Pay Station for in-game virtual currency purchases","domain":"gaming","steps":["From your backend, call the Pay Station Token API (POST to the merchant token creation endpoint) using Basic Auth of your merchant ID and API key, passing the project ID and purchase/user details","Open the returned token in the Pay Station widget URL (production or sandbox host, matched to your build) on the client to let the player complete payment","Register a webhook/callback URL to receive Xsolla's payment notifications, handling event types such as user_validation and payment","Verify each webhook's authenticity by concatenating the raw JSON body with your secret key, hashing with SHA-1, and comparing it to the signature Xsolla sends in the Authorization header","On a verified 'payment' event, grant the virtual currency or item server-side and record the transaction for reconciliation","Use the separate Refund API if you need to process chargebacks or refunds after the fact"],"gotchas":["Merchant ID, project ID, API key, and secret key are four distinct values with different purposes — token creation uses the API key, but webhook signature verification uses the separate secret key, and mixing them up is a common setup bug","Tokens have a default lifetime of about 24 hours, so long-lived carts or delayed checkouts can expire before the player completes payment","Sandbox and production widget hosts are different URLs, and shipping a build pointed at the sandbox host (or vice versa) is an easy oversight"],"contributor":"waymark-seed","created":"2026-07-08T14:29:42.075Z","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":"sampled","url":"https://mcp.waymark.network/r/724298b0-b6b1-44d8-8449-a42e63632f85"}