Ledger Copilot
Sign in

Ledger Copilot · Operations

Deployment runbook.

From prototype to a live, durable deployment. Every integration is a wired adapter that activates with credentials — deployment is configuration, not code. Check /status any time to see what's live.

1
Durable storage (Postgres)

Create a Postgres DB (Vercel Postgres, Neon, or Supabase), set DATABASE_URL in Vercel → Settings → Environment Variables, and redeploy. The documents table auto-creates on first connect. /status will show Postgres (durable).

2
Server-verified auth

Today the user scope is client-supplied (fine for one operator). Before onboarding multiple tenants, add an auth provider (Auth.js, Clerk, Supabase Auth) and derive the store tenant from the verified session in /api/store/[collection]. Every store already routes through that one place.

3
Connect payments

Set STRIPE_SECRET_KEY to collect cards online; add the webhook at /api/webhooks/stripe and copy its secret to STRIPE_WEBHOOK_SECRET so paid checkouts auto-update invoices.

4
Flip on the rest

Onboard TaxBandits (e-file), Plaid (bank feeds), QuickBooks (sync), Anthropic (AI) as needed — each independent. After setting vars in Vercel, redeploy and confirm on /status.

5
Regulated credentials

Off-platform applications with lead time: IRS TCC + SSA BSO (or a TaxBandits onboarding) and Form 8655 + EFTPS for payroll-tax e-file; a verified Stripe account; and for PHAs, the HUD/REAC FASS-PH path (audited FDS with an IPA "Agree", due 9 months after fiscal year-end). The app already builds + validates these artifacts.

Activation seams

Set in Vercel → Project → Settings → Environment Variables, then redeploy.

CapabilityEnv varsWhereEffect
Online paymentsSTRIPE_SECRET_KEY, STRIPE_WEBHOOK_SECRETStripe DashboardHosted checkout links on invoices; webhook auto-marks paid. Start with sk_test_…
Payroll-tax e-fileTAXBANDITS_CLIENT_ID/_SECRET/_USER_TOKEN, TAXBANDITS_SANDBOX=falseTaxBandits (holds the IRS TCC)941/940/W-2/1099 transmit to IRS/SSA; dry-run otherwise.
Bank feedsPLAID_CLIENT_ID, PLAID_SECRET, PLAID_ENVIRONMENTPlaid DashboardLive transaction pulls for categorization + reconciliation.
QuickBooks syncQBO_CLIENT_ID/_SECRET, QBO_ENVIRONMENT, QBO_REDIRECT_URIIntuit DeveloperOAuth sync with QuickBooks Online.
AI copilotANTHROPIC_API_KEY, ANTHROPIC_MODELAnthropic ConsoleLLM categorization, Q&A, receipt vision (heuristics otherwise).
Full details, including the local-dev commands and the in-repo DEPLOYMENT.md, live in the repository. Verify any deploy with GET /api/health (machine-readable) or /status (rendered).
System status →