Skip to main content

Transaction Linkage Map

Complete reference for how NetSuite transactions connect to each other through the createdfrom field and other linkages.


Master Transaction Linkage Diagram

NETSUITE TRANSACTION LINKAGE MAP
═══════════════════════════════════════════════════════════════════════════════════════════════════

SALES CYCLE
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ QUOTE │ ───▶ │ SALES │ ───▶ │ ITEM │ ───▶ │ INVOICE │ ───▶ │ CUSTOMER │ │
│ │ │ │ ORDER │ │ FULFILL │ │ │ │ PAYMENT │ │
│ └──────────┘ └────┬─────┘ └──────────┘ └────┬─────┘ └──────────┘ │
│ │ │ │
│ │ ┌──────────────────────┘ │
│ │ │ │
│ │ ▼ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ │ CREDIT │ ───▶ │ CUSTOMER │ ───▶ │ CUSTOMER │ │
│ │ │ MEMO │ │ REFUND │ │ DEPOSIT │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │
│ │ │
│ ▼ │
│ ┌──────────┐ │
│ │ RMA │ ───▶ Item Receipt (customer return) │
│ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

PURCHASE CYCLE
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ PURCHASE │ ───▶ │ PURCHASE │ ───▶ │ ITEM │ ───▶ │ VENDOR │ ───▶ │ VENDOR │ │
│ │REQUISITION│ │ ORDER │ │ RECEIPT │ │ BILL │ │ PAYMENT │ │
│ └──────────┘ └────┬─────┘ └──────────┘ └────┬─────┘ └──────────┘ │
│ │ │ │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ VENDOR │ │ VENDOR │ ───▶ │ VENDOR │ │
│ │ RETURN │ │ CREDIT │ │ REFUND │ │
│ │ AUTH │ │ │ │ │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

MANUFACTURING CYCLE
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ WORK │ ───▶ │ WORK │ ───▶ │ WORK │ ───▶ │ WORK │ │
│ │ ORDER │ │ ORDER │ │ ORDER │ │ ORDER │ │
│ │ │ │ ISSUE │ │COMPLETION│ │ CLOSE │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ ┌──────────┐ │
│ │ ASSEMBLY │ (One-step: no separate issue/completion) │
│ │ BUILD │ │
│ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

TRANSFER CYCLE
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ TRANSFER │ ───▶ │ ITEM │ ───▶ │ ITEM │ │
│ │ ORDER │ │ FULFILL │ │ RECEIPT │ │
│ │ │ │ (ship) │ │ (receive)│ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

The createdfrom Field

The primary linkage mechanism in NetSuite. Shows parent-child relationship between transactions.

How It Works

CREATEDFROM RELATIONSHIP
═══════════════════════════════════════════════════════════════════════════════

Parent Transaction Child Transaction
┌────────────────────┐ ┌────────────────────┐
│ │ │ │
│ Sales Order │ ─────────────▶│ Invoice │
│ ID: 12345 │ createdfrom │ createdfrom: │
│ │ │ 12345 │
└────────────────────┘ └────────────────────┘

To find children: Search where createdfrom = 12345
To find parent: Read createdfrom field on child record

Common createdfrom Chains

StartNextNextEnd
QuoteSales OrderInvoicePayment
Sales OrderItem FulfillmentInvoicePayment
Purchase OrderItem ReceiptVendor BillPayment
RequisitionPurchase OrderItem ReceiptBill
Work OrderWO IssueWO Completion-
Transfer OrderItem FulfillmentItem Receipt-

Sales Cycle Linkages

Standard Sales Path

SALES ORDER LINKAGE DETAIL
═══════════════════════════════════════════════════════════════════════════════

SALES ORDER #SO-001
┌─────────────────────────────────────┐
│ Customer: ABC Corp │
│ Items: Widget (10), Gadget (5) │
│ Total: $1,500 │
└───────────────┬─────────────────────┘

┌──────────────────────────┼──────────────────────────┐
│ │ │
▼ ▼ ▼
┌─────────────────────────┐ ┌─────────────────────────┐ ┌─────────────────────────┐
│ ITEM FULFILLMENT #IF-001│ │ ITEM FULFILLMENT #IF-002│ │ INVOICE #INV-001 │
│ createdfrom: SO-001 │ │ createdfrom: SO-001 │ │ createdfrom: SO-001 │
│ Items: Widget (10) │ │ Items: Gadget (5) │ │ (Standalone if enabled) │
│ (Partial shipment) │ │ (Remaining items) │ │ │
└───────────┬─────────────┘ └───────────┬─────────────┘ └───────────┬─────────────┘
│ │ │
│ │ │
▼ ▼ ▼
Can also create Can also create CUSTOMER PAYMENT
Invoice from IF Invoice from IF createdfrom: INV-001
(via Apply)

Quote to Cash

QUOTE TO CASH LINKAGE
═══════════════════════════════════════════════════════════════════════════════

┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ QUOTE │ │ SALES ORDER │ │ INVOICE │ │ PAYMENT │
│ #EST-001 │────▶│ #SO-001 │────▶│ #INV-001 │────▶│ #PYMT-001 │
│ │ │ │ │ │ │ │
│ createdfrom: │ │ createdfrom: │ │ createdfrom: │ │ apply: │
│ (none) │ │ EST-001 │ │ SO-001 │ │ INV-001 │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘

Multiple Quotes → One SO:
┌──────────────┐
│ QUOTE #1 │─────┐
└──────────────┘ │ ┌──────────────┐
├────▶│ SALES ORDER │
┌──────────────┐ │ │ #SO-001 │
│ QUOTE #2 │─────┘ └──────────────┘
└──────────────┘

Returns and Credits

RETURNS LINKAGE
═══════════════════════════════════════════════════════════════════════════════

From Invoice:
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ INVOICE │────▶│ CREDIT MEMO │────▶│ CUSTOMER │
│ #INV-001 │ │ #CM-001 │ │ REFUND │
│ │ │ │ │ #REF-001 │
│ │ │ createdfrom: │ │ │
│ │ │ INV-001 │ │ apply: CM-001│
└──────────────┘ └──────────────┘ └──────────────┘

From Sales Order (RMA):
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ SALES ORDER │────▶│ RMA │────▶│ITEM RECEIPT │────▶│ CREDIT MEMO │
│ #SO-001 │ │ #RMA-001 │ │ (Return) │ │ #CM-001 │
│ │ │ │ │ │ │ │
│ │ │ createdfrom: │ │ createdfrom: │ │ createdfrom: │
│ │ │ SO-001 │ │ RMA-001 │ │ RMA-001 │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘

Purchase Cycle Linkages

Standard Purchase Path

PURCHASE ORDER LINKAGE DETAIL
═══════════════════════════════════════════════════════════════════════════════

REQUISITION #REQ-001
┌─────────────────────────────────────┐
│ Requester: John Smith │
│ Items: Laptop (5) │
└───────────────┬─────────────────────┘


PURCHASE ORDER #PO-001
┌─────────────────────────────────────┐
│ createdfrom: REQ-001 │
│ Vendor: Dell Inc. │
│ Items: Laptop (5) @ $1,200 │
└───────────────┬─────────────────────┘

┌──────────┴──────────┐
│ │
▼ ▼
┌─────────────────────────┐ ┌─────────────────────────┐
│ ITEM RECEIPT #IR-001 │ │ ITEM RECEIPT #IR-002 │
│ createdfrom: PO-001 │ │ createdfrom: PO-001 │
│ Items: Laptop (3) │ │ Items: Laptop (2) │
│ (Partial receipt) │ │ (Remaining) │
└───────────┬─────────────┘ └───────────┬─────────────┘
│ │
▼ ▼
┌─────────────────────────┐ ┌─────────────────────────┐
│ VENDOR BILL #VB-001 │ │ VENDOR BILL #VB-002 │
│ createdfrom: IR-001 │ │ createdfrom: IR-002 │
│ Amount: $3,600 │ │ Amount: $2,400 │
└───────────┬─────────────┘ └───────────┬─────────────┘
│ │
└──────────────┬─────────────┘


┌─────────────────────────┐
│ VENDOR PAYMENT #VP-001 │
│ apply: VB-001, VB-002 │
│ Amount: $6,000 │
└─────────────────────────┘

Bill Direct (No Receipt)

BILL DIRECT LINKAGE
═══════════════════════════════════════════════════════════════════════════════

┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ PURCHASE │────▶│ VENDOR BILL │────▶│ VENDOR │
│ ORDER │ │ (Direct) │ │ PAYMENT │
│ #PO-001 │ │ #VB-001 │ │ #VP-001 │
│ │ │ │ │ │
│ │ │ createdfrom: │ │ apply: │
│ │ │ PO-001 │ │ VB-001 │
└──────────────┘ └──────────────┘ └──────────────┘

Note: No Item Receipt - bill creates inventory directly

Vendor Returns

VENDOR RETURN LINKAGE
═══════════════════════════════════════════════════════════════════════════════

From Purchase Order:
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ PURCHASE │────▶│ VENDOR │────▶│ITEM FULFILL │────▶│ VENDOR │
│ ORDER │ │ RETURN │ │ (to Vendor) │ │ CREDIT │
│ #PO-001 │ │ AUTH │ │ │ │ #VC-001 │
│ │ │ #VRA-001 │ │ createdfrom: │ │ │
│ │ │ createdfrom: │ │ VRA-001 │ │ createdfrom: │
│ │ │ PO-001 │ │ │ │ VRA-001 │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘

Manufacturing Linkages

Work Order Flow

WORK ORDER LINKAGE
═══════════════════════════════════════════════════════════════════════════════

┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ WORK ORDER │────▶│ WO ISSUE │────▶│ WO │────▶│ WO CLOSE │
│ #WO-001 │ │ │ │ COMPLETION │ │ │
│ │ │ Components │ │ │ │ (optional) │
│ Assembly: │ │ issued to │ │ Finished │ │ │
│ Widget-FG │ │ production │ │ goods to │ │ │
│ │ │ │ │ inventory │ │ │
│ │ │ createdfrom: │ │ createdfrom: │ │ createdfrom: │
│ │ │ WO-001 │ │ WO-001 │ │ WO-001 │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘

Multiple Issues/Completions per Work Order:

WORK ORDER #WO-001 (Qty: 100)
┌─────────────────────────────────────┐
│ Assembly Item: Widget-FG │
│ Components: Part-A (200), Part-B (100)│
└───────────────┬─────────────────────┘

┌───────────────┼───────────────┐
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Issue 1 │ │ Issue 2 │ │ Issue 3 │
│ Qty: 50 │ │ Qty: 30 │ │ Qty: 20 │
└─────────┘ └─────────┘ └─────────┘
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│Complete1│ │Complete2│ │Complete3│
│ Qty: 50 │ │ Qty: 30 │ │ Qty: 20 │
└─────────┘ └─────────┘ └─────────┘

Transfer Order Linkages

TRANSFER ORDER LINKAGE
═══════════════════════════════════════════════════════════════════════════════

┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ TRANSFER ORDER │────▶│ ITEM FULFILLMENT │────▶│ ITEM RECEIPT │
│ #TO-001 │ │ (Shipment) │ │ (At Dest) │
│ │ │ │ │ │
│ From: Warehouse A│ │ createdfrom: │ │ createdfrom: │
│ To: Warehouse B │ │ TO-001 │ │ TO-001 │
│ Items: Widget(50)│ │ │ │ │
└──────────────────┘ └──────────────────┘ └──────────────────┘

Note: Same Transfer Order is parent of both Fulfillment and Receipt

SuiteQL Examples

-- Find all children of a transaction
SELECT
id,
tranid,
type,
createdfrom
FROM
transaction
WHERE
createdfrom = 12345 -- Parent transaction ID

-- Find complete chain from Sales Order
SELECT
t.tranid AS document_number,
t.type AS transaction_type,
t.createdfrom,
parent.tranid AS parent_document
FROM
transaction t
LEFT JOIN
transaction parent ON t.createdfrom = parent.id
WHERE
t.id = 12345 -- Start from SO
OR t.createdfrom = 12345 -- Direct children
OR t.createdfrom IN (
SELECT id FROM transaction WHERE createdfrom = 12345
) -- Grandchildren

-- Find all transactions in a chain (recursive-like)
SELECT
level1.tranid AS level_1,
level2.tranid AS level_2,
level3.tranid AS level_3,
level4.tranid AS level_4
FROM
transaction level1
LEFT JOIN
transaction level2 ON level2.createdfrom = level1.id
LEFT JOIN
transaction level3 ON level3.createdfrom = level2.id
LEFT JOIN
transaction level4 ON level4.createdfrom = level3.id
WHERE
level1.id = 12345

Saved Search Approach

FieldDescription
Created FromParent transaction
Created From : Transaction NumberParent document number
Applied To TransactionFor payments
Related RecordsCustom join to child records

Special Linkage Types

Payment Application (Not createdfrom)

PAYMENT APPLICATION LINKS
═══════════════════════════════════════════════════════════════════════════════

Payments use "apply" relationship, not createdfrom:

Customer Payment #PYMT-001
├── Applies to: INV-001 ($500)
├── Applies to: INV-002 ($300)
└── Applies to: INV-003 ($200)
Total Applied: $1,000

Query via: transactionline.appliedtotransaction
INTERCOMPANY TRANSACTION LINKS
═══════════════════════════════════════════════════════════════════════════════

Intercompany SO:
┌──────────────────────────┐ ┌──────────────────────────┐
│ INTERCOMPANY SO │ │ INTERCOMPANY PO │
│ (Selling Subsidiary) │◄────────▶│ (Buying Subsidiary) │
│ │ Linked │ │
│ Customer: Sub-B (IC) │ │ Vendor: Sub-A (IC) │
└──────────────────────────┘ └──────────────────────────┘
DROP SHIP LINKAGE
═══════════════════════════════════════════════════════════════════════════════

┌──────────────────┐
│ SALES ORDER │──────────────────────────────────────────┐
│ #SO-001 │ │
│ │ │
│ Drop Ship Item │ │
└────────┬─────────┘ │
│ │
│ Auto-creates │
▼ │
┌──────────────────┐ ┌──────────────────┐ │
│ PURCHASE ORDER │────▶│ ITEM RECEIPT │ │
│ #PO-001 │ │ (at customer) │ │
│ │ │ │ │
│ createdfrom: │ │ createdfrom: │ │
│ SO-001 │ │ PO-001 │ │
│ │ │ │ │
│ Ship To: │ │ Triggers IF on │◄───────────────┘
│ Customer Address │ │ Sales Order │
└──────────────────┘ └──────────────────┘

Linkage Summary Table

Parent TransactionChild TransactionLink FieldNotes
QuoteSales Ordercreatedfrom
Sales OrderItem FulfillmentcreatedfromMultiple allowed
Sales OrderInvoicecreatedfrom
Item FulfillmentInvoicecreatedfromAlternative path
InvoiceCredit Memocreatedfrom
InvoiceCustomer PaymentapplyNot createdfrom
Sales OrderRMAcreatedfrom
RMAItem ReceiptcreatedfromCustomer return
RMACredit Memocreatedfrom
RequisitionPurchase Ordercreatedfrom
Purchase OrderItem ReceiptcreatedfromMultiple allowed
Purchase OrderVendor BillcreatedfromBill direct
Item ReceiptVendor BillcreatedfromStandard path
Vendor BillVendor PaymentapplyNot createdfrom
Purchase OrderVRAcreatedfrom
VRAItem FulfillmentcreatedfromReturn to vendor
VRAVendor Creditcreatedfrom
Work OrderWO IssuecreatedfromMultiple allowed
Work OrderWO CompletioncreatedfromMultiple allowed
Transfer OrderItem FulfillmentcreatedfromShip from source
Transfer OrderItem ReceiptcreatedfromReceive at dest

Next Steps