Skip to main content

Relayer

One key, with KYC_ROLE and RELAYER_ROLE only, submits every backend transaction: setVerified, MON drips, depositFor, repayFor, cancelPending, and users’ ERC-3009 sends and cash-outs.

Relayer health

The relayer pays all gas and drips 0.5 MON per new user, so sign-ups stop when it runs dry. An hourly check opens a GitHub issue, Relayer is low on MON, under 2 MON, and closes it once topped up.

Reconciliation

Every day shortly after midnight UTC, the backend compares the previous day’s credited top-ups and repayments with the indexer’s DailyTopUp totals:

Indexer health

A scheduled check opens Indexer is behind the chain if the hosted indexer falls more than 1,500 blocks behind or stops answering. Check _meta by hand before a demo.

Deploys

The backend runs in Docker on a VPS behind a shared reverse proxy with TLS. Postgres and the API listen on localhost only; Postgres is backed up daily and kept 14 days. A failed image build keeps the old container running, so after a deploy check the code inside the running container, not just /health.