Client Login
Custom Software & Platform Engineering

We Build the Software
Your Operations Run On

GG Consulting designs, builds, and operates custom platforms for businesses that have outgrown spreadsheets and stitched-together SaaS. Field operations, billing reconciliation, ERP integrations, subscription products, and the mobile apps that go with them.

Built for operators across
LOGISTICS
FIELD SERVICES
FOOD & WHOLESALE
NONPROFIT
B2C SAAS

What We Build

Every engagement starts with the actual workflow. We replace the workflow with software you own.

Custom Web Platforms & CRMs

Multi-tenant operations platforms that replace spreadsheets, email threads, and a half-configured CRM.

  • Lead → estimate → schedule → pay → accounting
  • Role-based access, audit trails, multi-org tenancy
  • Customer-facing portals with tokenized access

Billing & Reconciliation Automation

Ingest carrier or vendor data, route it through configurable rules, apply markup and commissions, export client-ready reports.

  • CSV / API ingest with row-level audit
  • Rule engines that replace fragile Excel formulas
  • Markup, commission, and tiered pricing logic

ERP & API Integrations

We talk to the systems your business already depends on so your team stops re-keying data.

  • QuickBooks, Food Connex, OpenPhone, CallRail
  • UPS, FedEx, EasyPost, Stripe
  • Scheduled syncs, webhooks, and discrepancy alerts

Mobile Apps (iOS & Android)

React Native apps for field teams and consumers, with native modules where it matters.

  • GPS clock-in, offline-safe forms, push notifications
  • Subscriptions via RevenueCat / Stripe
  • Native iOS widgets and background sync

Payments & Subscriptions

Stripe-powered checkout, trials, dunning, and creator/affiliate billing — wired into your data model, not just bolted on.

  • Tiered plans, trials, promo eligibility rules
  • Webhooks with full audit logging
  • Creator marketplaces with Discord / role sync

Cloud Infrastructure & DevOps

AWS, Docker, and CI you can actually understand — owned by you, not locked behind an agency invoice.

  • EC2, RDS / Aurora, Lambda, API Gateway
  • Nginx / php-fpm, Docker Compose, systemd workers
  • Migrations, monitoring, backup automation

Selected Work

Seven shipped systems across logistics, field services, food wholesale, sports SaaS, and nonprofit. Client and product names withheld; specifics on request.

Field Service CRM

Operations Platform for a Multi-Brand Home Services Franchise

Problem. Lead capture lived in Google Sheets, estimates in email PDFs, schedules in Google Calendar, payments in Stripe, payroll in spreadsheets, and accounting in QuickBooks. Franchisees couldn't see royalty totals without a manual export each month.

Solution. A multi-tenant operations platform that runs the full lead → estimate → schedule → field crew → payment → QuickBooks lifecycle. Good/Better/Best estimates with online approval and payment, a customer-facing portal, GPS clock-in via a React Native field app, SMS automation through OpenPhone, and franchise royalty reporting baked into the data model.

  • Kanban lead board with owner filters and territory routing
  • Tiered estimates, contract signing, down payments, ACH/card
  • One-way and two-way QuickBooks sync (customers, invoices, payments)
  • Field app with timesheets, performance pay, expense logging
  • Royalty invoicing for corporate, segmented dashboards per partner
PHP 8 Aurora MySQL AWS Lambda React Native Stripe QuickBooks OpenPhone
Billing Automation

Carrier Billing Reconciliation for a Logistics Brokerage

Problem. A weekly Excel workbook full of nested FILTER() formulas split UPS, FedEx, and DHL exports across clients, applied markup, and computed commissions. One bad paste broke a Monday morning.

Solution. A rule-driven PHP app that ingests carrier CSVs, auto-routes each shipment to a customer billing bucket via an AND/OR identifier engine, applies markup multipliers and adders at import, computes commissions at read time, and exports per-client XLSX. New customers and accounts are added in the browser — no code changes.

  • 3-layer billing model: customers → tabs → identifier rules
  • Triage queue for unmapped rows with one-click rule creation
  • EFR dashboards with KPI strips and commission ladder
  • Multi-tab XLSX export, one sheet per customer bucket
PHP 8 MariaDB PhpSpreadsheet Apache EC2
Claims Portal

Shipping Claims Operations Portal for a Freight Broker

Problem. Claims were spread across email threads, spreadsheets, and the UPS portal. Staff re-keyed UPS batch fields by hand and the daily UPS payment CSV was reconciled manually against internal records.

Solution. A self-service portal where shipper customers submit UPS-aligned claims, staff triage and file them, and the daily UPS CSV is parsed and matched by claim and tracking number. Customers respond to staff requests via tokenized email links without ever logging in. Unmatched rows fall into a reconciliation queue.

  • Role-based portal (admin / staff / customer) with CSRF and bcrypt
  • Tokenized customer follow-up emails — no portal account needed
  • Automated UPS CSV reconciliation with unmatched queue
  • Claim payment history and staff action workflow
PHP 8 MySQL 8 Apache Docker
Subscription SaaS

Sports Analytics Subscription Platform with Creator Marketplace

Problem. Bettors had no single place to compare prop lines across sportsbooks with historical hit rates, and independent creators had no infrastructure to monetize their picks beyond Discord/Telegram.

Solution. A multi-sport analytics SaaS with prop research tools, model-driven shortlists, public track records, and AI-assisted game-day chat. A creator marketplace lets independent handicappers sell their own subscriptions, with Stripe billing and automated Discord role sync. Mobile app and iOS home-screen widget for live games.

  • Tier-gated dashboards (MLB / NFL / NBA / UFC / All Sports)
  • Stripe subscriptions, trials, referrals, promo eligibility
  • Creator marketplace with Discord bot for role provisioning
  • React Native app with native iOS widget
  • AI chat with usage limits and game-day context
PHP 8 MySQL 8 Stripe React Native RevenueCat Node.js discord.js
Nonprofit Site

Memorial Foundation Website with Programs & Donations

Problem. A new 501(c)(3) was running scholarship applications through Google Forms, donations through a generic checkout link, and tournament registration over email. There was no single branded presence to tell the story.

Solution. A fast, brand-aligned Next.js site with the foundation's story and mission, structured scholarship and family-assistance intake (including PDF uploads), Stripe-powered donations, and an annual golf tournament page with gallery and registration link. Form submissions are stored server-side and emailed to staff.

  • Mobile-responsive program and story pages
  • PDF essay/resume upload with email notification
  • Stripe donation CTAs and tournament registration
  • Docker deploy to EC2 with standalone Next.js output
Next.js 14 TypeScript Tailwind CSS Nodemailer Stripe Docker
ERP Add-On Platform

Warehouse & Pricing Operations Platform for a Food Wholesaler

Problem. Their ERP was the system of record but it had no way to reconcile physical counts against system inventory and production usage, no native price-sheet builder, and AR aging meant exporting CSVs and pivoting in Excel.

Solution. A Next.js operations platform that syncs the ERP five times a day, applies a domain-specific discrepancy formula ({onHand} − {physicalCount} − {productionQuantity}), and exposes warehouse-friendly views for counts, locations, notes, and history. Tied-in price sheet builder generates branded PDFs from live inventory, and a Food Connex portal surfaces AR aging, orders, and inventory valuation.

  • Scheduled ERP sync (categories, items, POs, work orders)
  • Real-time discrepancy detection per warehouse code
  • Price sheet editor with live HTML preview + React PDF
  • AR aging dashboard (0-7, 8-14, 15-21, 22-28, 28+) with salesperson filter
Next.js 16 TypeScript PostgreSQL Prisma NextAuth React PDF
Carrier Rate Tooling

Multi-Carrier Rate Comparison Tool (this product)

Problem. Pulling carrier rates one quote at a time through carrier portals doesn't scale. Comparing UPS and FedEx across a few thousand shipments was a multi-day spreadsheet exercise.

Solution. A login-gated PHP tool that takes a CSV of shipments, dispatches parallel API calls to UPS and FedEx through a long-running worker, and shows live progress with cancel and retry. Plus single-shipment quoting and a weight-by-zone rate card generator that fires ~350 parallel calls per run.

  • CSV batch upload with template, validation, and export
  • Parallel rate fetching with token caches per carrier
  • Live progress with auto-refresh, cancel, retry, unstick
  • Single quote and weight × zone rate card with CSV export
PHP 8 MariaDB UPS API FedEx API systemd worker Nginx

How We Work

Short cycles, working software early, and a deploy story you can run yourself.

1

Discovery

Sit with the people doing the work, map the actual workflow, and identify what to keep, what to automate, and what to throw out.

2

Design

Data model first, then the interactions that operate on it. Blueprints and schema are documented before the build starts.

3

Build

Short iterations with working software each cycle. Migrations, tests, and the deploy script are part of the first commit.

4

Operate

Production handoff includes infra, monitoring, and runbooks. We stay on as the on-call partner for as long as it's useful.

Got a workflow that's outgrown spreadsheets?

Send us a couple of paragraphs about it. If it's a fit, we'll come back with a plan; if it's not, we'll point you at someone who's better suited.

contact@gg.consulting