Demo install runbook
Set up a Revenue Cloud org for the Continuous Control demo. You install the package, connect to the shared demo NetSuite account, check the cards and prepare the QuantumBit catalog and customers.
Demo transactions without a NetSuite account
Showing only invoices, payments, refunds and credit memos? Turn on Simulated NetSuite instead. Salesforce answers every sync itself with made-up NetSuite ids, so you need no NetSuite connection and no token. Three steps of the Connection wizard get the org ready. Follow Demo without a NetSuite account and skip the rest of this page.
Get ready
- Get an org with Revenue Cloud and Billing turned on. A Developer or trial org works. So does a scratch org from the rlm-base flow. You need System Administrator.
- Ask the Continuous team to connect your org to the demo NetSuite account. Give them your org's My Domain. They set up the connection and create an access token for your org alone. You don't handle any NetSuite credentials.
Install the package
- Open the install link for Continuous Control 3.4.1. It needs no installation key. Choose Install for Admins Only or all users.
https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPc000000zaubIAA - Give yourself the Continuous_Control_Admin and Continuous_Control permission sets in Setup > Permission Sets.
- Open the App Launcher, then Continuous Control, then the NetSuite Connection tab.
Using a scratch org from the rlm-scratch-org skill? Run this instead. It installs, assigns the permission sets and checks the install.
./install-cc.sh <alias> --package 04tPc000000zaubIAA
Run the wizard top to bottom
Each step is explained in full on The Connection wizard.
- Credentials. The Continuous team completes this step with you. They type in the account, the consumer values and your org's token. Nothing is stored ahead of time, so this happens on every install.
- Remote Site Settings. Add the two URLs the step lists, in Setup > Remote Site Settings.
- Test the connection. Click Test connection. Expect "Connected to <account>", RESTlet
cc_control_rland NetSuite package ns-v3.3.1. You'll also see "Records from this org are stamped as <your-domain> (<org id>)". That stamp keeps your records apart from other orgs' records in the shared account. - NetSuite components. Click Verify installation. Expect 3.3.0, with 12 record types, 11 scripts and 18 saved searches.
- Environment. Click Discover & configure. It saves the ids the NetSuite links need. You need System Administrator.
- Deploy prebuilt calls. Click Deploy prebuilt calls & mappings. Only this step creates the nine prebuilt calls. Until you run it, Calls & Mappings is empty and the sync cards point you back here.
- Reference data. Match your legal entity to the NetSuite subsidiary. Then click Fetch from NetSuite. Product codes that match a QuantumBit item are proposed. Click Apply product matches. Create anything else your orders use with Create N products in NetSuite.
- Sync settings. Keep the defaults.
- Health. Run it once. It should find no mapping problems.
Check the cards on your pages
A scratch org from the rlm-base flow gets its cards when Continuous Control installs. Open any order, invoice or account and the card is already in the right sidebar.
| Page | Card | Where |
|---|---|---|
| Order, Invoice, Invoice Batch Run, Credit Memo | Continuous: NetSuite Sync | Right sidebar, top |
| Payment, Refund, Product, Account | Continuous: NetSuite Sync | Right sidebar, top |
| Contract | Continuous: Revenue Summary | Right sidebar, top |
Each page uses the Header and Right Sidebar template and is the default page for its object. The card is on Sync Mode: Auto, so it sets itself up for the page it's on. Hard-reload the browser if a card doesn't show.
The Account page also gets a Payments list next to the Invoices list on its Billing tab. Open a customer and you see every invoice and every payment without leaving the page.
The same setup adds the delivery and progress fields to the Order Product layout. It also adds the Performance Obligations list to the Contract layout.
Hide the price refresh banner
In Setup > Revenue Settings, turn on Hide Price Refresh Notification.
Booking writes each line's NetSuite id back onto the order line. Revenue Cloud then shows "Prices aren't up to date" on the order, even though no price changed. The setting hides that banner.
Turn on null measure handling
In Setup > Analytics > Settings, turn on Allow null measure handling in datasets, then click Save. Do this before any usage is recorded. The setting can't be turned off again.
Without it, Revenue Cloud rates usage correctly but writes every overage amount as $0, so usage invoices post at $0 and nothing is earned on usage. The card setup script checks the setting and tells you if it's off. Usage that was already invoiced stays at $0.
Show delivery and progress on order products
The demo marks order lines delivered, fulfilled or partly done. A scratch org from the rlm-base flow already shows these fields in a Delivery and Progress section on each order product. In another org, add them to the Order Product page layout yourself: Delivered, Delivered Date, Fulfilled, Fulfilled Date and % Complete. In a real org, Dynamic Revenue Orchestrator or a Flow usually sets them.
Set a revenue rule on each product
Each product's NetSuite Revenue Rule decides how its revenue is earned. Set it on the product before the first booking. The booking copies it to the NetSuite item.
| Products | NetSuite Revenue Rule | What the demo shows |
|---|---|---|
| QuantumBit Complete Solution, API Management, Additional API, API Access Requests, QuantumBit Database, QuantumBit Database (Token Based) | Straight-Line | Subscriptions earned day by day |
| Essentials Training | Delivery | All of it in the month it's delivered |
| Professional Services Scope of Work | % Complete | Earned as the project moves along |
| QuantumBit Tokens Pack, Quantum Tokens Definition, Compute Time Billing, Data Storage Billing | Event-Based | Earned as it's billed |
Prepare the three customers
Kingsbridge Digital, Coralbay Technologies and Northlight Systems come with the QuantumBit sample data. All three have addresses and contacts.
- Set each account's currency to USD before you create an opportunity. NetSuite books one currency, and the samples start in GBP, AUD and CAD.
- Keep the dates in the demo script. The Kingsbridge and Coralbay contracts start June 1, a few months back, so every method has something to show. Northlight starts September 1, so its first month of usage has its allowance.
- Go quote, contract, order. Create the contract from the quote with New Contract, give it its term and activate it. Then create the order from the quote and activate it. The contract shows its Source Quote and renewal terms, and the order and its assets link to the contract.
Give the demo
You're ready. Follow Demo the recognition methods for the three customers, step by step, with the numbers to expect.
Fix common problems
| What you see | What to do |
|---|---|
| The card says Continuous Control isn't set up yet | Run wizard step 6, Deploy prebuilt calls & mappings. Then book again. |
| No card on a page | Hard-reload the browser. If it's still missing, make the page the default in App Builder, or ask the Continuous team to run the card setup again. |
| "Prices aren't up to date" on a booked order | No price changed. Turn on Hide Price Refresh Notification in Revenue Settings. Don't reprice the order. |
| Test connection fails with a signature error | The token doesn't match the consumer values. Ask the Continuous team for a new token. |
| "Order Line Sync needs one setup step after an upgrade" | Your org had an earlier version. In Setup, add Order Line Sync to the Type field on NetSuite Sync Run. |
| A customer shows in NetSuite as "Kingsbridge Digital (<Salesforce id>)" | Another demo org already booked a customer with that name. The shared account needs a unique Customer ID. Nothing to fix. |
| Booking ends "Completed with warnings" and lines didn't book | Some lines have no NetSuite item. Match or create them in wizard step 7, then book again. Booking again is safe. |
| "the user running this sync can't read" a field | Give the user read access to that field, or remove the mapping row. |
| Anything else | Read the error on the sync run. See Monitoring & troubleshooting. |
Clean up after a demo
You don't need to do anything. The records stay in the shared account under your org's Source Org stamp. When you retire the org, tell the Continuous team so they can revoke its token.