SAVI

SERVICES USED

Flex Rental Solutions

Lasso

QuickBooks Online

MongoDB

About

SAVI

SAVI is a rental and events company whose operation runs across three platforms: Flex Rental Solutions for projects, inventory, and financials; Lasso for crew scheduling and events; and QuickBooks Online for accounting. Each tool does its job well. The problem was that their data had no shared home.

The Challenge

Three systems, no single source of truth

SAVI’s business data lived in three separate platforms with no way to query across them. Piecing together project financials, crew assignments, and inventory status for a single job meant logging into each system and joining the picture by hand.

The gaps compounded from there. Warehouse teams had no consolidated view of quantities across locations or serial-unit history; checking stock meant paging through Flex Rental screen by screen. Quotes, invoices, purchase orders, and expense sheets were only visible inside Flex Rental, so reporting required manual exports. Flex Rental produced a nightly database backup, but nothing consumed it. QuickBooks pulls broke whenever OAuth tokens expired. And with a hard budget of 2,000 API requests per hour, bulk pulls would silently hit rate limits and leave incomplete data with no visibility into what was missed.

What SAVI needed was a data layer: one warehouse where everything lands, stays current, and can finally be queried together.

The Solution

One pipeline feeding one warehouse

Clouver built SAVI an automated business intelligence pipeline on AWS that continuously ingests all three systems into a unified MongoDB data warehouse. Every pipeline is serverless (Lambda, SQS, EventBridge, and ECS Fargate, deployed with CDK) and designed around each source’s real constraints: rate-limit budgets, token lifecycles, and backup windows.

  • Flex Rental pipelines: daily ingestion of inventory models, quantities per location, serial-unit tracking, and scan logs, plus a daily contacts sync, wave-dispatched on dedicated API keys to stay inside the 2,000-requests-per-hour budget

  • On-demand REST APIs: three API Gateway endpoints that queue a full refresh for a project, inventory model, or warehouse scan the moment an internal tool asks, instead of waiting for the next scheduled run

  • Nightly backup-restore automation: each night the latest Flex Rental backup streams to S3 and restores to RDS on a Fargate task; post-restore jobs diff recently changed records and re-enrich them, keeping MongoDB aligned with the authoritative backup

  • Lasso ingestion: 33 endpoints (crew, events, schedules, clients, venues, positions, rate cards, and more) every 4 hours, with automatic pagination and incremental filtering

  • Crew hours via Gmail: a daily poller reads hour-entry emails, stores attachments in S3, and parses them straight into MongoDB

  • QuickBooks Online: hourly sync of 13 entity types plus a daily Profit & Loss backfill, with OAuth tokens rotated automatically in Secrets Manager so the pipeline never breaks on expired credentials

Before:

  • Data locked in three systems with no cross-system queries

  • Manual logins to piece together financials, crew, and inventory for one job

  • Nightly Flex Rental backups sat unused

  • QuickBooks pulls broke whenever OAuth tokens expired

  • API rate limits caused silent data gaps

After:

  • All operational data unified in MongoDB, queryable across systems

  • Automated ingestion around the clock, with on-demand refresh via API

  • Backup download, RDS restore, and differential sync every night

  • OAuth tokens rotate automatically; no manual intervention, no downtime

  • Wave-based dispatch and monitoring keep every pull inside budget

The Results

One data layer for the whole operation

SAVI’s operations, finance, and warehouse teams now work from a single, continuously updated data layer covering projects, inventory, crew, and accounting. Nobody logs into three systems to answer one question; the answer is already in the warehouse.

The pipeline also holds itself together: schedules fire around the clock, tokens rotate on their own, and every pull stays inside each API’s budget with monitoring on error rates and queue depths. The core system is live in production today.

The Conclusion

Three platforms keep doing what they do best; SAVI just stopped being the integration layer between them. One pipeline now feeds one warehouse, and reporting and decision-making run on data that keeps itself current.