Skip to content
ERP ⇄ Human resources

Brightpearl to Lever integration — real-time, two-way sync

Keep Brightpearl and Lever in sync without custom scripts. Cut weeks of integration work, eliminate silent data drift, and give your team a single, reliable source of truth.

  • SOC 2 and 6 other compliance frameworks
  • POC with real engineers in minutes

Adopted by fast-scaling companies moving mission-critical data in real time

Case study
Migrated from MuleSoft
Case study
Migrated from Celigo
Migrated from Heroku Connect
Migrated from Matillion
Case study
Migrated from Fivetran
Case study
Migrated from Celigo
Why teams connect Brightpearl and Lever

Sync the workers, org structure, and cost centers that Brightpearl and Lever share in real time, so the people Lever manages stay current in the system that runs finance and operations.

Lever is the system of record for people: who was hired, which department and location they sit in, who they report to, and how they are paid. Brightpearl runs finance and operations, and much of what it does depends on that same information, from booking labor cost to approving an expense report to staffing a project. Where the two are bridged by re-keying or an overnight file, each side spends the day out of step, with new hires missing from the systems they need and leavers still active where they should not be.

Stacksync syncs Inventory and warehouses, Goods-out notes, Invoices and payments, Custom fields in Brightpearl with Users, Stages, Feedback, Interviews in Lever field by field, in real time, and in both directions. You decide which system owns which fields, so the people side stays authoritative for worker data while Brightpearl keeps its own accounting and operational detail, and every change made in one is reflected in the other within seconds instead of at the next batch run.

Common use cases

  • 01 Sync Brightpearl sales orders and fulfillment status with a CRM so sales and support see order state without switching tools.
  • 02 Mirror inventory levels from Brightpearl into a database that feeds availability to storefronts and marketplaces.
  • 03 Two-way sync Opportunities and their Stages between Lever and a Postgres database so recruiting ops and analysts query the pipeline in SQL while recruiters keep working in Lever.
  • 04 Push Postings and Requisitions into an HRIS or warehouse to reconcile approved headcount against open roles.

Common sync patterns

New hires ready to transact in Brightpearl

A new person set up in Lever becomes an employee record in Brightpearl in time to submit expenses, enter time, or approve a purchase, without waiting on manual setup.

One org structure

Departments, cost centers, and locations that both systems reference stay in agreement, so labor cost, approvals, and reporting in Brightpearl roll up to the same structure Lever maintains.

Reporting lines drive approvals

Manager and reporting-hierarchy changes in Lever keep expense and purchase approval chains in Brightpearl pointed at the right people.

What you can sync between Brightpearl and Lever

Representative objects on each side — any object or custom field can map to any target. Schemas are auto-detected; types are converted between the two systems.

Brightpearl objects Lever objects How this pairing syncs
Sales orders Orders from all channels; the central object for fulfillment and revenue syncs. Opportunities The core pipeline record for a candidate applying to a role; replaced the deprecated Candidates endpoint. Created via POST /opportunities and updated (stage, archive, links, tags, sources, files) through the API, and synced two-way with a database or HRIS. Sales orders is specific to Brightpearl and Opportunities to Lever — each maps to any object or custom field on the other side.
Purchase orders Supplier orders synced with procurement or accounting systems. Postings Job posting records with categories, apply URLs, workplace type, and requisition codes. Can be created via POST /postings and read into a warehouse for open-role reporting. Purchase orders is specific to Brightpearl and Postings to Lever — each maps to any object or custom field on the other side.
Contacts Customers and suppliers in one contact model, matched to CRM records by email or reference. Requisitions Headcount/requisition records with custom requisition fields, tied to Postings; read via GET /requisitions and synced to an HRIS to reconcile approved headcount against open roles. Contacts is specific to Brightpearl and Requisitions to Lever — each maps to any object or custom field on the other side.
Inventory and warehouses On-hand and allocated stock by warehouse, read for availability publishing. Offers Offer records attached to an Opportunity with status and offer-form fields; exposed read-only through GET /opportunities/:id/offers, so they sync outbound to an HRIS or onboarding system when a candidate reaches the offer stage. Inventory and warehouses is specific to Brightpearl and Offers to Lever — each maps to any object or custom field on the other side.
Goods-out notes Fulfillment documents that carry picking and shipping status back to order sources. Users Lever team members (recruiters, hiring managers) with configurable roles; can be created via POST /users, deactivated, and reactivated through the API. Goods-out notes is specific to Brightpearl and Users to Lever — each maps to any object or custom field on the other side.
Invoices and payments Financial documents synced to accounting platforms for reconciliation. Stages Pipeline stage definitions that Opportunities move through; read to model funnel state and stage transitions in a database. Invoices and payments is specific to Brightpearl and Stages to Lever — each maps to any object or custom field on the other side.

How changes propagate between Brightpearl and Lever

Each direction of the sync is driven by what the source system can signal and what the destination accepts — detection, delivery, and expected latency below.

Brightpearl Lever Sub-second propagation

DetectionBrightpearl notifies Stacksync of record changes through webhook events. Webhooks for object created/updated events, with resource search polling as a fallback.

DeliveryEach detected change is written to Lever through its API, with automatic retries and rate-limit backoff.

Lever Brightpearl Sub-second propagation

DetectionLever notifies Stacksync of record changes through webhook events. Webhooks for candidate and application lifecycle events (applicationCreated, candidateStageChange, candidateArchiveStateChange, candidateHired,.

DeliveryEach detected change is written to Brightpearl through its API, with automatic retries and rate-limit backoff.

Rate-limit considerations

  • Brightpearl: Requests are throttled per account under Brightpearl's API usage policies; bulk operations should use batch endpoints.
  • Lever: 10 requests/second per API key with a token-bucket burst to ~20/s; POSTs that create candidates/applications are throttled to roughly 2/second. Sustained overage returns 429 with Retry-After. List endpoints are cursor-paginated at up to 100 records per page.
What ships with Brightpearl ⇄ Lever

Connect Brightpearl and Lever for flexible, real-time data sync.

Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Brightpearl–Lever connection.

Real-time

Two-way sync

Changes in Brightpearl or Lever instantly reflect in both systems. No stale data, no manual imports.

No-code + pro-code

Workflow automation

Trigger automated workflows whenever Brightpearl or Lever data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.

At scale

Event queues

Handle millions of events per minute without losing a single Brightpearl or Lever record.

Observability

Monitoring

Track your Brightpearl ⇄ Lever sync health, view errors, and replay failed events in one click.

Trading partners

EDI

Transform legacy EDI complexity into simple database interactions between Brightpearl and Lever.

How the Brightpearl and Lever connectors work

Brightpearl

Integration surface
REST API, organized into services (order, product, contact, warehouse, accounting)
Authentication
OAuth 2.0 (authorization code grant) for current apps; legacy private and public apps authenticate with app reference and account token headers
Change detection
Webhooks for object created/updated events, with resource search polling as a fallback
Capabilities
read · write · webhooks
Rate limits
Requests are throttled per account under Brightpearl's API usage policies; bulk operations should use batch endpoints

Lever

Integration surface
REST Data API (api.lever.co/v1)
Authentication
API key over HTTP Basic auth (key as username, blank password) for internal integrations, or OAuth 2.0 with 1-hour access tokens for partner integrations (auth.lever.co)
Change detection
Webhooks for candidate and application lifecycle events (applicationCreated, candidateStageChange, candidateArchiveStateChange, candidateHired, interview created/updated/deleted), plus incremental polling via created_at and updated_at range filters on Opportunities
Capabilities
read · write · webhooks
Rate limits
10 requests/second per API key with a token-bucket burst to ~20/s; POSTs that create candidates/applications are throttled to roughly 2/second. Sustained overage returns 429 with Retry-After. List endpoints are cursor-paginated at up to 100 records per page.
Lever setup guide
How it works

How to connect Brightpearl to Lever — three steps, no code

Configure and sync within minutes, no code. Whether you sync 50k or 100M+ records, Stacksync handles the queues, infra, and plumbing. Integrations are non-invasive and need zero setup on your systems.

  1. 01

    Connect your apps

    Authenticate Brightpearl and Lever with each platform's native method — OAuth, API keys, or service accounts — plus secure options like SSH tunneling, IP whitelisting, and VPC peering.

    • OAuth 2.0
    • SSH tunnel
    • VPC peering
    Brightpearl connected
    Lever connected
    OAuth 2.0
    SSH tunnel
    SSL certificate
    VPC peering
  2. 02

    Choose tables

    Pick the Brightpearl and Lever objects to sync — Stacksync auto-detects both schemas, including custom fields where the platform exposes them. Sync to existing tables, or let Stacksync create new ones with ideal data types.

    • Standard objects
    • Custom objects
    • Auto-schema
    objects · Brightpearl ⇄ Lever
    Customers 12,480
    Sales Orders 8,213
    Invoices 5,902
    Items 1,344
  3. 03

    Map fields

    Fields map automatically even when names and types differ. Stacksync handles transformation and type casting for you, zero configuration required.

    • Auto-map
    • Type casting
    • Transforms
    Brightpearl Lever
    Company company_name text
    Email email text
    Amount amount numeric
    Created created_at timestamp
FAQ

Brightpearl and Lever integration FAQ

SECURITY

Security teams trust Stacksync

As a data company, we understand the importance of keeping your data secure. Stacksync is built with security best practices to keep your data safe at every layer, and is DPF-certified for US, EU, UK and CH data transfers.

SOC 2 Type II
ISO 27001
HIPAA BAA
GDPR
CCPA
DPF US-EU-UK-CH
→ SECURITY WITH BENEFITS

SSO & SCIM

Let your users access Stacksync from your centralized user management systems. Works with Okta, Azure, Google SSO and more.

Alerts

Immediately get alerted about record syncing issues over email, Slack, PagerDuty and WhatsApp. Resolve issues from a centralized dashboard with retry and revert options.

Secure connection options

Securely connects to your systems with:

Related integrations

Every pair below is a real-time, two-way sync. Search all 507 integrations available for Brightpearl and Lever.

Popular · 5 of 507
Coworkers laughing in front of a laptop in a casual office setting

Your last integration took months.
Your next one takes a prompt.