Cache Strategy

Explain PayPress cache behavior for public pages, dynamic state, and transactional endpoints.

Purpose

Explain PayPress cache behavior for public pages, dynamic state, and transactional endpoints.

Overview

PayPress is designed so marketing pages can remain cacheable while checkout creation, webhooks, success pages, campaign state, and sensitive actions remain uncached or server-authoritative.

How It Works

Static payment offers render on pages that may be cached. Dynamic checkout and donation validation happen through launchers. Fundraising metrics and controls hydrate from REST snapshots.

Important Components

  • Cacheable public pages.
  • Checkout launcher endpoints.
  • Donation launcher.
  • No-JavaScript donation route.
  • Success page.
  • Customer portal.
  • Webhook endpoint.
  • REST campaign snapshots.
  • Analytics transients.

Data Flow

Cached page -> dynamic hydration/launcher -> uncached validation -> Stripe Checkout or current campaign state -> webhook updates local data.

Security Considerations

Do not cache webhooks, launcher endpoints, success pages, customer portal pages, protected download routes, or no-JavaScript donation routes. Server validation prevents stale cached HTML from controlling checkout state.

Known Limitations

Hosts and CDNs vary. PayPress can design cache-safe flows, but some environments may still require cache rule review if they cache REST or transactional routes incorrectly.

Related Articles