Shared Transactions Roles & Permissions

Overview

Shared Transactions is designed to be flexible and align with each organization’s existing role, permission, and segregation-of-duties strategy. As a result, after installing Shared Transactions, role permissions need to be reviewed and updated to ensure proper access to the new features.

Shared Transactions permissions

PermissionDescription
Shared Transaction JournalControls the ability to create Shared Transaction journals by applying templates and allocations to transactions—as well as view and/or modify those journals.
Shared Transaction TemplateDetermines if the user can create, view, and/or modify transaction templates.
Shared Transaction AllocationDetermines whether the user can create, view, and/or modify allocations within a template. 
Shared Transaction SourcingControls whether the user can create, view, and/or modify sourcing records.
Netgain Tools SetupControls access to view and/or modify system settings related to Netgain Tools.

Step-by-step process

Role permissions can be updated individually or in bulk. Both methods are described below.

Update permissions on individual roles

  • Navigate to Setup > Users/Roles > Manage Roles.
  • Click Edit next to the role that requires updating.
  • Under the Permissions subtab, add the following permissions with the appropriate access level (e.g., Full, Edit, View) based on the desired role capabilities:
    • Transactions Sublist - Shared Transaction Journal
    • Custom Record Sublist - Shared Transaction Allocation, Shared Transaction Sourcing, Shared Transaction Template, Netgain Tools Setup
  • Save the changes to apply them.

Update roles in bulk

  • Navigate to Netgain > Setup > System Setup > Shared Transaction Import Tools > Bulk Custom Role Permissions Import

The Bulk Custom Role Permissions Import tool provides a single screen for reviewing and updating Shared Transactions permissions across all custom roles in an account. Permissions are displayed as a matrix, with custom roles as columns and Shared Transactions permissions as rows, allowing access levels to be set for many roles and permissions at once rather than editing each role record individually.

The tool supports two permission categories:

CategoryWhat It ControlsAvailable Values
Custom TransactionsShared Transaction Journal permissionNone, View, Create, Edit, Full
Custom RecordsAll other Shared Transaction permissionsNone, View, Create, Edit, Full

Common uses include initial role configuration during implementation, auditing existing access, and promoting a reviewed permission set from a sandbox account to production by way of an Excel export and import.


Prerequisites
  • The Shared Transactions SuiteApp must be updated to a version that includes the tool. If the setup page link is missing, the installed SuiteApp version predates the feature. See Shared Transactions - Updating Your SuiteApp.
  • The user's role must be in the audience of the NTA | Shared Transactions Bulk Custom Role Permissions Import | SL script deployment. Only the Administrator role is in the audience by default. To add a role, go to Customization > Scripting > Script Deployments, open the deployment, and add the role on the Audience subtab.

Review the Permission Matrix

The matrix opens with one tab per permission category. Each cell shows the access level currently granted in NetSuite for that role and permission.

  • Only active custom roles appear as columns. Roles installed by a bundle (locked roles) and external roles (Customer Center, Vendor Center, Partner Center, and website roles) are not shown.
  • Each permission row includes a description explaining what the record controls.

The tools listed below assist with reviewing and navigating the matrix. Items marked More options are hidden until that toggle is enabled.

ToolPurposeAvailability
SearchFilters the visible permission rows by nameDefault
MaximizeExpands the matrix to fill the available screen spaceDefault
Take the tourWalks through the tool's primary featuresDefault
Set [Category] visibilitySelects which permission rows are displayedMore options
Set role visibilitySelects which role columns are displayedMore options
Compare roles…Displays two roles side by side, optionally limited to permissions where they differMore options
Highlight changesDims unchanged cells, displays the previous value of each changed cell (for example, Edit → Full), and allows changes to be reverted from that viewMore options
Export matrix…Opens the export dialog for a current or blank matrixMore options

The More options toggle is located in the matrix header, next to Maximize, with the tooltip "Show the view and export options." It is off the first time the tool is opened, and its setting is remembered per browser. While it is off, the controls marked above are not present on the page at all.

At least one permission row and one role column must remain visible at all times.

Edit Permissions

All edits are applied locally and are not written to NetSuite until saved. A pencil badge on each category tab displays the number of unsaved changes in that category.

Permissions can be edited in four ways:

  • Single cell — Click a cell and select the access level
  • Range — Drag to select a block of cells and apply one value to the entire selection. An undo option is offered immediately after the change.

  • Row — Use the row menu to set one permission to the same level across every visible role, or to revert the row to its saved values. The row menu also includes View transaction (Custom Transactions tab) or View record (Custom Records tab), which opens that permission's transaction or record type in NetSuite.

  • Column — Use the column menu to set every permission on the active tab for a single role, to revert the role, or to apply a permission set.

Import Permissions from Excel

The matrix can be populated in one step from an Excel workbook.

  • Drag the file into the drop zone, or browse to select it.
  • Review the results summary and any warnings, then close the warnings dialog.
  • Confirm the matrix reflects the intended values, then save.

Requirements for the file:

  • The file must be .xlsx or .xls. CSV files are accepted by the file picker but are not read.
  • The workbook must contain a worksheet named one of the following: Role Access, Granular Permissions, Role Permission Settings, Roles and Permissions, or Sheet1.
  • Role column headings must match role names in the account. If a heading does not match, the tool offers to map it to an existing role (see below). Permission rows must match Shared Transactions permission names or their display names.
  • Valid cell values are None, View, Create, Edit, and Full for record and transaction rows. An empty cell is treated as None.

On a successful import, all matched values are applied to the matrix and flagged as changed. Permissions that exist in the account but were not included in the file are hidden automatically. Roles that were not included in the file are set to None for every permission listed in the file and are hidden as well; their access to permissions not listed in the file does not change. Restoring hidden roles and permissions requires More options to be enabled, then using Set [Category] visibility and Set role visibility.

Map unmatched roles

If the file has role column headings that do not match any role in the account, a dialog opens before the matrix updates. It lists each unmatched heading under Role in File so you can map it to an existing NetSuite role or skip it.

  • Select a role in the Map to NetSuite Role list. The list is searchable, and a role that is already mapped is not offered again. Each NetSuite role can be mapped only once.
  • When the tool can suggest a match, the suggested rows appear first and a banner shows the number of suggested matches. Click Confirm all to accept every suggestion or Reject all to skip them all. Use the check or X on a row to confirm or reject a single suggestion. Confirm or reject every suggestion before you apply.
  • Click Apply to apply the mappings. The mapped roles receive the values from their file columns and appear in the matrix. If nothing is mapped, the button reads Skip all and continue.
  • Click Cancel to close the dialog without applying any mapping.

Roles that are skipped or left unmapped are not updated, and the warnings dialog lists them under Roles not in NetSuite. The dialog does not open when every role heading matches a role in the account.

The import may also return warnings. The warnings dialog is informational only and is closed without action:

WarningMeaning
Role(s) not in NetSuiteThe file contains a column for a role that does not exist in this account and was not mapped to one. Values in that column are skipped.
Permission(s) not in NetSuiteThe file contains a row for a permission that does not exist in this account. The row is skipped.
Role(s) not in templateThe role exists in the account but was not in the file. Its access to every permission listed in the file was set to None, and its column has been hidden.
Permission(s) hiddenThe permission exists in the account but was not in the file, so its row has been hidden.
Export the Permissions Matrix

With More options enabled, select Export matrix… and choose one of two modes:

  • Current matrix — Exports the access levels currently displayed, including unsaved edits.
  • Blank matrix — Exports every cell as None, producing a template that can be completed offline.

Only visible roles and permissions are included in the export. The export dialog identifies anything being excluded. Note that the search filter does not limit the export.

The exported workbook includes a permission level legend, a description for each permission, dropdown validation on each cell, and colored formatting by level. Because the exported sheet is directly re-importable, exporting from one account and importing into another is the recommended way to promote a reviewed permission set between environments.

Save Changes
  • Click Save.
  • Review the confirmation dialog, which lists the number of pending changes per role.
  • Confirm to begin saving.

Changes are written one role at a time, and a progress list shows each target as pending, saving, saved, or failed.

  • If a single target fails, the remaining targets still save. The failure is reported inline and can be addressed separately.
  • Selecting Cancel stops after the change in progress finishes. Targets already saved retain their new values, and the dialog offers Save remaining changes.
  • After each role is saved, the tool re-reads the role record and verifies that every requested change was applied.

Discard unsaved changes

Click Cancel in the toolbar to discard every unsaved change and return the matrix to its last saved state. A confirmation dialog (Discard unsaved changes?) appears first. If you imported a file, the uploaded file is removed as well. This cannot be undone.


Considerations
  • Bundle-delivered roles cannot be edited. Netgain roles are excluded from the matrix entirely. Roles locked by other bundles are also left out of the matrix, because NetSuite would save changes to a locked role as a new copy instead of updating it. In both cases, create an editable copy of the role and apply the permissions to the copy.
  • Scope is limited to Shared Transactions. The tool manages Shared Transactions custom records and custom transactions only. It does not manage standard NetSuite permissions, create roles, or assign employees to roles.
  • Name matching during import is case-sensitive. A renamed role or an altered column heading will not be matched automatically; map it to the correct role in the role mapping dialog.
  • External roles are not shown. Roles with a Customer, Vendor, Partner, or website center type are excluded from the matrix.
  • Saving is sequential. A large change set requires one write per role and may take several minutes.

Troubleshooting

The Bulk Custom Role Permissions Import link is missing from the Shared Transactions Setup page.

  • Confirm the Shared Transactions SuiteApp has been updated to a version that includes the tool.
  • Confirm the role in use has access to the Shared Transactions Setup page.
  • Confirm the role is in the audience of the NTA | Shared Transactions Bulk Custom Role Permissions Import | SL script deployment. A role can open the Shared Transactions Setup page and still be unable to open the tool if it is not in the audience.

The export, compare roles, highlight changes, or visibility controls are not on the page.

  • These controls appear only when More options is enabled in the matrix header. The toggle is off by default and is remembered per browser.

An expected role does not appear as a column.

  • Netgain bundle roles, roles locked by other bundles, and external roles (Customer, Vendor, Partner, and website center types) are excluded by design.
  • The role may be inactive, or may be a standard NetSuite role rather than a custom role.
  • The role may be hidden as a result of a prior import. Enable More options, then check Set role visibility.

An expected permission does not appear as a row.

  • The record may be intentionally excluded from the matrix.
  • The row may be hidden as a result of a prior import. Enable More options, then check Set [Category] visibility.

A CSV file was imported but nothing changed.

  • CSV files are not read by the tool. Save the file as .xlsx and import again.

The import reports that no roles or permissions could be matched.

  • The file was likely built for a different account or product, or role and permission names have been renamed. Export the current matrix from the account and compare spelling and capitalization against the file.

The import is rejected because of invalid values.

  • One or more cells contain a value other than None, View, Create, Edit, or Full. The error message lists each affected permission, role, and value.

A role reports that its changes were not saved because the role is locked.

  • The role was likely installed by a bundle and cannot be edited. Create an editable copy of the role and apply the permissions to the copy.



Was this article helpful?