Environments

RezolvePay runs two environments. Build and test against Sandbox, then switch every value
below to its Production counterpart when you go live. Merchant IDs and API keys are issued
per environment: a Sandbox key does not work in Production.

ValueProductionSandbox
API base URL (baseUrl, and every /api/v1/* call)https://pay.rezolve.comhttps://sandbox.pay.rezolve.com
Widget origin (where rezolvepay.js loads from)https://secure.pay.rezolve.comhttps://secure-sandbox.pay.rezolve.com
Passkey domain (iOS Associated Domains, Android asset links)secure.pay.rezolve.comsecure-sandbox.pay.rezolve.com
rezolvepay_flutter release tagv1.0.0v1.0.0

The code samples in these guides use the Production values. In the API reference, pick the
server you are calling from the base URL selector.

Which value goes where

  • API base URL — the host your backend calls, and the baseUrl you pass to
    RezolvePay.configure(...) in the mobile SDK.
  • Widget origin — the host of the loader script:
    <script src="https://secure.pay.rezolve.com/widget/v1/rezolvepay.js"></script>. The shopper's passkey
    is created for this host, so load the script from exactly this origin.
  • Passkey domain — the widget origin's bare hostname, with no scheme or port. It is not
    your baseUrl. iOS apps list it as webcredentials:<passkey domain>; the association files are
    served at https://<passkey domain>/.well-known/apple-app-site-association and
    https://<passkey domain>/.well-known/assetlinks.json.
  • Release tag — the git tag you pin in pubspec.yaml when installing the mobile SDK.

Did this page help you?