Skip to main content
Security

Your renewal data, kept private.

Resubly tracks contracts for small Finance and Ops teams without monitoring anyone or reaching into their devices. Everything on this page is how the product works today, not a roadmap.

Scoped access

Every workspace sits behind authenticated sessions and role-based membership. Server-side checks run before any organization, billing, or subscription record is returned. Owners control billing; viewers cannot access organization or billing settings.

Encrypted in transit

Data is encrypted in transit with TLS 1.2 or later and stored on Cloudflare (database on D1, files on R2). The database can be restored to any point in the last 30 days. Uploaded files are one copy with no separate backup or version history. Passwords are hashed and sessions are managed by Better Auth.

Private by design

Read-only renewal intelligence. No device agents, no employee surveillance, no data resale, and no advertising trackers inside the app.

What happens to your data

While active

Subscriptions, documents, and renewal history are kept so your audit trail stays complete. Delete any subscription or document yourself, anytime.

When you ask to delete

Organization deletion starts a 30-day grace period. Cancel before the purge begins and your organization data is preserved. Members removed when deletion was scheduled stay inactive, and once the purge has started a cancellation request is refused.

After the grace period

A hard purge deletes contracts, obligations, custom fields, documents and their stored files, activity history, renewal history, staging uploads, feedback with its votes, comments and screenshots, integrations, payment records, invitations, departments, notification records, memberships, and the accounts of users left with no organization. The purge does not erase everything. We keep the subscription record with its status and billing identifiers, offboarding audit events, a deletion notification record that includes the organization name, email event records, webhook delivery records, cancellation survey responses, outstanding signup, waitlist and verification records, and invitations belonging to other organizations. Copies also remain outside our database: your newsletter contact with our email provider, Dodo Payments billing records, Google Analytics events, Discord alert messages, and email send logs.

Who we work with

The complete list of services that touch customer data.

CloudflareHosting, CDN and DNS, application backend, database, file storage, AI gateway for extraction, Turnstile on public forms
Google (Gemini)Reads the contract, zero data retention
ResendAccount and alert email, newsletter list
Dodo PaymentsBilling, merchant of record
DiscordInternal alerts: new sign ups, contact messages, feedback
Google AnalyticsSign up conversion with anonymous ids, marketing pages after consent
Logo.devVendor logos by website domain
SlackRenewal alerts, only when you connect it

Controls in the product

  • Every account must verify its email address before it gets a session or any workspace access.
  • Roles are enforced server-side, down to department level. A department viewer cannot read another department's subscriptions, from the UI or the API.
  • Payment webhooks are verified with HMAC signatures and a replay window before anything is written.
  • Outbound Slack notifications only ever post to https webhook URLs on the providers' own domains; private addresses are rejected.
  • Public forms (contact, waitlist, signup) are rate limited so they cannot be used to spam or scrape.
  • The site ships strict security headers: HSTS with preload, a content security policy, and frame embedding disabled.

On certifications, plainly

Resubly is not SOC 2 certified yet. This page is a plain description of what the product actually does, not a compliance badge. If you have a vendor questionnaire or a security review, email hello@resubly.com and we will answer it directly.