- First, create the integration.
- Second, set up authentication for the integration to connect with NetSuite.
Creating the Integration
You can quickly set up a native NetSuite integration in the Console. To define a m3ter - NetSuite integration:- Select Integrations:

- Select Netsuite:

- On the Configurations panel, select Configure new integration>Configure bill integration:

- Use the Global configuration panel to:
- Enter a Name for the Integration. This is required and is useful if you intend to create multiple Integrations for the same External system/Entity Type and need to clearly differentiate them.
-
Select the Accounts you want the integration to apply to:
- Account ids. Select the Accounts you want to include - all selected Accounts are treated as allowed for the integration.
- Restricted account ids. Select the Accounts you want to exclude - all selected Accounts are treated as not allowed for the integration.
-
Select Users for Email notifications if disabled:
- Integration disabled notification users. Select Organization Users you want to receive an Email notification if the integration is automatically disabled.
- Use the Entity configuration panel to configure the m3ter entity you will be synchronizing with for the integration. In the case of an outbound Bill integration, this entity will be the Bill generated for a customer Account in m3ter:
-
Only send bill on approval. Enable this if you only want Bills to be sent when they have been approved. If disabled, the Bill will be sent every time it is regenerated. Default is disabled. Note that:
- The frequency of Bills sent will depend on the billing frequency defined for the Account Plan attached to the Account - such as daily/weekly/monthly/annually.
- If an Account has a Prepayment on it and the billing for Prepayment fees is configured to run on a customized schedule, Bills will be sent when scheduled Bills are generated.
- If a Bill is manually recalculated the updated Bill will be sent.
- If you enable this, then the integration will not run for all Bill Jobs.
- Use external mapping account code. Enable this if you want the integration to look in the External Mappings for the Account identifier, which means you can use an external Id. If this is disabled, the m3ter Account Id is used. Default is disabled*.*
-
Excluded line item types. Filter the Bill line item types you send to the externalsystem. For example, only send charges or credits and exclude all other line items*.*
- For details of line item types, see Bill Line Item Types.
-
Account filter. Optionally, enter an expression that is run on the Account to determine whether or not the integration is run. You can use this setting if you have multiple destinations for sending Bills outbound to your NetSuite system. For example:
customFields != null AND customFields.country = = UK- In this example, the integration will run for an Account only if you have created a Custom Field for the Account called country and given the field a value of UK.
-
Enforce external mappings for config. Optionally enable this if you want the integration to use only those external mappings specified as being for this configuration.
- Use this setting if you want to set up multiple integrations for the same external system. You can then create separate external mappings for each integration from the details page of each integration, and these external mappings become Linked external mappings for the specific integration. See Creating Linked External Mappings.
-
Excluded products. Optionally filter the Bill line items you send to the external system. Any line items associated with the selected Products will be be excluded when the integration runs.
- Note that if line items are mapped to a specific Accounting Products, these will be used for filtering to exclude line items.
- Excluded aggregations. Optionally filter the Bill line items you send to the external system. Any line items associated with the selected Aggregations will be be excluded when the integration runs.
- Use the External system configuration panel to enter the settings specific to the external system. These settings include field mappings as well as other system-specific configurations:
-
Split usage line items. Select how you want to split line items in the outgoing Bill. Two options:
- Item per usage band. Create a line item on your NetSuite invoice for each pricing band.
- Item per product. Create one NetSuite Item per m3ter Bill Item.
- Netsuite send due date. Whether the calculated due date is sent from m3ter to NetSuite. If this option is disabled, NetSuite will default the due date based on the customer configuration.
- Netsuite commitment item id. Enter the Id of the Commitment item in NetSuite*.* This field is only required if you are representing Commitments with a specific NetSuite Item. If not configured, the NETSUITE_DEFAULT_ITEM_ID will be used.
- Netsuite minimum spend id. Enter the Id of the Minimum Spend in NetSuite*.* This field is only required if you are representing Minimum Spends with a specific NetSuite Item. If not configured, the NETSUITE_DEFAULT_ITEM_ID will be used.
- Netsuite default item id. Enter the Id of the Default item in NetSuite*.* This will be used if there is no External Mapping entity configured in m3ter between m3ter and NetSuite - for example “Other”.
-
Netsuite item mapping. Enter the details for mapping each Bill line item type to their corresponding items in NetSuite. Optionally map each line item type in m3ter with a specific Item in NetSuite. These values will be used if there is no external mapping for a NetSuite Item. For any of these fields which are not populated, the value in NETSUITE_DEFAULT_ITEM_ID will be used as the default for that line item type.
- For details of line item types, see Bill Line Item Types.
-
Netsuite item custom field mapping. Optionally choose a specific mapping to NetSuite Custom fields. Currently, three line item fields are available for mapping to NetSuite Custom fields:
- servicePeriodStart
- servicePeriodEnd
- contractCode
-
Sort line items by. Optionally, select a property to sort line items by before they are sent out to the external system. Three options:
- None
- Subtotal
- Aggregation ID
- Select** Create integration**. You are returned to the Integrations>NetSuite page, where the integration is listed on the Configurations panel:

Setting Up Authentication for the Integration
When you have created a NetSuite integration, you can select an Integration Credential you’ve created for authentication allowing the integration to connect with your NetSuite system. To set up authentication for your m3ter - NetSuite integration:- Select Integrations. The** Integrations** page opens.
- Select NetSuite. The Integrations>NetSuite page opens.
- On the Configurations panel, select the Name hotlink text of the NetSuite integration you want to set up authentication for. The Integration details page opens:

-
Notes:
- A warning is shown that the integration is not yet connected to your NetSuite system.
- The ID of the integration configuration is shown at the bottom of the Integration details card, and you can copy the ID directly to your clipboard.
- Select Connect credential. A Select credential modal appears.
- Select a Credential you created earlier and want to use to authenticate the integration with NetSuite. See Creating NetSuite Integration Credentials.
- Select Confirm. The modal closes and on Integrations details, the integration now shows as CONNECTED:
- The Credential used to connect the integration is shown.
- If at any time you want to disconnect the integration, select Disconnect credential.
- If you want to use a different Credential for connecting the integration, select Change credential. The Select credential modal appears and you can select a different Credential.
Mappings
This reference section sets out the mappings for a m3ter - NetSuite integration:Bill
| m3ter | NetSuite Invoice | Notes |
|---|---|---|
| accountId | Customer Id | External Mapping |
| billId | invoice id | External Mapping |
| dueDate | dueDate | Start of day |
| endDateTimeUTC | endDate | |
| purchaseOrderNumber | PoNumber | |
| sequentialInvoiceNumber | tranid | |
| startDateTimeUTC | startDate |
Bill Line Item
| m3ter Line Item | NetSuite Invoice Item | Notes |
|---|---|---|
| convertedSubTotal | amount | (1) Rounded to two decimal places or whatever is set for the billing currency. (2) Depends on Split usage line item setting for the integration: (i) converted SubTotal is mapped if Item per product is selected or if the setting is not configured; (ii) If Item per usage band is selected, then bandSubTotal is mapped instead. |
| description | description | |
| id | externalId | |
| quantity | quantity | |
| pricingBandId | ItemId | External mapping: mapped to ItemId only if Item per usage band is selected for Split usage line items setting. |
| productId | ItemId | External mapping: mapped to ItemId only if Item per product is selected for Split usage line items setting. |
| rate | rate |