Test mode vs live mode for billing

Updated May 22, 2026

Yaplet's billing system runs in one of two Stripe modes: test mode or live mode. This is a server-side configuration β€” you may see a reference to it in the dashboard if you're a developer or workspace owner investigating a billing discrepancy.

What controls the mode

The mode is set by the STRIPE_MODE environment variable on the Yaplet server. It is completely independent of NODE_ENV β€” the server can run in production with STRIPE_MODE=test, or in development with STRIPE_MODE=live. The two settings have no relationship.

What changes between modes

Aspect Test mode Live mode
Stripe API keys used Test secret/publishable keys Live secret/publishable keys
Payments No real money moves Real charges to real cards
Customer ID column test_stripe_customer_id stripe_customer_id
Invoices visible in Stripe dashboard Stripe test dashboard only Stripe live dashboard

Why customer IDs differ between modes

Stripe maintains completely separate customer objects in test vs. live environments. A customer created in test mode has a different ID from the same customer in live mode, and the two objects don't interact. Yaplet stores both IDs in separate columns (test_stripe_customer_id and stripe_customer_id) so that switching modes doesn't orphan billing history.

If you're seeing a "customer not found" or billing error after an environment change, the most likely cause is a mode mismatch β€” the server is looking up a live customer ID in the test environment, or vice versa. Contact your Yaplet administrator to verify the STRIPE_MODE setting.

For Yaplet administrators

The production Yaplet instance runs in live mode (STRIPE_MODE=live). Test mode is only used during development and staging. Never switch a production workspace to test mode after it has live billing history β€” Stripe's test and live data are siloed and cannot be merged.

See also: Manage your payment method if you're troubleshooting a payment issue on a live workspace.

Did this article answer your question?