## TL;DR

Agents need ERP data but must not be able to change it until proven: create a dedicated integration role with read-only permissions scoped to vendors, POs, bills, and payments, enforce IP and rate limits, and audit every query. Promote to write only specific transactions after a supervised trial period.

## Steps

1. Create a dedicated agent user and role in the ERP.
   Expected: An identifiable agent identity.
2. Grant read on vendors, POs, bills, payments; deny everything else.
   Expected: Least privilege.
3. Scope to relevant subsidiaries and departments.
   Expected: Blast-radius control.
4. Enable API audit logging for the role.
   Expected: Full visibility.
5. Review access quarterly.
   Expected: No privilege creep.

## When to use

- Onboarding invoice agents
- ERP integration security reviews
- Least-privilege audits

## When not to use

- Granting posting/write access
- Human user provisioning
- Non-ERP data sources

## Compatibility

NetSuite roles, SAP authorizations, QuickBooks/Xero OAuth scopes.

## Variant phrasings

### read-only ERP agent access

### agent integration role NetSuite

### safe agent ERP permissions

## Root cause

Agents with broad credentials are a breach and error multiplier. Read-only scoped roles let agents work while containing what a compromised or buggy agent can do.

## Edge cases

- Some reads (bank details) are sensitive; restrict further
- Sandbox first: prove the access model before production
- Service accounts need owner and rotation policy

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_zPY25RtIE0zPsmlih-inRQ
