repzo-netsuite
v0.0.14
Published
Integration between Repzo CRM and Oracle NetSuite: sync commands that mirror NetSuite master data into Repzo, and live actions that push Repzo invoices and new clients into NetSuite. The functional specification is in [docs/Repzo-NetSuite-Integration.md](
Readme
repzo-netsuite
Integration between Repzo CRM and Oracle NetSuite: sync commands that mirror NetSuite master data into Repzo, and live actions that push Repzo invoices and new clients into NetSuite. The functional specification is in docs/Repzo-NetSuite-Integration.md.
Layout
| Path | What it holds |
| ----------------- | ---------------------------------------------------------------------------------------------- |
| src/commands/ | One file per sync command (NetSuite → Repzo); index.ts maps command names to them |
| src/actions/ | The live actions (Repzo → NetSuite) and transaction.ts, what invoices and sales orders share |
| src/sync.ts | The runner every command uses: command log, context, NetSuite reads, create/update loop |
| src/netsuite.ts | Signed SuiteTalk REST client (SuiteQL + record create) and SuiteQL query helpers |
| src/repzo.ts | Repzo SDK helpers: paginated reads, bench times, custom fields |
| src/types.ts | App settings, SuiteQL row shapes and NetSuite REST record bodies |
| src/test/ | Local runners for commands and actions (see below) |
| lib/ | Compiled output published to npm (npm run build) |
Running locally
Copy .env.example to .env and fill in the Repzo API key and the NetSuite
token credentials of a sandbox account. Then:
npm run command -- sync_rep # any command name from src/commands/index.ts
npm run action # create_invoice with the fixture in src/test/actions
npm run action:sales-order # create_sales_order with an approved proforma
npm run action:customer # create_customer
npm run typecheck # tsc without emitting
npm run build # tsc + prettier, refreshes lib/