Warrant works off-chain first (mandates, Cedar rules, Ed25519 receipts). Optionally, hashes and receipt batches are anchored on-chain for long-term audit. You do not need to understand smart contracts to use Warrant — this page is for ops and auditors.

Supported chains

Configure per app in KYI Framework → Configuration: Base mainnet is not enabled yet.

What gets written on-chain

Full mandate rules and PII stay off-chain in Postgres. Only hashes go on-chain.

Shared contract addresses

Same CREATE2 addresses on Amoy and Base Sepolia:

Gas credits

On-chain register and batch publish use Abstraxn’s relayer. Cost is deducted from your Paymaster gas credits (USD), same pool as Gas Sponsorship. If on-chain status stays pending in the dashboard:
  1. Check gas credit balance
  2. Wait for the batch worker (receipts batch every few minutes)
  3. Confirm the app receipt chain matches where contracts are deployed

Dashboard indicators

On All Mandates:
  • Green on-chain dot — mandate registered or receipt batch confirmed
  • Explorer link — view transaction on Base Sepolia or Amoy explorer
On Decisions modal — same for receipt batch txHash.

Receipt batching (simple)

  1. Many check() calls → signed receipts in database
  2. Worker groups receipts into a Merkle tree
  3. One transaction publishes the root to ReceiptLog
  4. Each receipt gets proof, batchId, txHash
Auditors verify: signature → Merkle proof → on-chain root. Use @abstraxn/warrant-verifier for offline Ed25519 checks and optional RPC helpers — see Verify receipts.

Next steps