Monetization-first digital product platform for TSHC.
The production checkout routes are designed to use PayPal Orders v2 server-side. Add these encrypted environment variables before enabling live checkout:
PAYPAL_CLIENT_IDPAYPAL_CLIENT_SECRETPAYPAL_MODE=sandboxorlive(defaults tosandboxuntil explicitly changed)
The app should never expose the client secret to the browser. Order creation and capture must remain server-side. If credentials are not present, the Forge falls back to the existing invoice/order-intake flow rather than pretending checkout succeeded.
Pricing -> order intake -> PayPal checkout or invoice -> payment confirmation -> entitlement activation -> member access.
Owner-only paid-order activation remains available for invoice/manual-payment workflows. Automatic entitlement activation should occur only after a verified PayPal capture.