Security and your data

Shops share the software, not the data.

Your rates, your customers and their files are the most valuable things in your business. This page says plainly how they are kept apart from every other shop on Layers3D, who can reach them, and how you get them back out.

Isolation

Every record belongs to exactly one shop.

Every order, quote, customer, file, message, price setting and integration credential carries the shop it belongs to, and every request is answered only from that shop's records. Asking for another shop's order by its id returns nothing, by design and by automated test.

Scoped by design

One shop per request

The shop is resolved from your login or your public key before any data is read. Routes that take an id check the id belongs to your shop first.

Tested

Isolation is a test, not a promise

The test suite includes tenant-isolation and permission checks that run on every change. A cross-shop read that returns data fails the build.

Neutral start

Nobody's rate card but yours

A new shop starts on neutral pricing defaults. It never sees another shop's rates, materials, customers or history.

Platform values stay platform

Defaults are never disclosed

Where a shop uses the platform's own service instead of connecting its account, it sees only that a default is in use, never the platform's credentials or identifiers.

Sign-in

Two-factor login, new-device checks, and a record of every attempt.

Every account can use an authenticator app, or an emailed code as the fallback. A sign-in from a device the shop has not seen before is challenged with a code sent to the account's address, and the device is remembered afterwards so the owner is not challenged on every rotating home IP. Successful and failed attempts are logged so "is someone trying to get in" has an answer.

  • Time-based one-time codes from any authenticator app; email codes as the fallback
  • New-device verification, on by default per shop, with trusted devices remembered
  • Login events recorded, including attempts against unknown usernames
  • Roles and per-shop permission overrides decide who sees prices, costs and settings
The Users page of a shop with four staff, their roles, active status, and buttons to reset two-factor authentication or deactivate an account.

Who can reach your shop

You, the people you add, and nobody else without a visible, expiring grant.

Support access

Thirty minutes, on the record

When you ask for help, support works through a token that expires in thirty minutes, shows a banner while it is active, and appears in your audit log. There is no standing back door.

Customers

Their order, and only theirs

Quote and tracking links carry a signed, unguessable token for one order. The box QR page shows what is in the box and never shows money.

Files

Behind your login

Uploaded models, slicing profiles and documents are served only to signed-in staff of the shop, or to the customer on their own order page. There are no bare public file links.

Audit log

Who changed what, when

Status moves, price edits, settings changes and support access are recorded per shop and readable by its owner.

Credentials and secrets

Your integration keys are encrypted and never shown back.

Shopify tokens, email API keys, accounting and shipping credentials are stored encrypted per shop. After you save one, the interface shows only that it is set. Payments run through Stripe; Layers3D never stores card numbers.

At rest

Encrypted per shop

Secrets are encrypted before they are stored and decrypted only when the integration runs.

In transit

HTTPS everywhere

The admin, the customer pages, the quote widget and the API are served over HTTPS only.

Outbound

Safe mode and test mode

Email test mode routes every outbound message to your own inbox while you set up. A platform safe mode can block all outbound calls during an incident and reports what it stopped.

Getting your data out

One click, any time, in formats you can open.

Orders, customers, quotes and files export from inside the software without asking anyone. If you leave, your data is kept for ninety days so you can take it with you, then deleted. Hosting runs on Railway with managed PostgreSQL in North America; the data processing agreement lists every company that handles your data and why.

  • CSV export of customers and orders from their pages
  • Files downloadable per order or from the file manager
  • Ninety-day retention after cancellation, then deletion
  • Deletion on request at any time
The Customers page with its Export CSV button alongside the filters.

Questions about any of this?

Ask before you sign up. The answers on this page are the ones we will give in writing.