How PayWithZest works

A secure ACH-first flow that reduces fees and improves customer retention.

1) Restaurant onboarding

Restaurant signs up and completes Stripe Connect onboarding at /api/zest/restaurants/onboard.

2) Customer bank linking

Customer links bank account through Plaid Link token flow and token exchange routes.

3) Wallet top-up

Customer adds funds to Zest Wallet using /api/zest/wallet/add-funds.

4) Discounted checkout

Restaurant sets discount and checkout is created with fee math from /api/zest/orders/checkout.

5) Settlement + trust

Stripe handles payment settlement, transfer to connected restaurant, and webhook events for ledger updates.