What you will run locally
After setup, open:
- http://localhost:3000 — web app
- http://localhost:3001 — docs (if you start them)
- http://localhost:9001 — MinIO console (
payoes/payoessecret)
Prerequisites
Install these before you start:Required for the core app
Required for the core app
- Node.js 20+ and npm
- Git
- Docker Desktop (or Docker Engine + Compose) for PostgreSQL and MinIO
Additional features
Additional features
- Google OAuth credentials — sign in with Google
- SMTP settings — send team invitation and verification emails
- Persona API keys — identity verification for production mode (KYC setup)
Stellar / Soroban (payments)
Stellar / Soroban (payments)
- Stellar CLI (
stellar) and Rust (cargo) for contract deploy - See Soroban escrow setup
Repository layout
Recommended path
1
Getting started
Follow Getting started to install dependencies, start Docker, configure
.env.local, run migrations, and sign in.2
Soroban escrow
Deploy the contract before creating payments. See Soroban escrow setup.
3
Environment variables
Use Environment variables as a reference when you enable OAuth, SMTP, or Persona KYC.
4
KYC verification
Needed to test production mode — see KYC verification.
5
Webhook retry worker
For self-hosted production with low traffic — see Webhook retry worker.
Sandbox payments and checkout require a deployed Soroban escrow contract. Persona is only needed for production mode.
