Financial Institution Parser: createNewTransaction() Now Supports Category Field
As of 2026.1.12, the createNewTransaction() method in the Financial Institution Parser plug-in interface now supports a category field inside additionalFields, letting plug-in authors pass institution-supplied transaction categories into NetSuite.
The createNewTransaction(options) method on the accountData object — part of the Financial Institution Parser Plug-in Interface — received a minor but useful enhancement in the 2026.1.12 minor release: the additionalFields map now officially supports a category key.
What changed
The additionalFields parameter (type Map<String, String>, available since 2021.2) accepts arbitrary key-value pairs that are forwarded to the backend during bank-data or expense-card import. Starting with 2026.1.12, NetSuite recognizes a category key within that map. If the financial institution provides a transaction category (e.g., Automotive Expenses, Office Supplies), plug-in authors can now pass it through:
additionalFields: { category: 'Automotive Expenses' }This is an opt-in field — not all institutions supply it, and it is not required.
Full parameter reference
For context, below is a summary of all parameters on createNewTransaction(). Most have been stable since 2020.2:
date(String, required) — ISO 8601 extended local date format.amount(Number, required) — Transaction amount.transactionTypeCode(String, required for bank reconciliation) — Raw code mapped via the Code Type Mapping subtab on the Format Profile or viagetStandardTransactionCodes(context).uniqueId(String, optional) — Deduplication key; prevents duplicate imports automatically.id,payee,currency,memo,transactionStatus,customerReferenceId,customerName— Optional metadata fields.invoiceReferenceIds(Array<String>, optional) — Invoice references tied to the transaction.billedTaxAmount,localChargeAmount,localTaxAmount,currencyExchangeRate,expenseCode— Required for employee expense imports.expenseCodemaps via the Expense Code Mapping subtab orgetExpenseCodes(context).additionalFields(Map<String, String>, optional, since 2021.2) — Arbitrary key-value pairs. Now supportscategoryas of 2026.1.12.
What to do
- If you maintain a custom Financial Institution Parser plug-in and your data source provides transaction categories, add the
categorykey to theadditionalFieldsmap in yourcreateNewTransaction()calls. This is optional — omitting it changes nothing. - Verify your environment is on 2026.1.12 or later. The
categoryfield will be silently ignored on earlier minor releases sinceadditionalFieldsalready accepted arbitrary keys, but NetSuite will not act on the value. - No migration is required. Existing plug-ins continue to work unchanged. This is a purely additive enhancement.
- Check downstream automation. If you have saved searches, workflows, or scripts that consume imported bank transaction data, verify whether the newly available category data surfaces on any records and whether you want to incorporate it into your logic.
Note: Oracle's documentation does not specify exactly where the category value lands on the resulting NetSuite record (e.g., which field on the bank-imported transaction). If you plan to use it, test in sandbox to confirm which record field is populated and whether it is searchable or scriptable.
Source: Oracle NetSuite Release Notes