Swift Pivot
  • Solutions
  • Pricing
Sign inRequest access

Security

Tenant isolation the application cannot accidentally bypass

Multi-tenant products usually keep customers apart with a where-clause and good intentions. Swift Pivot puts the boundary in the database itself, so a mistake in application code produces an empty result rather than someone else’s contacts.
Request access Who processes data

Defence in depth

Four layers, and the innermost one is not code we wrote

Each would have to fail before data crossed an agency boundary. They are listed outermost first.
  1. Layer 1

    Request

    Organization context comes from the session, never the request

    There is no organization identifier in a URL or form field that could be swapped for someone else's. The active organization is resolved from the signed-in session and re-validated against that user's memberships on every request.

  2. Layer 2

    Query

    Application queries filter by organization

    Every read and write is scoped explicitly. This is the layer that would be doing the work in most applications — here it is the second line, not the only one.

  3. Layer 3

    Database

    Row-level security policies decide what is visible

    Requests run against the database as a restricted role carrying the caller's identity, so policies actually apply. A query that forgot its filter returns nothing it should not see, because the database refuses rather than trusting the application.

  4. Layer 4

    Schema

    Isolation ships with the table, not after it

    Every tenant table carries a non-null organization column and its access policy in the same database migration that creates it. A table without a policy does not reach production.

Proven, not asserted

Cross-tenant isolation is covered by an automated test suite that creates real accounts in two separate organizations and attempts to read across the boundary. It runs against the real policies, and it has to pass before any release ships.

Practices

The specifics, without the buzzwords

Everything below is a description of how the system is built today, not an aspiration.

Credentials encrypted at rest

Third-party API keys an agency stores with us are sealed with authenticated encryption before they touch the database. A key that cannot be decrypted refuses to be used rather than silently falling back to a shared one.

Invitations cannot be replayed

Invite links carry a high-entropy token, and only its hash is stored. Each is bound to the invited email address, expires in seven days, and works exactly once.

Webhooks verify their sender

Inbound webhooks are rejected unless the payload signature checks out. An endpoint that writes contacts without verifying its caller is an open door into your database.

Background jobs fail closed

Scheduled work authenticates with a shared secret. With no secret configured, the endpoint rejects everyone — including its own scheduler. Broken and loud beats open and quiet.

Consent evidence is append-only

The permission to update or delete a consent record does not exist for anyone in the application. Not disabled in the interface — absent from the database.

Roles enforced on the server

Owner, admin and member checks run server-side on every action. Hiding a button is a courtesy; the check behind it is the control.

Authentication we did not invent

Sign-in, password hashing, session tokens and optional Google sign-in are handled by a managed authentication provider. Rolling our own would be the riskiest code in the product.

Encrypted in transit

All traffic to the application and between the application and its providers runs over TLS. Uploaded media is stored under unguessable paths scoped to your organization.

Deletion actually cascades

Deleting a contact removes its events and consent records with it, so a right-to-erasure request does not leave orphaned evidence behind.

Not yet

What we do not claim

Security pages usually list only strengths, which makes them useless for deciding anything. Here is the other half, so you can weigh it properly.

Ask us anyway

If your agency needs something on this list to sign, tell us. Knowing what buyers actually require is how it gets prioritised.

  • SOC 2 or ISO 27001 certification

    Not held. The controls described above are real; the third-party audit attesting to them is not something we have paid for yet.

  • HIPAA business associate agreement

    Not offered for this product. It is a marketing system and our terms ask you to keep clinical data out of it.

  • Independent penetration test report

    Not commissioned yet.

  • Contractual uptime guarantee

    Not included by default. It can be negotiated as part of your agreement.

  • Customer-managed encryption keys

    Not supported.

Data processors

Who else touches your data

Currently active subprocessors. The full list, including the ones that go live with future features, is kept as its own page.
Full list

Vercel Inc.

Application hosting and content delivery

United States

Supabase, Inc.

Database, authentication and file storage

United States

Blotato

Social media publishing to connected accounts

United States

cron-job.org

Scheduled task trigger (carries no customer data)

Germany

Amazon Web Services (SES)

Bulk email delivery

United States

Twilio Inc.

SMS delivery and carrier registration (A2P 10DLC and toll-free verification)

United States

Report something, or ask something

If you believe you have found a vulnerability, contact us directly and we will respond. Please do not test against another agency's data.
Contact usRead the privacy policy

Questions first? contact@swift-pivot.com

Swift Pivot

One workspace for home care agencies: capture leads, publish to every social channel, and run compliant bulk email and SMS campaigns.

contact@swift-pivot.com

Platform

  • Platform overview
  • Social publishing
  • Lead capture & contacts
  • Email & SMS campaigns
  • AI content studio

Company

  • About
  • Solutions
  • Pricing
  • FAQ
  • Contact

Trust

  • Compliance
  • Security
  • Subprocessors
  • Acceptable use

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Notice

© 2026 Swift Pivot

Operated by SWIFT-PIVOT LLC (EIN 42-4932893), 1507 Central Avenue, Union City, NJ 07087.

Publishes to Facebook, Instagram, LinkedIn, TikTok and X. Not affiliated with any of them.