Accounting & NetSuite

Netsuite as an accounting integration in Flxpoint allows users to seamlessly manage their financial operations by supporting the synchronization of accounting data. Specifically, it enables the functionality to Send Accounting Orders and Send Accounting Shipments, ensuring accurate and up-to-date order and shipment information is reflected in your Netsuite system. This streamlines financial processes and enhances overall accounting efficiency. 
 

How to connect

📋 Phase 1: NetSuite Setup Prerequisites +
Enable Required Features
In Setup → Company → Enable Features, open the SuiteCloud tab and enable:
  • SuiteScript
  • SuiteTalk (Web Services)
  • REST Web Services
  • Token-Based Authentication
Assign Role Permissions
Go to Setup → Users/Roles → Manage Roles and ensure the role used for integration has the following:
Tip: Create a dedicated “Flxpoint Integration” role for clarity and auditing.
Setup Permissions
  • Access Token Management
  • Log in using Access Tokens
  • REST Web Services
List Permissions
  • Custom Record Entries
  • Item Collection
  • Items
  • Record Custom Field
  • Subsidiaries (if applicable)
  • Vendors
  • Customers
Transactions Permissions
  • Sales Order
  • Purchase Order
  • Item Fulfillment
  • Inventory Adjustment
Why This Matters
These feature and permission settings are required for a successful connection and accurate financial sync of orders, shipments, and related records.
🔐 Phase 2: Create Your NetSuite Connection +
Navigate to Accounting
Click the Account Settings gear icon → select Accounting → click + to add a new accounting integration.
Choose Integration
From the list, select NetSuite Sales Order.
Enter Credentials
Provide the required fields exactly as provisioned in NetSuite:
  • Connection Name
  • Client ID
  • Client Secret
  • NetSuite Store ID
  • Token ID
  • Token Secret
Note: Values are case-sensitive. Keep them secure and do not reuse across sandbox/production.
Test & Save
Click Test Connection. If successful, click Save Connection, then Save and Proceed.
⚙️ Phase 3: Configure Accounting Operations +
Toggles & Linking
Enable or disable Link to Existing Sales Receipts according to your workflow, then click Save and Proceed.
Enable Operations
Turn on the desired Accounting Operations. For each enabled operation, select the relevant source(s) or channel(s).
Tip: You can map multiple sources/channels to the same NetSuite connection when appropriate.
Save & Complete
Click Save and Complete to finalize your setup.
🔑 Phase 4: Generate NetSuite Token ID & Token Secret +
Create Access Tokens
  1. Log in with a role that has User Access Token permissions.
  2. In the Settings portlet, click Manage Access Tokens.
  3. Click New My Access Token.
  4. On the Access Token page:
    • Select the Application Name (e.g., “Flxpoint”).
    • Keep the auto-generated Token Name or enter your own.
  5. Click Save and copy the Token ID and Token Secret. Store them securely.
  6. Note: Tokens from production are not copied to sandbox/preview. Create separate tokens per environment.
NetSuite Connection Screenshot



Accounting Operations

Send Accounting Orders 

Supported | NetSuite — Send Accounting Orders

What this operation does
Creates a NetSuite Sales Order (and, for dropship routes, a related Purchase Order) from eligible Flxpoint orders. SKU choice, customer handling, and headers are driven by your mapping template.

  • POST Sales Orders to record/v1/salesorder.
  • Support internal warehouse vs. external (dropship) routing with optional PO creation.
  • Map customer/header/line fields, including custom fields.

  • 1 Create SO: We create a Sales Order when the order is eligible.
  • 2 Routing: Internal FR → SO only. External (dropship) FR → SO + PO.
  • 3 SKU handling: Choose to send PO-level SKU or Order-level SKU in the template (exploded SKUs supported).
  • 4 Customer logic: If Customer Id is mapped, use it; else find by Email, then by Name; if not found, we create the customer and use that Id.
Exploded SKU example
Ordered SKU: FLX-SKU123 (Qty 3). Routing splits to vendor SKUs.
SO lines might be:
VA-SKU123: Qty 1 | Internal Warehouse
FLX-SKU123: Qty 2 | Dropship | Vendor A

Common/Optional Customer & Header Fields
From Value To NetSuite Field Required? Notes
Customer → Email Email (Customer) Optional Used to find/create the customer if Id not provided.
Category Id (Customer) Optional Use your NetSuite value.
Custom Form Id (Customer) Optional Specify a particular customer form.
Entity Status Id (Customer) Optional Customer status value.
Subsidiary Id (Customer) Optional OneWorld accounts only.
Line Item & SKU Options
Choice Effect When to use
Send Order-level SKU Uses ordered SKU on SO lines. When a single SKU represents the item end-to-end.
Send PO-level SKU Uses vendor/dropship SKU (“exploded SKUs”). When vendors require their SKU on linked POs.

Yes—partial invoicing is supported. When a vendor bills only some lines of a PO:

  • First bill: Send all lines; for not-yet-billed items use quantity: 0.
  • Later bill(s): Send only newly invoiced items with billed quantities.
Example payloads
{
  "items": [
    { "orderLine": 1, "quantity": 1 },
    { "orderLine": 2, "quantity": 0 }
  ]
}
{
  "items": [
    { "orderLine": 2, "quantity": 1 }
  ]
}
Generates separate Vendor Bills and lets NetSuite account correctly across staged invoices.

  • 1 Enable the operation: Accounting → Send Accounting Orders.
  • 2 Connection: Use your NetSuite connection (Production or Sandbox with Sandbox Store ID when applicable). Test → Save.
  • 3 Template: Select/create a mapping template and choose SKU option (PO-level vs Order-level).
  • 4 Schedule: Turn on Scheduled and pick a cadence (e.g., Every 30 Minutes).

  • Customer not created/found → provide Customer Id or ensure Email/Name is mapped.
  • Wrong SKUs on lines → verify template choice (Order-level vs PO-level) and vendor associations.
  • SO created but no PO → check FR type (PO generation for external/dropship).
  • Validation errors → confirm optional IDs (Category, Custom Form, Entity Status, Subsidiary) match NetSuite values.

 

 
 

Send Accounting Shipments 

Supported | NetSuite — Send Accounting Shipments

What this operation does
Sends shipment confirmations from Flxpoint to NetSuite by creating Item Fulfillments and updating line items with quantities and tracking.

  • Create Item Fulfillments when shipments occur.
  • Attach one or many tracking numbers.
  • Fulfill shipped lines while keeping unshipped lines open.

  • 1 Eligibility: Shipment syncs when its Accounting Order exists in NetSuite.
  • 2 Create/Update: We create a NetSuite Item Fulfillment and attach tracking.
  • 3 Line association: Items are linked by SKU.
Tracking assignment: If multiple numbers arrive at the order level with no explicit line mapping, we associate them to shipped lines by import instance/window and preserve all numbers.

Yes—multiple shipments are supported via partial fulfillments:

  • Create a fulfillment for shipped lines (include tracking on those lines).
  • Set receive/fulfill flag = false on unshipped lines in the same request.
  • Sales Order moves to Partially Fulfilled; ship the rest later with a new fulfillment.
Example flow
Fulfillment #1: fulfill SKU001 with tracking 123; set SKU002 receive=false.
Fulfillment #2: later fulfill SKU002 with tracking 234.

Common Mappings
From Value To NetSuite Field Example Notes
Shipment → Tracking Number Tracking Numbers (Fulfillment) 1Z999… Single or multiple; all preserved.
Order Line Item → Quantity Quantity (Fulfillment Item) 1 Quantity fulfilled for that line.
Order Line Item → Weight Weight (Fulfillment Item) 2.4 Optional.

Feature Support Notes
Shipment status sync Not Supported Focus is on fulfillment creation.
Acknowledgements Not Supported Handled by other ops.
Item association Supported By SKU.
Account ledger sync Not Supported Billing is separate.

  • No fulfillment created → ensure Accounting Order exists and template maps SKU + Quantity.
  • Wrong line got tracking → verify SKU parity NetSuite ⇄ Flxpoint.
  • Partial not reflected → unshipped lines must remain unfulfilled in that request.
  • Automation → confirm the operation is Scheduled and saved.