How we handle billing and your data
This page is maintained by Sea-Esta to answer common questions about how membership payments, account data, and account access work. It describes what the app does today and is not a certification or a legal agreement.
Payments are processed by Stripe
Membership checkout and the billing portal are powered by Stripe. When you start checkout, you're handed off to a Stripe-hosted session — your card number, CVC, and full payment details are entered into Stripe's interface and sent directly to Stripe. Sea-Esta servers never see or store raw card data.
We keep a record of which Stripe customer and subscription belong to your account so we can show your membership status and let you manage your billing. To change a card, download an invoice, or cancel, use the billing portal link from your dashboard — it opens a Stripe-hosted page tied to your account.
Test mode vs. live mode
Sea-Esta enforces that the Stripe environment used by the browser matches the Stripe environment used by our server. If the two ever mismatch (for example, a test-mode key in front of a live-mode server), checkout and billing-portal requests are blocked before any charge can be created, and a banner is shown at the top of the app. This prevents accidental real charges during testing and accidental test charges in production.
What membership data we store
We store the minimum needed to run your account:
- Your email address and authenticated user ID.
- Your Stripe customer ID, subscription ID, current status, and current period end — so we can show whether your membership is active.
- Listings, bookings, and host details you create inside the app.
We do not store card numbers, CVCs, or bank account numbers. Tax IDs, addresses, and invoices that Stripe collects during checkout live in your Stripe customer record and are visible to you through the billing portal.
Access controls on your data
Membership rows are protected by row-level security in our database. Each authenticated user can only read their own membership record; there is no public read access. Server-side functions that read or write billing data require a signed authentication token tied to your account.
Stripe webhooks that update subscription status are verified using a signing secret before any change is applied, so third parties cannot impersonate Stripe to change your membership state.
Subprocessors we rely on
- Stripe — payment processing, hosted checkout, billing portal, invoices, tax.
- Lovable Cloud — database, authentication, and server functions that host the app.
Canceling and deleting your account
You can cancel your membership at any time from the billing portal. Cancellation stops future renewals; access continues until the end of the period you've already paid for. To delete your account and associated data, contact us at the address below and we'll process the request.
Contact
Questions about billing, your data, or a security concern? Reach out at hello@seaesta.app.
Last updated June 2026.