P
Built for Prepwell
Demoing on Harbour & Vale Accountants's ledger…
Schedule a demo
Prepwell · Harbour & Vale Accountants · clients

Three clients, three ledgers, one integration

Harbour & Vale Accountants books for dozens of SMEs, and they don't share a ledger. Each client company becomes its own Vault consumer; the bookkeeper connects that client's ledger, and any webshop, once.

Xero logo
Veldkamp Studio BVNL · EUR
Brand & web design studio · books in Xero
consumer_id: hv-veldkamp-studio · your DB: HV-0142, Marit de Ruiter
no consumer yet
Exact Online logo
Brugwater Bakkerij BVNL · EUR
Artisan bakery, two shops · books in Exact Online
consumer_id: hv-brugwater-bakkerij · your DB: HV-0187, Marit de Ruiter
no consumer yet
QuickBooks Online logo
Tiller & Tide LtdGB · GBP
Homeware webshop · books in QuickBooks Online · sells on Shopify
consumer_id: hv-tiller-and-tide · your DB: HV-0213, Sam Okafor
Shopify logono consumer yet

Same firm, same code path: Xero, Exact Online, QuickBooks Online differ only in x-apideck-consumer-id and x-apideck-service-id. A client with several legal entities on separate ledgers gets one consumer per entity.

0 / 3 consumers
A consumer per client company, not one for the firm: every call below is scoped by x-apideck-consumer-id, so one client's ledger can never receive another client's entries. Map your internal client id to the consumer id in your own database.
Vault consumers reference
POSTPOST /vault/consumers
Headers
Content-Type:application/json
x-apideck-app-id:demo-app-id
Authorization:Bearer sk_live_•••••
Request body
{
  "consumer_id": "hv-veldkamp-studio",
  "metadata": {
    "account_name": "Veldkamp Studio BV",
    "user_name": "Harbour & Vale bookkeeping",
    "email": "bookkeeping@harbourvale.example"
  }
}
POSTPOST /vault/sessions
Headers
Content-Type:application/json
x-apideck-app-id:demo-app-id
x-apideck-consumer-id:hv-veldkamp-studio
x-apideck-service-id:xero
Request body
{
  "consumer_metadata": {
    "account_name": "Veldkamp Studio BV",
    "user_name": "Harbour & Vale bookkeeping",
    "email": "bookkeeping@harbourvale.example"
  },
  "redirect_uri": "https://app.prepwell.example/clients/vault/callback",
  "settings": {
    "unified_apis": [
      "accounting"
    ]
  }
}

In Live mode the session launches the real @apideck/vault-js widget; in Mock mode a stand-in with the same UX. Tiller & Tide connects Shopify through the same consumer as its ledger.