SCENARIO:
A map reduced script is being executed for a custom transaction and getting following error:
“Advance Funding ID: 998065, Error: The account used by the transaction is not available on this subsidiary”
{“type”:”error.SuiteScriptError”,”name”:”THE_ACCOUNT_USED_BY_THE_TRANSACTION_IS_NOT_AVAILABLE_ON_THIS_SUBSIDIARY”,”message”:”The account used by the transaction is not available on this subsidiary.”,”id”:””,”stack”:[“Errorn at suitescript/resources/javascript/record/recordImpl.js:156:24n at Object.submitFields (suitescript/resources/javascript/record/recordImpl.js:154:30)n at Object.reduce (/SuiteScripts/Jobin and Jismi IT Services/jj_mr_advance_funding_status_update_ippf-2409.js:108:24)”],”cause”:{“type”:”internal error”,”code”:”THE_ACCOUNT_USED_BY_THE_TRANSACTION_IS_NOT_AVAILABLE_ON_THIS_SUBSIDIARY”,”details”:”The account used by the transaction is not available on this subsidiary.”,”userEvent”:null,”stackTrace”:[“Errorn at suitescript/resources/javascript/record/recordImpl.js:156:24n at Object.submitFields (suitescript/resources/javascript/record/recordImpl.js:154:30)n at Object.reduce (/SuiteScripts/Jobin and Jismi IT Services/jj_mr_advance_funding_status_update_ippf-2409.js:108:24)”],”notifyOff”:false},”notifyOff”:false,”userFacing”:true}
SOLUTION:
identify the Default GL code of the Custom transaction:
Go to customization> List, Records, & fields> transaction types

Select the custom transaction
Go to accounting subtab and we can see the ledger Account:

- Go to list> Accounting> Accounts
- Select the account we found in the custom transaction record
- Edit it and provide access to all subsidiaries.
- save.