Skip to main content

Environment handoff

Exchange these settings with Moonshot before sending sandbox traffic. There is no public self-service credential issuance endpoint. Store credentials in your backend's secret manager and send secrets only through your agreed secure channel.

SettingSupplied byWhat to confirm
API base URLMoonshotExact sandbox URL and separate production URL; no documentation host.
operatorSlugMoonshot + partnerExact routing key bound to the environment secret.
HMAC secretMoonshot + partnerSeparate secret per environment; never placed in iframe URLs or frontend code.
operatorIdMoonshotProvider UUID; informational, also returned in signed launch responses.
Callback base URLPartnerPublic HTTPS URL reachable from Moonshot, optionally including a path prefix.
Allowed game originsMoonshotExact HTTPS origins your backend may accept in launch responses and your CSP permits in frame-src.
Game/currency matrixBothEnabled game slugs, currency codes and asset decimals. Use one agreed code consistently.
Limits and RTPBothStake minimum/maximum, payout/exposure rules and game configuration per currency.
Promotion rulesBothWhether freeplays are enabled; supported settings, payout destination and caps.
OperationsBothTechnical contacts, timeout/retry settings, reconciliation and launch acceptance date.

Partner responsibilities​

  • Supply a player UUID and your own session reference. Bind each session to the authenticated operator, player, game and currency before launching.
  • Implement all three callback paths under the registered base URL. Do not redirect them, require a browser login, or let a proxy alter JSON bytes before verification.
  • Maintain accurate UTC clocks. Signatures allow a five-minute clock window.
  • Return a signed JSON response for every authenticated success and error. Wallet storage and transaction idempotency must survive process restarts.
  • Allow late settlement using the original bet even when the player's login session has expired. Avoid logging secrets, signatures, launch URLs and full payloads.

Callback URL example​

If your registered base is https://wallet.example/moonshot, Moonshot sends a bet to https://wallet.example/moonshot/transactions/bet. The canonical signature path is /transactions/bet, matching the logical endpoint; the registered base prefix is not added to that signing line. Map the external route to this logical endpoint before verifying. Never derive it from an untrusted forwarding header.

Completion​

Agree the sandbox test results before enabling traffic. Verify the complete launch and wallet flow using your deployed callback backend, issued credentials and enabled game/currency settings.