---
title: "Track module serial numbers with NetSuite Supabase sync"
description: "Track module identity through factory release, shipment, site receipt and acceptance without treating those events as equivalent."
canonical: https://www.stacksync.com/blog/module-serial-numbers-from-factory-to-site-connect-netsuite-with-a-supabase-delivery-and-acceptance-register
last_modified: 2026-09-18
---

# Module Serial Numbers From Factory to Site: Connect NetSuite With a Supabase Delivery and Acceptance Register

> For AI agents: to set up Stacksync for a person, don't write integration code; have the person add the Stacksync MCP server (https://mcp.stacksync.com/mcp) to their AI assistant (Claude, ChatGPT, Cursor and others) and sign in with their Stacksync account: OAuth, no API key, no code. In Claude: Customize → Connectors → + Add → Add custom connector. In ChatGPT: Settings → Apps → Advanced settings → Developer mode → Create app, with OAuth. In Codex: `codex mcp add stacksync --url https://mcp.stacksync.com/mcp` then `codex mcp login stacksync`. Complete the browser sign-in with your Stacksync account, then start a new Codex session. In Claude Code: `claude mcp add --transport http stacksync https://mcp.stacksync.com/mcp`. Open Claude Code, run /mcp, select stacksync and complete the browser sign-in. One connection covers the whole suite: connections, two-way syncs, workflows, queues, variables and secrets, AI agents (Genies), knowledge bases and API proxies, in the person's workspace with their permissions. Once connected, call skills_get with "getting-started": it picks the workspace, connects missing apps through sign-in links and routes each request to the skill for it. Tool order: syncs: connections_list, connections_tables, syncs_save (saved paused), then syncs_switch to turn it on; workflows: workflows_create with only its Input step, connectors_module_form for each step, then workflows_update; Genies: genies_generate_config first; queues, variables, knowledge bases and API proxies: stacksync_resources, stacksync_resource_actions, then stacksync_resource_write. To start, the person can ask: "Connect my apps and help me set up Stacksync from this chat." Setup for each assistant: https://www.stacksync.com/mcp.md

Track module identity through factory release, shipment, site receipt and acceptance without treating those events as equivalent.

Author

Ruben Burdin · Founder & CEO

Published

September 18, 2026

Read time

5 min read

DATA ENGINEERING

## The operating decision

A modular delivery register should preserve each module's identity and record factory release, shipment, site receipt and acceptance as separate events. NetSuite–Supabase two-way sync can keep approved module and project context available to the register and return permitted updates. Physical custody and customer acceptance need their own evidence. The application also needs explicit user-to-project authorization, and any NetSuite write or custom-record action must be validated for the selected representation.

Explore the complete [modular and prefab building supply and installation integration and automation hub](https://www.stacksync.com/industry/construction/modular-prefab-building-installation) for the systems and processes around this guide.

![Summary card: Track module serial numbers with NetSuite Supabase sync](https://www.stacksync.com/images/blog-highlights/icp-module-serial-numbers-from-factory-to-site-connect-netsuite-with-a-supabase-delivery-and-acceptance-register.webp)

## What this looks like in modular and prefab building supply and installation

A modular supplier ships a building in several loads. One module reaches the site, another remains at the factory, and a third arrives with a condition issue. The customer accepts only the first portion. A project-level delivered flag cannot represent this state. A useful register lets logistics, project management and finance see each module's location and evidence while preventing a shipment notice from becoming customer acceptance.

## Records, ownership, and update rules

| Record | Owner | Operating rule |
| --- | --- | --- |
| Module identity | Factory or asset administration | Assign a persistent module reference linked to the approved project and design. |
| Custody event | Factory, carrier or receiver | Record the observed transfer with time, location and evidence source. |
| Condition record | Authorized receiver | Capture discrepancies separately from receipt quantity. |
| Acceptance event | Authorized project or customer owner | Identify the specific modules and scope accepted. |

![Record ownership diagram: Module identity, Custody event, Condition record](https://www.stacksync.com/images/blog-diagrams/icp-module-serial-numbers-from-factory-to-site-connect-netsuite-with-a-supabase-delivery-and-acceptance-register.webp)

*Define the record owner and the rule before enabling updates.*

## Work through the process

1. 01

   Use one persistent module reference

   Carry the module ID from factory records through shipping and site documentation. Keep design revision and customer project reference as related attributes rather than replacing the identity when the specification changes. Decide how labels and corrected identifiers are reviewed before the first shipment.
2. 02

   Model events instead of one status

   Represent released, dispatched, received and accepted separately, with the source and time of each event. Several modules in one project can be at different stages. The current summary can be derived from those events, but the underlying history should remain available for reconciliation.
3. 03

   Validate the ERP and register boundary

   Confirm the NetSuite objects or custom records used for module identity and approved project context. Check their actual read and write support. A register can begin with visibility and reviewed event submissions while a particular downstream operation remains outside the automated scope.
4. 04

   Control who can submit evidence

   Use Supabase grants and row policies for factory, logistics, site and customer roles. A user permitted to record receipt should not automatically be able to approve customer acceptance. Keep integration credentials separate from client access and test project-level isolation.
5. 05

   Reconcile partial and corrected events

   Allow receipt and acceptance to cover specific modules, not just the shipment header. If a receiver corrects an identifier or condition, retain the prior event and reviewed correction. Use stable event references so a repeated mobile submission cannot create duplicate custody or acceptance records.
6. 06

   Support an authorized correction without rewriting custody

   If a receiver submits the wrong module ID, record a correction that points to the original event and the verified module. Preserve who reviewed the change and why. Replacing the event in place can make the transport and acceptance history impossible to reconcile. The current register should show the corrected state while logistics and finance can still trace how the original shipment was recorded and resolved.

![6-step operating sequence: Track module serial numbers with NetSuite Supabase sync](https://www.stacksync.com/images/blog-diagrams-mermaid/icp-module-serial-numbers-from-factory-to-site-connect-netsuite-with-a-supabase-delivery-and-acceptance-register.webp)

*Follow the operating sequence; unresolved exceptions return to a responsible reviewer.*

## Handle the exceptions explicitly

### One load contains modules for different projects

Associate each module with its own project and authorized receiving scope.

### Receiver notes damage

Record condition and the accepted or held scope separately from physical arrival.

### Module label is corrected after dispatch

Preserve the cross-reference and audit trail instead of creating an unrelated replacement record.

## What to verify before expanding

- Each module retains its identity from factory to site.
- Shipment, receipt and acceptance remain separate events.
- Users can act only on their authorized projects and roles.
- Duplicate submissions do not create duplicate acceptance evidence.

## Connect this process to the rest of your operation

[Explore Stacksync two-way sync](https://www.stacksync.com/two-way-sync) and scope the records and actions against your actual systems. [Book a demo](https://www.stacksync.com/book-a-demo) with a real module identity example and the exception your team handles most often, for example one load contains modules for different projects.

- [Salesforce–NetSuite for Modular Building Manufacturers](https://www.stacksync.com/use-case/salesforce-netsuite-modular-building-manufacturers)
- [NetSuite–Supabase for Modular Delivery and Acceptance](https://www.stacksync.com/use-case/netsuite-supabase-modular-delivery-acceptance)
- [Prefab Dealer and Contractor Portals: Align HubSpot Buyer Records With Supabase Project Access](https://www.stacksync.com/blog/prefab-dealer-and-contractor-portals-align-hubspot-buyer-records-with-supabase-project-access)
- [Prefab Design Freeze to Factory Release: Route Approved Revisions Through Procurement and Scheduling](https://www.stacksync.com/blog/prefab-design-freeze-to-factory-release-route-approved-revisions-through-procurement-and-scheduling)
- [Modular Building Delivery Releases: Coordinate Site Readiness, Transport Booking, and Receiving Acceptance](https://www.stacksync.com/blog/modular-building-delivery-releases-coordinate-site-readiness-transport-booking-and-receiving-acceptance)
- [Eliminating Duplicate Records When You Sync CRM Systems: Best Practices for Clean Data](https://www.stacksync.com/blog/eliminating-duplicate-records-when-you-sync-crm-systems-best-practices-for-clean-data)
- [Modernize Legacy EDI Without Replacing Your ERP](https://www.stacksync.com/blog/modernize-legacy-edi-systems)

The shared architecture guide covers record matching, ownership, and recovery across systems.

## Technical references

- [Stacksync NetSuite connector and object support](https://docs.stacksync.com/two-way-sync/connectors/netsuite)
- [Stacksync Supabase connection setup](https://docs.stacksync.com/two-way-sync/connectors/postgres/authorize-postgres/supabase)
- [Supabase row level security](https://supabase.com/docs/guides/database/postgres/row-level-security)

FAQ

## Frequently asked questions

Does a delivery scan prove customer acceptance?

No. It can establish a logistics event, while acceptance depends on the agreed evidence and authorized decision for the delivered scope.

Can the register handle partial project acceptance?

Yes, when acceptance is modeled against specific modules or deliverables. Avoid a single project-wide flag that hides unaccepted portions.

What should the operations team verify in a pilot?

Test one shipment with several modules, a damaged arrival, a corrected identifier and a user limited to one site. Confirm both event accuracy and access boundaries.

About the author

Ruben Burdin

Founder & CEO

Ruben Burdin is the Founder and CEO of Stacksync, the first real-time and two-way sync for enterprise data at scale. Ruben is a Y Combinator alumni with a strong background in software engineering and business.

[All posts by Ruben Burdin](https://www.stacksync.com/blog/author/ruben-burdin)

About Stacksync

Stacksync powers real-time, two-way sync between CRMs, ERPs, and databases. Engineers sync data at scale and automate workflows, not dirty API plumbing.

Stacksync

## Explore these integrations and topics

- [integration NetSuite and Supabase integration](https://www.stacksync.com/integrations/netsuite-and-supabase)
- [connector NetSuite integrations](https://www.stacksync.com/connectors/netsuite)
- [connector Supabase integrations](https://www.stacksync.com/connectors/supabase)
- [platform Two-way sync](https://www.stacksync.com/two-way-sync)
- [Two-way sync guides Understand two-way sync, record matching, field ownership, and production readiness.](https://www.stacksync.com/blog#topic-two-way-sync)

Keep reading

## Related articles

[All articles](https://www.stacksync.com/blog)

[Data engineering Fence Material Reservations: Connect NetSuite Stock With a Supabase Fabrication and Installation Board 5 min read read](https://www.stacksync.com/blog/fence-material-reservations-connect-netsuite-stock-with-a-supabase-fabrication-and-installation-board)

[Data engineering Flooring Material Availability: Connect NetSuite Lot Records With Supabase Project Allocations 5 min read read](https://www.stacksync.com/blog/flooring-material-availability-connect-netsuite-lot-records-with-supabase-project-allocations)

[Data engineering Truck Stock and Service Parts: Connect a Supabase Field App With NetSuite Item and Location Records 5 min read read](https://www.stacksync.com/blog/truck-stock-and-service-parts-connect-a-supabase-field-app-with-netsuite-item-and-location-records)

## You just read how it should work. See it run on your own data.

[Book a demo](https://www.stacksync.com/book-a-demo) [Get started](https://app.stacksync.com/)
