Settings reference
Every configurable value, on both sides of the wire. Edit Salesforce settings in the Connection wizard. NetSuite parameters live on the script deployments and the Continuous Revenue Settings record.
Salesforce: sync settings
These live on the org-level custom setting CC_NetSuite_Settings__c, edited in wizard step 8.
| Field | Default | Effect |
|---|---|---|
Disable_Revenue_Engine__c | off | The field label is Disable Continuous Revenue Engine, but the wizard shows it as the Continuous Revenue Engine switch, so switch on means the field is unchecked. When it's on, a booking or invoice sync asks NetSuite to rebuild the contract's revenue plans after Update POBs. When it's off, Update POBs and the POB mirror still run, but NetSuite produces no revenue plans, schedules, or journal entries, and the run records engine: "disabled". NetSuite has its own switch too, and either one being off turns the engine off |
Create_Native_Sales_Order__c | off | Asks NetSuite for the cumulative native Sales Order per contract on every booking. It needs no NetSuite revenue feature, but NetSuite's Disable Native Sales Orders setting can still refuse it |
Allow_NetSuite_Billing__c | off | Who bills the native Sales Orders Continuous generates. Off: Salesforce bills, so new Sales Orders are marked Do Not Bill (Continuous) and NetSuite blocks invoicing them. On: NetSuite can bill them. Either way, each Sales Order's checkbox stays editable by hand in NetSuite |
Ns_Version__c | blank | The NetSuite package version that Verify installation last read, from wizard step 4. NetSuite refuses a call that needs a newer package than this. Blank means the org has never verified |
Invoice_Chunk_Size__c | 100 | Documents per invoice-sync call, clamped to 1–200 |
Notify_On_Failure__c + Failure_Notify_Email__c | off | Email on failed runs, in addition to the bell notification |
Run_Retention_Days__c | none | Age at which the nightly purge deletes Completed and Failed runs. Completed with warnings runs purge on the same schedule as Completed, since they're finished too |
Simulate_NetSuite__c | off | The Simulate NetSuite demo mode. When it's on, Salesforce answers every NetSuite request itself with made-up ids, and nothing reaches NetSuite. Set it with the Simulate NetSuite switch in wizard step 1. Turn it off before you connect a real account. See Demo without a NetSuite account |
Cash_App_Pull_Interval_Minutes__c | none | Reserved for a future feature |
A separate setting, CC_NS_Pull_State__c, is reserved for a future feature. It stays empty.
Calls add no settings here. A call's endpoint, its node targets, and its enable-for-card and enable-for-Flow toggles live on the call itself in the mapping editor, versioned with the rest of its configuration.
Salesforce: credentials
These live on the org-level custom setting CC_NetSuite_Cred__c, entered in wizard step 1. Secrets are masked after you save.
| Field | Holds |
|---|---|
Account__c | NetSuite account id |
Consumer_Key__c / Consumer_Secret__c | The Continuous Control integration record pair |
Token_Id__c / Token_Secret__c | The access-token pair for the integration user and role |
Restlet_Script_Id__c / Restlet_Deploy_Id__c | Endpoint ids. The shipped endpoint is customscript_cc_control_rl / customdeploy_cc_control_rl, and a connection saved with these fields blank uses that endpoint. Fill them in only if your NetSuite team renamed the deployment. Saving never changes ids a connection already has |
Environment metadata powers every "Open in NetSuite" link. Wizard step 5 deploys CC_NetSuite_Env__mdt, which holds the NetSuite base URL and invoice search id, and CC_NetSuite_Link__mdt, which holds the per-object deep-link URL patterns.
Salesforce: endpoint registry
The custom object CC_NS_Endpoint__c holds one row per place a call can send its request. Manage them from Manage endpoints in the Mapping Editor. There's no tab for it: an endpoint is connection infrastructure, not a record you browse directly. A call points at one through CC_NS_Call__c.Endpoint__c, and each run records the row it used in CC_NetSuite_Sync_Run__c.Endpoint__c.
| Field | Holds |
|---|---|
Endpoint_Key__c | Short unique name calls refer to it by, set once. One row is seeded: continuous_control, always the Continuous Control entry script. A Connection default badge shows which row your connection actually resolves through, rather than that being fixed on the row |
Kind__c | entry_script: the Continuous entry script.in_account: another RESTlet in this account, reached by relaying.external_url: any URL outside this NetSuite account |
Script_Id__c / Deploy_Id__c | NetSuite script and deployment ids for both in-account kinds. NetSuite won't route a request without a deployment id, so both fields are required |
Url__c | Full https URL, External URL kind only. The in-account kinds build their URL from the connection's host |
Http_Method__c / Default_Action__c | Optional overrides applied to every call using this endpoint. Blank means POST and the calling call's own action |
Is_System__c | Set on the seeded rows. Their label, kind, and ids follow the connection settings, they can't be edited by hand, and they can't be deleted |
Is_Active__c | Uncheck it to retire the endpoint. It leaves the picker, and Activate refuses a call pointed at it, but calls already live on it keep running |
Description__c | Free text, shown under the endpoint in the picker |
NetSuite: Continuous Revenue Settings
One singleton NetSuite record holds all the account-specific setup: subsidiary, currency, GL accounts, item subsidiaries, tax, and engine and generator behavior. It's called Continuous Revenue Settings (customrecord_cc_settings), and the Connection wizard's Run post-install setup creates it. See manual setup for the details.
Every script reads this record through the shared cc_settings_lib at the moment it needs it, so a change takes effect on the next request. Choose eight of these fields in the wizard's step 4, which marks any still on a shipped default. Step 9 shows them read-only.
| Field | Effect |
|---|---|
Subsidiarycustrecord_cc_settings_subsidiary | Stamped on records the sync creates when the payload names none |
Currencycustrecord_cc_settings_currency | Stamped on records the sync creates when the payload names none |
Deferred Revenue Accountcustrecord_cc_settings_deferred_acct | Income account on items the sync creates, and the deferred side of every recognition journal |
Revenue Accountcustrecord_cc_settings_revenue_acct | Revenue side of every recognition journal |
Item Subsidiariescustrecord_cc_settings_item_subs | Backup subsidiaries for items the sync creates, used only if NetSuite can't list every active subsidiary. Not in the wizard |
Tax Schedulecustrecord_cc_settings_tax_schedule | Applied to items the sync creates |
Tax Itemcustrecord_cc_settings_tax_item | Tax code on customers and lines the sync creates when Salesforce sends none |
Refund Bank Accountcustrecord_cc_settings_refund_acct | Bank account customer refunds are paid from |
Refund Payment Methodcustrecord_cc_settings_refund_pm | Payment method on customer refunds |
Disable Continuous Revenue Enginecustrecord_cc_settings_engine_off | Unchecked by default. Checked turns the engine off: the Update Revenue Plans and Recognize Revenue buttons are hidden, their Suitelets answer DISABLED …, and the scheduled run does Update POBs only. Update POBs, the Booked and Billed rollups, booking, and the Salesforce POB mirror all keep running |
Disable Native Sales Orderscustrecord_cc_settings_native_so_off | Unchecked by default. Checked hides the Create/Update Sales Order button, and its Suitelet answers DISABLED. A booking that asks for a native Sales Order logs native sales order skipped - Disable Native Sales Orders is checked in Continuous Revenue Settings. It never arms the contract's Native Sales Order flag |
Default Revenue Rulecustrecord_cc_settings_default_rule | Fallback method for POBs whose item carries none |
Auto-Recognize on Scheduled Runcustrecord_cc_settings_auto_recognize | Lets the nightly close also post recognition. Off by default, since most teams keep posting manual. Only meaningful while the engine is on |
Continuous Documents Foldercustrecord_cc_settings_docs_folder | The File Cabinet folder id that Salesforce documents are saved in. Continuous creates the folder and fills this in the first time the files action runs. Locked: not set by hand |
Relay Allowlistcustrecord_cc_settings_relay_allow | Script ids a call may relay to, one per line. Blank allows any RESTlet except the Continuous endpoint itself. Not in the wizard |
Both checkboxes are phrased as Disable, not Enable, for a reason. A checkbox NetSuite has never stored on a record reads as false, so a positive "enabled" flag would read as off until someone saved the record. With Disable, an unset checkbox means enabled. The wizard's Verify installation reads both through installcheck (engineEnabled, nativeSoAllowed) and shows a hint when NetSuite reports either one off.
NetSuite: refund fallback parameters
The Continuous Control (RESTlet) deployment also carries two refund parameters. Refund sync uses them only when the matching field on the settings record is blank.
| Parameter | Fallback for |
|---|---|
Refund Bank Accountcustscript_cc_restlet_refund_acct | Refund Bank Account on the settings record |
Refund Payment Methodcustscript_cc_restlet_refund_pm | Refund Payment Method on the settings record |
The engine Suitelets, Update Revenue Plans and Recognize Revenue, carry no parameters of their own. They read the settings record like everything else.