This is a composite, illustrative scenario, not an account of a named client. Walking through the vendor payment process end to end — not testing a sample of payments, but sitting with the accounts executive and watching each system step — showed that the same user ID that could edit a vendor's bank account details in the ERP vendor master also had approval rights on the payment batch that would pay that vendor. No transaction sample would have revealed this, because every individual payment in the sample had a valid invoice, a valid approval, and matched the vendor master at the time it was paid — the risk was entirely in what that one person could do, not in anything that had visibly gone wrong yet.
Why sample testing structurally cannot find this
A substantive sample of payments checks whether each payment, as it happened, was properly supported and approved. If the same person who could change a vendor's bank account also approved the batch, every payment in the sample still looks procedurally correct — there is an invoice, there is an approval, the amounts tie. The exposure is that this one person has the technical ability to redirect a payment to an account they control and then approve the payment themselves, and that capability doesn't show up in any individual transaction unless and until it's actually misused. A walkthrough of access rights, done by asking what each role can do in the system rather than what each transaction shows, is the only procedure that surfaces it.
What the walkthrough covered
- 01Sat with the accounts executive and traced a single vendor master change end to endLogged in with their own credentials, located the screen to edit a vendor's bank details, and confirmed the system allowed the save with no second-person approval workflow attached to that specific field.
- 02Traced the payment approval screen under the same loginThe same user ID had approval rights in the payment run module, confirmed by checking the ERP's own role and access-rights report rather than taking a verbal description.
- 03Pulled the ERP's user access report for the full accounts payable teamOne other person, in addition to this executive, held the same combined access — not an isolated one-off configuration.
- 04Checked the audit trail for any actual bank-detail changes followed closely by a payment to that vendorNo instance was found where this had actually been exploited, which mattered for how the finding was framed — a control design gap rather than evidence of an actual loss.
| Transaction sample | Process walkthrough | |
|---|---|---|
| Each payment has a valid invoice and approval | Confirmed — nothing unusual | Not the focus |
| Same person can edit vendor bank details and approve payment | Invisible — this is a capability, not a transaction | Found directly, from the access-rights screen |
| Evidence of actual misuse | Would show up only if misused | Checked separately and not found — a design gap, not a loss |
What went into the file
- The access-rights report showing the two users with combined edit and approval rights.
- The walkthrough narrative establishing how the gap was identified, independent of any transaction sample.
- The audit-trail check confirming no evidence of actual exploitation, documented so the finding is clearly scoped as a design deficiency.
- The remediation agreed with management — splitting vendor master edit rights from payment approval rights, with a maker-checker workflow added specifically to bank-detail changes.
How we think about this
Sample testing answers whether transactions that happened were proper. A walkthrough answers what the system and the people in it are actually capable of doing, whether or not they've done it yet. Segregation-of-duties gaps live almost entirely in the second question, which is exactly why they survive years of clean transaction samples.
This is practical guidance written for audit teams, not an authoritative statement of any standard or statute. Standards, forms and timelines change. Check the current text issued by the ICAI and the relevant authority before relying on anything here in an audit file.
Related resources
- Internal audit & IFCTesting segregation of duties: a practical approachThe classic SoD conflicts, how to test for them in a small finance team where perfect separation is not realistic, and how to document the compensating controls that stand in.
- Purchase & AP auditVendor master data governance audit: duplicates, stale records, and approvalsA duplicate vendor record isn't a data-quality curiosity — it's how duplicate payments and fictitious vendors both get past controls that check the invoice but never check the master.
- Internal audit & IFCSegregation of duties within an ERP: testing beyond the org chartAn org chart that shows separate roles for procurement and payment approval doesn't tell you whether the ERP's access rights actually enforce that separation — that is a system-level test, not a document review.
Free tools, no signup
Each one reads a file entirely in your browser — or, for two of them, just answers a few questions — and nothing is ever uploaded.
- Purchase register checkDuplicate payments, round-sum amounts, weekend-dated invoices, incomplete records.
- GSTR-2B reconcilerMatches your purchase register against GSTR-2B — missing invoices either side, amount mismatches.
- Bank reconciliation checkerMatches your cash book against a bank statement — what's outstanding on each side.
- Fixed asset register checkDuplicate asset codes, missing location or useful life, negative net book value.
- Payroll red-flag scannerBank accounts shared across employees, and records missing an ID, PAN or salary.
- CARO applicability checkerAnswer a few questions about the company and see which CARO 2020 clauses likely apply.
- MSME payment delay checkerMSME-flagged invoices paid — or still unpaid — beyond the 45-day Section 22 limit.
- Related-party transaction screenerTransactions above a threshold you set with no approval reference, grouped by counterparty.
- Depreciation useful life checkerCompares a useful life in use against the Schedule II, Part C indicative figure.
- Materiality calculatorOverall and performance materiality against PBT, revenue, assets or equity, with reasoning shown.
- Sample size calculatorStatistical sample size for a test of controls or a substantive test of detail.