Skip to content

Test mode & going live

A test key works in the sandbox. On its first request your organisation gets a sandbox account, with its own account number and wallets, at a sandbox bank that behaves like the real one: the same endpoints, statuses and webhooks, with no real money and no fees.

You play the outside world with the simulation endpoints: payers paying account numbers, cards approved or declined, mandates authorised and debited, transfers arriving from other banks. Identity checks use test identities.

A few things are different in the sandbox:

  • CatholicPay members are not in the sandbox. Subscriptions, subscription payments, giving-page payments and payer checks return fixed sample data; a wallet payment request is paid at once.
  • Withdrawals pay from your real account, so they need a live key.
  • Statements need a live key.

Webhooks from the sandbox carry "mode": "TEST" and go to your test webhook URL.

  1. Your organisation is on CatholicPay and its account is open: it registered in the portal and passed its company checks.

  2. Check you are ready, in the portal under Developers → Going live. Required:

    Check Meaning
    ACCOUNT_OPEN The bank opened your account
    NOT_FROZEN Your account is not frozen
    SIGNATORIES Your verifiers, approvers and mandate are set
    SETTLEMENT_WALLET Your main wallet, where payments settle, is active
    API_ON CatholicPay switched the API on for you

    Recommended: TESTED (a test key was used) and LIVE_WEBHOOK (a live webhook URL and secret are set).

  3. CatholicPay switches you live once the required checks pass.

  4. An admin creates a live key (cp_live_…) and you swap it in. Nothing else in your code changes.

Keep your test key: use it to try changes before they reach live.