Cookies

What cookies Recoupex sets, and why

The session, locale, and Stripe Checkout cookies that run on Recoupex — and the advertising/analytics cookies we deliberately do not set on either the marketing or app surface.

Effective date: 2026-08-16

1 — Cookies at a glance

The short version

Recoupex uses only the cookies required to keep you signed in, remember your language preference, and protect against abuse. We do not run advertising cookies, no cross-site analytics tags, and nothing that follows you around the web after you leave Recoupex.

The rest of this page lists each cookie by category — strictly necessary, functional, and payments — and notes what we deliberately do not set. If you are looking for what to clear in your browser to sign out, see section 7.

2 — Strictly necessary — auth session

Signing you in and keeping you signed in

Sign-in runs through our auth provider (better-auth, installed and configured via src/lib/auth-config.ts). On successful sign-in, the provider issues an HttpOnly session cookie on the Recoupex domain. That cookie scopes every /api read and write to the signed-in user — without it, the app cannot tell who is making a request, and would refuse every protected action.

The session cookie is set on first sign-in, refreshed while you remain active inside the product, and cleared on sign-out. It is marked HttpOnly (never readable from page scripts), scoped to the product domain, and is the only mechanism that links a request to a Recoupex account.

3 — Strictly necessary — CSRF / abuse protection

Same-origin, never exposed to page scripts

The auth stack also issues a small companion cookie set on the same origin as the session cookie. It exists to make sure state-changing requests (an upload, a delete, a payment action) actually originated from Recoupex and not from a page running on another site that tried to post to us.

Like the session cookie, it is HttpOnly and never visible from page scripts. It is not used for tracking — it cannot tell us anything about who you are or what pages you visit; it only constrains the origin of state-changing requests.

4 — Functional — locale / language preference

Remembering the language you chose

If the internationalization module ships later, a single cookie remembers the language you picked in the language switcher. The cookie stores a short locale code (e.g. en-US) and is used only to render the UI in that language on your next visit.

The locale cookie is purely functional. It is not used for analytics, it is not shared with any third party, and clearing it only resets the language back to the default — it does not sign you out.

5 — Payments — Stripe Checkout cookies

What Stripe sets on its own surface

When you start a checkout, Recoupex redirects you to checkout.stripe.com (or its successor domain). Stripe sets its own cookies on that domain to run the checkout: fraud-prevention signals, an anti-CSRF token, and the session id for the checkout itself. Card details are entered on Stripe’s surface and never reach Recoupex.

Those cookies only run on Stripe’s domain, not on the Recoupex domain, and they are governed by Stripe’s cookie and privacy policy, not this one. Once the checkout completes and you return to Recoupex, the Stripe-side cookies persist on Stripe’s domain the same way they would for any checkout initiated through Stripe.

6 — What we deliberately do NOT set

Cookies and trackers that do not run here

  • Google Analytics. No GA tracking, no _ga / _gid cookies, no Google Tag Manager.
  • Meta / Facebook pixels. No retargeting pixel, no conversion API calls, no Facebook-domain cookies set from this product.
  • Other retargeting tags. No LinkedIn, X (Twitter), TikTok, or other advertising-platform tags.
  • Third-party session replay. No FullStory, Hotjar, LogRocket, or comparable tools that record user sessions.
  • Cross-site identifiers. Nothing on Recoupex fingerprints you across other sites; the only persistent identifier that travels is your signed-in session, and only on the Recoupex domain.

7 — Managing cookies

Browser-level controls, and the consequences of blocking

All modern browsers let you block, delete, or selectively permit cookies per site (Chrome: Settings → Privacy and security → Cookies; Firefox: Preferences → Privacy & Security → Cookies; Safari: Preferences → Privacy). Recoupex does not store anything outside cookies that you would need to clear — clearing your browser’sRecoupex-domain cookies fully signs you out and resets your preferences.

Blocking the strictly-necessary cookies (the auth session in section 2 and the same-origin protection cookie in section 3) will sign you out and prevent you from starting a checkout, because Recoupex cannot recognise your requests without them. Blocking the functional locale cookie (section 4) only resets your language back to the default — it does not affect account access.

8 — Changes to this policy

How updates ship

We update the effective date at the top of this page whenever the policy changes. Material changes are also announced in-product and on the Recoupex blog, and you will get a reasonable heads-up before they take effect.

Non-material changes (typos, clarifications, formatting) update silently with the effective date bumped at the top.

9 — Contact

Questions about cookies and tracking

If a cookie is showing up on the Recoupex domain that you cannot reconcile with this page, or you want to know more about any of the categories above, write to recoupex-ni4aa2@polsia.app. We reply from the same address and aim to acknowledge within two business days.

This policy is offered in English. If translations are added later, the English version here stays the source of truth.