New SuiteApp · NetSuite Governance

See exactly what's happening inside your NetSuite. In under 60 mins.

SuiteAudit is a NetSuite-native audit SuiteApp that produces six executive-ready reports on role security, access review, login activity, saved searches, script performance and workflow audit — all from a single in-account run. Findings are dispositionable and every dataset exports to Excel. Read-only. No data leaves your account.

Login Activity report cover
Role Security report cover
Workflow Audit report cover
Sample reports · get the full set →
🔒Read-only — nothing changes
🏛️Runs entirely inside NetSuite
1 hr · ~500 units
📊Trending built-in via snapshot record
📥Excel export · 13 datasets
By AVT Solutions · 20+ yrs
● The problem

The drift you can't see is the drift that hurts you.

Every NetSuite instance accumulates governance debt after go-live. Roles proliferate. Permissions get overridden ad-hoc. Integrations authenticate with elevated privilege. Saved searches breed. Script performance decays under polls that nobody set up on purpose. Individually invisible. Collectively expensive — and, at audit time, uncomfortable.

01

Access sprawl you didn't authorise

Leavers still provisioned. Custom roles used by 2 users. Sensitive fields visible to people who shouldn't see them. Nobody has a source of truth — until an auditor asks.

02

Integrations burning your account

One integration polling every 4 minutes with 637K authentications and 52% of your script time — hidden inside "custom scripts". Standard NetSuite reporting doesn't surface this.

03

Saved-search sprawl

700+ searches, 26 personalised, 324 list views. Who owns what? Which are safe to archive? What data is your dashboard actually exposing?

04

Segregation-of-Duties gaps

Users who can both create a vendor and pay it. Users who can enter and approve their own journals. Nine SoD rules that must be checked — and are easily missed manually.

05

No baseline. No trend.

Without a repeatable audit, you can't tell whether your governance is improving or decaying. Every "clean" moment is a snapshot in isolation, not a trajectory.

06

Audit prep panic

SOC 2, ISO 27001, external auditor engagements — every one demands evidence of access control, SoD enforcement and change auditability. Assembling that manually takes weeks.

● What SuiteAudit produces

Six executive-ready reports. One in-account run.

SuiteAudit deliberately produces six separate reports, not one combined report. Each answers a different question for a different reader. They are never merged — because the role risk score is about role design, not saved-search sprawl or workflow authorisation.

01 · Role Security

What can each role do — and where's the risk?

16 baseline checks (privilege, admin, 2FA, integration, scope, data access, hygiene) plus 9 segregation-of-duties rules evaluated both within-role and across a user's combined roles — the cross-role form is what manual reviews miss.

Scored 0-100 per distinct control weakness, scaled by prevalence so an account with forty near-identical roles doesn't accidentally score clean.

9Critical findings
9Serious findings
87Roles assessed
82Risk score /100
Role Security report sample cover
02 · Access Review

What can each person do — and should they still?

The people-first view of the same data. The role report answers "what can this role do"; this answers "what can this person do, and should they still." 13 sensitive capabilities named the way auditors ask them — approve payments, execute payments, administer users and roles, view employee tax file numbers — each expanded to the named holders and the role that grants it.

Effective access is the union across every role a person holds. In the reference account, one user's combined permissions reached 525 across 6 roles — 404 at FULL level. A permission set nobody had ever looked at as a whole. 2FA enforcement is read from two independent sources (platform mandate + per-role setting), so a mandated role showing Off is never falsely reported.

4Dormant privileged
1Leaver provisioned
17Roles, no 2FA
525Peak effective perms
03 · Login Activity & Usage

Who's signing in — and what's actually a machine?

12 months of authentication history split into interactive and machine traffic throughout. Ranking users by raw login count ranks integrations, not people — SuiteAudit separates them. Integration inventory, access tokens, failed-login patterns with distinct-IP counts.

664KLogins (12 mo)
0.3%Interactive
178Failed (30 days)
04 · Saved Searches & List Views

What data is your dashboard actually exposing?

Every exportable search classified by visibility (public / personalised), where it surfaces (list view, sublist, portlet), audience, and exposure (publishing, feed, alerts, global edit). Owner × type cross-tab so concentration risk is visible at a glance.

709Searches
683Public
324List views
05 · Script Performance

Where is your NetSuite time actually going?

Ranked by total time, not average — a 40 ms query run 10,000 times costs more than a 4-second query run twice. Attributes every operation to its script; every script to its bundle. Vendor cost separated from account-owned cost, so remediation goes to the right owner.

2.6hTime captured
52%One operation
16.9sSlowest run
06 · Workflow Audit New

Workflows are an authorisation surface a permission audit can't see.

A workflow set to run as administrator performs its actions with administrative privilege regardless of who triggered it. A user with a narrow role can therefore cause an administrative change — a route that appears nowhere in the role matrix. Release status is a control question: a workflow that is not released does not run — where its name implies an approval or review, that is a control everyone believes is operating and which is not.

The finding neither a workflow audit nor a search audit finds alone: where a workflow initiates on a saved search, whoever can edit that search controls when the workflow fires — without changing the workflow and without holding the permissions it carries. 5 new checks: WF-01 admin privilege, WF-02 unreleased control, WF-03 logging disabled, WF-04 owned by inactive employee, WF-05 gated by saved search.

92Workflows
15Run as Administrator
15Not released
21Action scripts
Workflow Audit report sample cover
● Real finding from a live audit

One integration burning 52% of your database time — and no-one knew it was there.

637,728Authentications as Administrator
435Distinct IP addresses
1.4hDB time / 3 months

A payroll integration polling every 4 minutes was consuming 52% of all captured database execution — returning 25 rows in 10.7 seconds where the indexed path returned in 9 milliseconds. Hidden inside 'custom scripts'. Three reports converged on it: role settings said it could log in interactively; login report said it authenticated as Administrator 637K times; performance report said it consumed most of the runtime.

● Cross-report finding · role × search × workflow

A control everyone believed was operating — that wasn't.

92Workflows in scope
15Running as Administrator
15Active but not released

Workflows named for approval and review, marked TESTING, that never fire. Others gated by a saved search — meaning whoever can edit that search controls when the workflow triggers, without changing the workflow and without holding the permissions it carries. Neither a workflow audit nor a search audit finds this alone; SuiteAudit finds it because roles, searches and workflows are audited together.

● How it works

Install once. Run whenever. Never leaves your NetSuite.

SuiteAudit installs as a native NetSuite SuiteApp bundle. All processing runs inside your NetSuite instance using SuiteQL against the standard permission tables. No data leaves your account, ever. No integrations required. No external service to trust.

1

Install the SuiteApp

Deploy from SuiteApp.com or a shared bundle. One Map/Reduce script, one Suitelet, one custom record. AVT can install and validate in a live session.

2

Run the audit

Click "Save & Execute" on the AVT Audit Collection deployment. Costs ~250 governance units, completes in a minute with zero yields.

3

Review 6 reports

Open the AVT Audit Reports Suitelet. Six reports render from the snapshot with Excel export on every dataset. Print-ready for board packs and audit files.

4

Prioritise + fix

Every finding names the affected roles, users or scripts. Remediation lives in your team's control. Re-run to confirm resolution and build a trend line.

● Built for repeat use

An audit that remembers what you already accepted.

Most audit tools re-report the same findings every run. After the second quarter, clients stop reading. SuiteAudit gives every finding a stable identity, an acceptance workflow, and an expiry — so quarterly cadence surfaces what's actually new, not what's already been dealt with.

Dispositionable findings

Every finding opens to an Accept… action that captures owner, reason, approver and re-review date. Findings are keyed as checkId | subjectKind | internalId, so renaming a role neither orphans its acceptance nor lets another role inherit it.

Acceptances expire in 6 months

A lapsed acceptance reopens the finding and shows as Acceptance expired. An acceptance that never expires is a permanent blind spot — expiry is what makes SuiteAudit a recurring control rather than a one-off report.

Gross + net scoring

Net alone lets a client bury findings by accepting them. Gross alone ignores work already done. SuiteAudit shows both. Trend lines are net; the gross number keeps the room honest.

🚫

Self-approval blocked

Where the approver is the person the finding is about, the finding renders critical rather than accepted. Matched on employee internal id, so it cannot be evaded by name.

📥 Excel export · 13 datasets

Every dataset flattens to Excel — the shape auditors actually use.

Findings, role inventory, employee assignments, saved searches, login activity, integrations, access tokens, performance, effective access, who-can-do-what, workflows, action scripts, exception register. Nested data is not crammed into cells — employee assignments export as one row per employee-role pair, capabilities as one row per capability-holder pair. The shape that pivots and samples. UTF-8 with BOM; accented names render correctly.

● Built the right way

SuiteAudit meets the security bar your CISO will ask about.

🔒

100% read-only

The audit script reads from the permission tables and writes only to its own snapshot record. Never touches customer data, transactions, or configuration.

🏛️

Inside your NetSuite, not on our servers

All processing runs in-account via SuiteQL and SuiteScript. No external API. No SaaS layer. No third-party trust boundary.

Negligible impact

~250 governance units in about a minute. Runs as deployed but never scheduled. Nothing runs unattended.

📈

Trending as a native saved search

Every run writes a snapshot record with the risk score, role count and critical count. Trending is a saved search on your own custom record — no extra tooling.

🎯

Deterministic engine, optional AI layer

The findings come from deterministic checks — not AI. AI analysis is optional, layered on top for narrative summaries and prioritisation, but never the source of truth.

📋

Audit-file ready

Print stylesheet baked in. Reports export cleanly to PDF for SOC 2, ISO 27001, external auditor and board pack use.

● Who it's for

Different report, different reader. Each report goes where it lands.

👤

CFO / Finance Leader

Access Review + SoD findings + audit-ready output. What can happen without approval, and who could do it.

🛡️

IT Director / CISO

Role Security score, integration authentication analysis, failed-login patterns. Where the exposure is.

⚙️

NetSuite Administrator

Script Performance + Saved Searches. What's actually slow. What's actually being used. Where to clean up.

📋

Auditor / Compliance

Baseline evidence for SOC 2, ISO 27001 and external audits. Point-in-time snapshot record for trending.

Early Access · Free Sample Audit

Get a free sample audit on your NetSuite.

Register interest and we'll send you the six redacted sample reports so you can see exactly what SuiteAudit produces. For early-access customers, AVT can install SuiteAudit in your NetSuite and walk you through your live results in a 30-minute session — no commitment, no sales pitch.

  • 6 redacted sample reports emailed immediately — the exact deliverable
  • All 13 Excel exports included so you can see the auditor-ready shape
  • Priority early-access to SuiteAudit when the SuiteApp launches
  • Founding-customer pricing locked in for the first cohort
  • Optional 30-minute walkthrough of SuiteAudit run on your live NetSuite
  • No commitment · no credit card · no sales pressure
● Request sample reports

Get 4 sample reports + early access

Takes 30 seconds. We'll email you the sample reports and confirm your early-access position.

By registering, you consent to AVT contacting you about SuiteAudit. We never sell your details. See our Privacy Policy.

● FAQ

Everything you might be wondering.

How many reports does SuiteAudit produce?

Six: Role Security, Access Review, Login Activity, Saved Searches, Script Performance, and Workflow Audit. They are never merged into a combined score — each answers a different question for a different reader. Every dataset also exports to Excel (13 sheets in total), flattened one-row-per-relationship so it pivots and samples the way auditors need.

Won't I just get the same report every quarter?

No — and this is the point. Every finding can be dispositioned with an Accept… action capturing owner, reason, approver and re-review date. Findings are keyed as checkId | subjectKind | internalId, so renaming a role never orphans its acceptance. Acceptances expire after 6 months, then reopen as Acceptance expired. Self-approval is blocked. Scoring shows both gross and net, so accepting findings can't bury the raw exposure. That's what makes SuiteAudit a recurring control rather than a one-off report.

Does SuiteAudit cover workflows?

Yes — and this is workflow audit as an authorisation surface, not as automation documentation. Five checks: WF-01 workflows that execute with administrator privilege regardless of who triggers them, WF-02 Active but not released workflows (a control believed to be operating that isn't), WF-03 released with execution logging disabled, WF-04 owned by an inactive employee, WF-05 initiation gated by a saved search someone else controls. The WF-05 check exists only because roles, searches and workflows are audited together — no siloed audit finds it.

Do you cover two-factor authentication?

Yes, from two independent sources. NetSuite mandates 2FA on roles holding highly privileged permissions — that cannot be disabled and is inferred from role permissions. Separately, any role can require 2FA via a per-role setting. A mandated role showing the setting as Off is still enforced, so SuiteAudit only fires the AUTH-03 finding when neither source applies. Where the setting cannot be read, it is reported as unknown, not off.

Is SuiteAudit really read-only?

Yes. The audit uses SuiteQL to query NetSuite's standard tables — role, role permissions, employee roles, login audit, script performance and workflow. It writes only to its own snapshot custom record for trending and, if you disposition a finding, an acceptance custom record. Nothing else in your NetSuite instance is created, modified, or touched.

Can I export findings to Excel?

Yes, every dataset. 13 exports across the six reports — findings, role inventory, employee assignments, saved searches, login activity, integrations, access tokens, performance by operation, effective access, who-can-do-what, workflows, action scripts, exception register. Files are UTF-8 with a BOM so Excel renders accented names correctly, and every export shows its row count before you click.

Does any data leave my NetSuite account?

No. All processing happens in-account via SuiteScript and SuiteQL. There is no external API, no SaaS component, no third-party trust boundary. The optional AI analysis layer can be run inside your own controlled environment.

What's the impact on my NetSuite performance?

Negligible. A full run consumes ~250 governance units and completes in about a minute with zero yields. Nothing runs on a schedule — every run is initiated manually.

What roles get audited?

All roles, including bundle-locked and standard NetSuite roles. Because SuiteAudit runs in-account against the queryable permission tables, it sees 87 roles in a typical account where an SDF export would see only the 48 custom, unlocked ones.

What NetSuite features do I need enabled?

SuiteScript, SuiteCloud Development Framework, and the standard Login Audit Trail (all enabled by default in modern NetSuite accounts). No paid modules required. The SuiteApp installs from a shared bundle in minutes.

Who builds it? Who supports it?

SuiteAudit is built and supported by AVT Solutions — Australia's leading Oracle NetSuite Solution Provider & SI, with 20+ years and 100+ NetSuite implementations. We also build the CPQ, S&OP, Collections, Present & Pay, SuiteOrder, Print Node, SmartFreight and Salesforce Connector SuiteApps used across ANZ.

What will it cost?

Pricing is being finalised. Founding-cohort customers lock in preferential pricing. Register on the waitlist for pricing detail as soon as it's available.

Can I see it in action?

Yes. Register on the waitlist and we'll send the six redacted sample reports immediately, plus the 13 Excel exports. For early-access customers, AVT can install SuiteAudit in your NetSuite and run it live in a 30-minute session — no commitment.

Ready to see what's actually happening inside your NetSuite?

Get the free sample audit reports and a walkthrough — 30 seconds to register, no commitment.

Get the sample audit →