Skip to content
PortunaPortunaPortunaDocsTestnet

Going live

  • Live keys and a live API address. Live keys start with ptn_live_ and work only with the mainnet API, whose address we will publish at launch. Your test keys stay on the testnets.
  • Access on request. Your organization’s owner requests live access in the console.
  • A new gas wallet. The live gas wallet is a different address. Fund it on each chain you use.
  • New contracts. Your batcher and delegates on mainnet are new contracts with new addresses: register your hot wallets again, check each delegate with verify-delegate, and sign new authorizations for mainnet.
  • Signing. Your HSM, KMS or MPC signs raw 32-byte digests, your code matches the test vector, and it refuses chain ID 0.
  • Delegate checks. verify-delegate runs before the first authorization for every hot wallet, for example in your onboarding script or CI.
  • Idempotency. Every sweep and revocation carries an external_id, and your retries reuse it. See Idempotency.
  • Webhooks. Your receiver verifies signatures on the raw body, drops duplicate event ids and does not rely on the order of events. See Webhooks.
  • Gas wallet. You know how fast you spend gas, keep a few days of it, and have a low balance alert set.
  • Amounts. Amounts are integers in the token’s smallest units. On mainnet, USDT and USDC have 6 decimals on Ethereum and 18 on BSC: the same 1 USDT is 1000000 on one chain and 1000000000000000000 on the other.
  • Native coin deposits. If your users send ETH or BNB from exchanges, read Deposits from exchanges before you delegate those addresses.
  • Your settings. Decide whether to keep one unit on deposit addresses: see First and repeat sweeps.

Ask us at support@portuna.io, or sales@portuna.io about terms.