Direct customer web access plane
Find a file
2026-09-11 19:26:57 -04:00
src Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00
test Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00
NATS.md Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00
package-lock.json Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00
package.json Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00
README.md Initial import of verae-access-web from zapier monorepo 2026-09-11 19:26:57 -04:00

verae-access-web

Direct web access plane. Customer browsers hit this process, not Zapier and not the NATS port.

Forgejo: https://git.georgelambert.org/marchon/verae-access-web

Every NATS hop is verae.access.web.*verae.access.authz.check → internal verae.billing.statement.get (reload only, not CS credits).

Route Job
GET /health { plane: "web" }
GET /portal/ Customer portal (static)
* /portal/api/* Proxy to loopback zappier-edge
GET /statement/:id Authz then statement
POST /reload Authz then balance.adjust kind=reload

Port :3021. Customer portal (public door): http://0.0.0.0:3021/portal/ — static from packages/zappier/portal, /portal/api proxied to loopback zappier-edge. Edge itself stays on 127.0.0.1:3000.