nohold / docs
Internals

Internals

The technical view of nohold's data shapes, webhook surfaces, API contracts, and how we avoid double-anything.

The technical view. nohold's data shapes, webhook surfaces, API contracts, and how we avoid double-anything.

The docs in this section are written for ops or finance teams who want to understand what nohold does under the hood, not for developers integrating against an API (we don't expose one publicly yet).

If you're evaluating nohold for correctness (if Brightpearl times out and Shopify retries the webhook, will we double-write?) this is the section you want.

What's here

  • Shopify webhooks. Every Shopify topic nohold subscribes to and what we do with each.
  • Data model. The four tables that hold per-merchant state, and what each column means.
  • API surface. What's exposed to the dashboard, including the response shape when a plan-gated endpoint denies access.
  • Idempotency. How nohold prevents double-charges, double-sends, double-writes when webhooks retry.

What's NOT here

  • Source code, deployment topology, CI/CD pipelines, infrastructure-as-code; those live in the private repo.
  • Brightpearl-side internals; Brightpearl is the merchant's own ERP, and nohold treats its API as a contract.
  • Shopify-side internals; same.

If you need the source-level detail (security review, custom integration), email hello@nohold.app. We'll set up an NDA'd call.

On this page