Skip to main content

Cash Flow Map

Comprehensive diagram showing all cash and money movement transactions in NetSuite.


Master Cash Flow Diagram

NETSUITE CASH FLOW MAP
═══════════════════════════════════════════════════════════════════════════════════════════════════

CASH INFLOWS
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ FROM CUSTOMERS FROM VENDORS OTHER INFLOWS │
│ ══════════════ ════════════ ═════════════ │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
│ │ CUSTOMER │ │ VENDOR │ │ JOURNAL │ │
│ │ PAYMENT │ │ REFUND │ │ ENTRY │ │
│ │ │ │ │ │ (Debit │ │
│ │ Clears A/R │ │ Credit from │ │ Cash) │ │
│ │ from Invoice │ │ Vendor Credit │ │ │ │
│ └────────┬────────┘ └────────┬────────┘ └──────┬──────┘ │
│ │ │ │ │
│ ┌────────┴────────┐ │ │ │
│ │ CASH SALE │ │ │ │
│ │ │ │ │ │
│ │ Direct cash │ │ │ │
│ │ no A/R │ │ │ │
│ └────────┬────────┘ │ │ │
│ │ │ │ │
│ ┌────────┴────────┐ │ │ │
│ │ CUSTOMER │ │ │ │
│ │ DEPOSIT │ │ │ │
│ │ │ │ │ │
│ │ Advance from │ │ │ │
│ │ customer │ │ │ │
│ └────────┬────────┘ │ │ │
│ │ │ │ │
└────────────┼───────────────────────────────────────┼─────────────────────────────┼─────────┘
│ │ │
└───────────────────────────────────────┼─────────────────────────────┘

┌─────────┴─────────┐
│ │
│ UNDEPOSITED │
│ FUNDS │
│ (Holding) │
│ │
└─────────┬─────────┘

┌─────────┴─────────┐
│ │
│ DEPOSIT │
│ │
│ Moves to bank │
│ │
└─────────┬─────────┘


┌───────────────────────────────────────────────────┐
│ │
│ BANK ACCOUNT │
│ │
│ ┌─────────────────────┐ │
│ │ Cash Balance │ │
│ │ │ │
│ │ + Deposits │ │
│ │ + Direct Payments │ │
│ │ - Vendor Payments │ │
│ │ - Expense Payments │ │
│ │ - Refunds Out │ │
│ │ - Bank Fees │ │
│ └─────────────────────┘ │
│ │
└───────────────────────────────────────────────────┘


CASH OUTFLOWS
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ TO VENDORS TO EMPLOYEES OTHER OUTFLOWS │
│ ══════════ ════════════ ══════════════ │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
│ │ VENDOR │ │ EXPENSE │ │ CUSTOMER │ │
│ │ PAYMENT │ │ PAYMENT │ │ REFUND │ │
│ │ │ │ │ │ │ │
│ │ Clears A/P │ │ Reimburse │ │ Return $ │ │
│ │ from Bill │ │ Expense Report │ │ to cust │ │
│ └─────────────────┘ └─────────────────┘ └─────────────┘ │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
│ │ CHECK │ │ PAYROLL │ │ JOURNAL │ │
│ │ │ │ PAYMENT │ │ ENTRY │ │
│ │ Direct vendor │ │ │ │ (Credit │ │
│ │ payment │ │ Salary, wages │ │ Cash) │ │
│ └─────────────────┘ └─────────────────┘ └─────────────┘ │
│ │
│ ┌─────────────┐ │
│ │ BANK │ │
│ │ FEES │ │
│ │ │ │
│ │ Service │ │
│ │ charges │ │
│ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

Cash Inflow Transactions

Customer Payment

CUSTOMER PAYMENT FLOW
═══════════════════════════════════════════════════════════════════════════════

Invoice #INV-001 Customer Payment #PYMT-001
┌────────────────────────┐ ┌────────────────────────┐
│ Customer: ABC Corp │ │ Customer: ABC Corp │
│ Amount: $5,000 │ │ Amount: $5,000 │
│ Status: Open │ │ Payment Method: Check │
│ │ ─────────▶ │ │
│ A/R Balance: $5,000 │ │ Applied to: INV-001 │
│ │ │ Deposit to: Undep Funds│
└────────────────────────┘ └────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ Undeposited Funds (or Bank) $5,000 Dr ← Money received │
│ Accounts Receivable $5,000 Cr ← Clears A/R │
└────────────────────────────────────────────────────────────────────┘

Cash Sale

CASH SALE FLOW
═══════════════════════════════════════════════════════════════════════════════

Cash Sale #CS-001
┌────────────────────────┐
│ Customer: Walk-in │
│ Items: Widget (10) │
│ Amount: $500 │
│ Payment: Cash │
│ │
│ No A/R created │
│ Direct to cash │
└────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ Cash / Undeposited Funds $500 Dr ← Money received │
│ Sales Revenue $500 Cr ← Revenue earned │
│ │
│ COGS $300 Dr ← Cost of items sold │
│ Inventory $300 Cr ← Inventory out │
└────────────────────────────────────────────────────────────────────┘

Customer Deposit

CUSTOMER DEPOSIT FLOW
═══════════════════════════════════════════════════════════════════════════════

ADVANCE PAYMENT SCENARIO

Customer Deposit #DEP-001 Sales Order #SO-001 (later)
┌────────────────────────┐ ┌────────────────────────┐
│ Customer: ABC Corp │ │ Customer: ABC Corp │
│ Amount: $2,000 │ │ Total: $5,000 │
│ (50% advance) │ ─────▶ │ Apply Deposit: $2,000 │
│ │ │ Balance Due: $3,000 │
└────────────────────────┘ └────────────────────────┘

Deposit GL:
┌────────────────────────────────────────────────────────────────────┐
│ Cash / Bank $2,000 Dr ← Money received │
│ Customer Deposit (Liab) $2,000 Cr ← Owe customer │
└────────────────────────────────────────────────────────────────────┘

Invoice GL (applying deposit):
┌────────────────────────────────────────────────────────────────────┐
│ Accounts Receivable $5,000 Dr ← Full invoice amount │
│ Sales Revenue $5,000 Cr ← Full revenue │
│ │
│ Customer Deposit $2,000 Dr ← Clear deposit liability │
│ Accounts Receivable $2,000 Cr ← Reduce A/R │
└────────────────────────────────────────────────────────────────────┘

Cash Outflow Transactions

Vendor Payment

VENDOR PAYMENT FLOW
═══════════════════════════════════════════════════════════════════════════════

Open Bills Vendor Payment #VP-001
┌────────────────────────┐ ┌────────────────────────┐
│ VB-001: $3,000 │ │ Vendor: Dell Inc. │
│ VB-002: $2,000 │ ─────────▶ │ Amount: $5,000 │
│ │ │ Applied to: │
│ Total A/P: $5,000 │ │ - VB-001: $3,000 │
│ │ │ - VB-002: $2,000 │
└────────────────────────┘ └────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ Accounts Payable $5,000 Dr ← Clear what you owe │
│ Bank Account $5,000 Cr ← Money out │
└────────────────────────────────────────────────────────────────────┘

Expense Report Payment

EXPENSE REPORT PAYMENT FLOW
═══════════════════════════════════════════════════════════════════════════════

Expense Report #ER-001 Bill Payment #BP-001
┌────────────────────────┐ ┌────────────────────────┐
│ Employee: John Smith │ │ Pay To: John Smith │
│ Travel: $450 │ ─────────▶ │ Amount: $1,280 │
│ Hotel: $600 │ │ Method: ACH │
│ Meals: $150 │ │ │
│ Transport: $80 │ │ Clears A/P Employee │
│ Total: $1,280 │ │ │
│ │ │ │
│ A/P Employee: $1,280 │ │ │
└────────────────────────┘ └────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ A/P - Employee $1,280 Dr ← Clear employee liability │
│ Bank Account $1,280 Cr ← Money to employee │
└────────────────────────────────────────────────────────────────────┘

Customer Refund

CUSTOMER REFUND FLOW
═══════════════════════════════════════════════════════════════════════════════

Credit Memo #CM-001 Customer Refund #REF-001
┌────────────────────────┐ ┌────────────────────────┐
│ Customer: ABC Corp │ │ Customer: ABC Corp │
│ Original Inv: INV-001 │ ─────────▶ │ Amount: $500 │
│ Credit Amount: $500 │ │ Apply: CM-001 │
│ │ │ Method: Check │
│ Customer Credit: $500 │ │ │
└────────────────────────┘ └────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ Accounts Receivable $500 Dr ← Use the credit │
│ Bank Account $500 Cr ← Money out to customer │
└────────────────────────────────────────────────────────────────────┘

Bank Operations

Deposit Process

DEPOSIT WORKFLOW
═══════════════════════════════════════════════════════════════════════════════

Step 1: Payments received (to Undeposited Funds)
┌─────────────────────────────────────────────────────────────────────────────┐
│ Customer Payment #PYMT-001 $5,000 → Undeposited Funds │
│ Customer Payment #PYMT-002 $3,000 → Undeposited Funds │
│ Cash Sale #CS-001 $500 → Undeposited Funds │
│ │
│ Undeposited Funds Balance: $8,500 │
└─────────────────────────────────────────────────────────────────────────────┘

Step 2: Create Deposit
┌─────────────────────────────────────────────────────────────────────────────┐
│ Deposit #DEP-001 │
│ ───────────────── │
│ Date: 2024-01-15 │
│ Bank Account: Checking - Main │
│ │
│ Payments to Deposit: │
│ ☑ PYMT-001 $5,000 │
│ ☑ PYMT-002 $3,000 │
│ ☑ CS-001 $500 │
│ │
│ Deposit Total: $8,500 │
└─────────────────────────────────────────────────────────────────────────────┘

GL Impact:
┌────────────────────────────────────────────────────────────────────┐
│ Bank Account - Checking $8,500 Dr ← Money in bank │
│ Undeposited Funds $8,500 Cr ← Clear holding │
└────────────────────────────────────────────────────────────────────┘

Bank Reconciliation

BANK RECONCILIATION FLOW
═══════════════════════════════════════════════════════════════════════════════

Bank Statement NetSuite Book Balance
┌────────────────────────┐ ┌────────────────────────┐
│ Beginning: $50,000 │ │ Beginning: $50,000 │
│ + Deposits: $25,000 │ │ + Deposits: $25,000 │
│ - Checks: ($18,000) │ │ - Payments: ($18,500) │
│ - Fees: ($50) │ │ │
│ Ending: $56,950 │ │ Ending: $56,500 │
└────────────────────────┘ └────────────────────────┘

Reconciliation:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Book Balance $56,500 │
│ │
│ Add: Outstanding deposits (not yet on statement) │
│ - None $0 │
│ │
│ Less: Outstanding checks (not yet cleared) │
│ - Check #1234 ($500) │
│ │
│ Less: Bank fees not yet recorded ($50) │
│ │
│ Adjusted Book Balance $55,950 │
│ Bank Statement Balance $56,950 │
│ Difference $1,000 ← Investigate│
└─────────────────────────────────────────────────────────────────────────────┘

Bank Fee Adjustment GL:
┌────────────────────────────────────────────────────────────────────┐
│ Bank Fees Expense $50 Dr ← Expense for bank charges │
│ Bank Account $50 Cr ← Reduce cash balance │
└────────────────────────────────────────────────────────────────────┘

Payment Methods

Payment Method Impact

MethodNetSuite TransactionTimingBank Account Impact
CheckCustomer Payment / Vendor PaymentManual depositUndeposited → Bank on deposit
CashCash Sale / PaymentManual depositUndeposited → Bank on deposit
Credit CardPayment with processingImmediate or batchDirect or via processor
ACH/EFTElectronic paymentSame day or next dayDirect to bank
WireBill PaymentImmediateDirect to bank

Direct vs Undeposited

DIRECT TO BANK vs UNDEPOSITED FUNDS
═══════════════════════════════════════════════════════════════════════════════

Option 1: Direct to Bank (single payment)
┌────────────────────────┐
│ Customer Payment │
│ Deposit To: Checking │───────────────────▶ Bank Account: +$5,000
│ Amount: $5,000 │
└────────────────────────┘

Option 2: Undeposited Funds (batch deposits)
┌────────────────────────┐
│ Customer Payment │
│ Deposit To: Undep │────┐
│ Amount: $5,000 │ │
└────────────────────────┘ │
│ ┌─────────────┐
┌────────────────────────┐ ├───▶│ Undeposited │────▶ Bank Account
│ Customer Payment │ │ │ Funds │ (via Deposit)
│ Deposit To: Undep │────┘ │ $8,000 │
│ Amount: $3,000 │ └─────────────┘
└────────────────────────┘

Use Undeposited when:
- Multiple payments in one bank deposit
- Need to match bank statement deposit amounts
- Daily batch deposits

Cash Flow Summary by Transaction

TransactionCash ImpactDirectionTypical Account
Customer Payment+ CashInflowUndeposited/Bank
Cash Sale+ CashInflowUndeposited/Bank
Customer Deposit+ CashInflowBank
Deposit+ Bank, - UndepositedTransferBank
Vendor Payment- CashOutflowBank
Check- CashOutflowBank
Expense Payment- CashOutflowBank
Customer Refund- CashOutflowBank
Vendor Refund+ CashInflowBank
Journal Entry+/- CashEitherBank
Bank Transfer+/- CashTransferBank to Bank

Cash Flow Reports

Built-in Reports

ReportPurposeKey Data
Cash Flow StatementOperating/Investing/FinancingPeriod cash changes
Bank RegisterAll bank transactionsCheck register style
A/R AgingExpected inflowsWhen customers will pay
A/P AgingExpected outflowsWhen bills are due
Cash ForecastProjected cashFuture cash position

Cash Visibility Query

-- Current cash position by bank account
SELECT
a.accountsearchdisplayname AS bank_account,
SUM(tal.amount) AS current_balance
FROM
transactionaccountingline tal
JOIN
account a ON tal.account = a.id
WHERE
a.accttype = 'Bank'
GROUP BY
a.accountsearchdisplayname

-- Cash inflows/outflows this month
SELECT
t.type,
COUNT(*) AS transaction_count,
SUM(t.foreigntotal) AS total_amount
FROM
transaction t
WHERE
t.trandate >= '2024-01-01'
AND t.type IN ('CustPymt', 'CashSale', 'CustDep', 'VendPymt', 'Check', 'CustRfnd')
GROUP BY
t.type
ORDER BY
t.type

Next Steps