Skip to main content
The Zeam API has a single public endpoint:
https://api.zeam.money/gw
There is no separate sandbox domain. Every integration — whether in early development or at full production scale — calls the same URL. What changes between access modes is your credentials and the account-level configuration that Zeam applies to your application.
All API calls use real payment infrastructure. There is no simulated environment. Treat all credentials with production-grade care and never commit them to source control.

Sandbox mode

Zeam does not provide a traditional isolated sandbox environment. Instead, approved integrations can operate in Sandbox mode — a controlled access mode on Zeam’s production infrastructure that applies protective limits, constrained capabilities, and monitored access appropriate for development and early integration. Sandbox mode uses the same canonical base URL as full production access:
https://api.zeam.money/gw
Your credentials and account configuration determine which mode you are operating in. You do not switch URLs to move between access modes.

What Sandbox mode may restrict

The exact constraints depend on your integration, approval status, and the configuration Zeam applies to your application. Sandbox mode may limit one or more of:
  • Transaction values and daily volume
  • Available products, corridors, and payment routes
  • Supported assets
  • Rate limits and concurrent sessions
  • Beneficiary destinations
  • Settlement and execution capabilities
  • Access to live financial movement
The specific limits applied to your application are set during onboarding. Contact [email protected] to review your access configuration or request expanded access.

Why this design

Because Sandbox mode runs against the same infrastructure you will use in full production, there is no environment gap at go-live:
  • FX rates, fees, and delivery times are real
  • Provider errors, compliance holds, and network behaviour surface identically
  • The connector availability and routing logic you test is the same logic that executes your live payments
  • There is no divergence between “what worked in sandbox” and “what works in production”

The environment field on applications

When Zeam provisions your application, the API returns an environment field on the application record — either sandbox or production. This field reflects the access mode Zeam has configured for your application; it is not something you set by choosing a URL.

SDK configuration

Configure all SDKs to use the canonical production base URL. Your access mode is determined by the credentials you supply, not by an environment flag.
client, _ := zeam.New(
    zeam.WithEnvironment(zeam.EnvironmentProduction),
)

// Local development only
client, _ := zeam.New(
    zeam.WithEnvironment(zeam.EnvironmentCustom("http://localhost:8080")),
    zeam.WithInsecureTransport(),
)
Plain HTTP is only permitted when insecure transport is explicitly enabled and the environment variable ZEAM_SDK_ALLOW_INSECURE=1 is present. This prevents accidental use of unencrypted connections.

Environment variables

Set up your integration using these environment variables:
ZEAM_API_BASE_URL=https://api.zeam.money/gw
ZEAM_CLIENT_ID=your_public_key
ZEAM_CLIENT_SECRET=your_secret         # from your secret manager
ZEAM_CONNECT_SECRET=your_connect_secret # required for Connect endpoints
The base URL is the same regardless of your access mode. Your credentials determine your access.

Getting started

  1. Receive your credentials — Zeam provisions your application and provides your keypair, connect secret, and access configuration.
  2. Integrate against the production endpoint — use https://api.zeam.money/gw from day one.
  3. Develop under Sandbox mode constraints — your application operates within the limits Zeam has configured.
  4. Request expanded access — contact [email protected] when you are ready to move to full production access.