API Integrations
Financial Edge NXT Integration Notes & Troubleshooting
Chart of Accounts
For a standard Financial Edge NXT integration, the nightly chart of accounts sync builds account mappings in Martus that correspond to your Financial Edge NXT segmented accounts. While you may see the Account Mapping page in Martus, you should not need to adjust it from Martus.
Since the chart of accounts sync builds and maintains account mappings for most clients in Financial Edge NXT, it is important that your segmented accounts in Financial Edge NXT are correctly tied to all appropriate dimensions.
To confirm you have a standard Financial Edge NXT Integration:
- Navigate to Setup > Account Mappings
- Verify that you don't have the option to edit any account mappings or import an account mapping file.
Dim & Account Errors
If you receive an error in the Martus Updater like "Dims and Account are mapped to 00-00-00-5100 and 00-00-10-5100", you will need to update one or both accounts in Financial Edge NXT for the Martus Account Sync to correctly process them.
To remedy this:
- View both accounts in Financial Edge NXT
- Ensure that the combination of dimensions associated with each account is unique for every dimension used in Martus (Fund, Department, Segment, T-Code, etc).
- From Martus - go to Dashboard > Updater
- Click Account Sync
- Ensure the task runs without error
Non-Standard Configuration
Note that in rare cases, Martus will use a non-standard configuration for Financial Edge NXT customers with legacy charts of accounts. In this case, the nightly account sync does not build your mappings. At the time of implementation, Martus Support will help you with initial setup and guide you on how to add new mappings. (To confirm that you have a non-standard configuration, navigate to Setup > Account mappings and confirm that you have the option to import account mappings.)
If you are using this non-standard configuration and get an error message on editing or importing account mappings, ensure that each account mapping has a unique combination of accounts and dimension items.
Financial Edge NXT - Integration Information
Requirements and Capabilities Financial Edge
Segmented Account
The FE account is segmented, including segments for various dimensions and the natural GL account. The dimension segments are defined as dimensions within Martus, and the GL account is Martus’ account.
Dimension Setup
Martus supports these dimensions: Fund, Department, Sub-Department, Project, and Transaction Codes.
- Dimensions that are part of the segmented account are set up with the Entity named Custom, the External Name of Segment, and an appropriate segment name which corresponds to the sequence number for that segment.
- The dimension Project is set up with the Entity of Project.
- Any Transaction Code dimensions are set up with the Entity of Custom, the External Name of Txn Code, and the appropriate External ID for the dimension value to be defined in Martus.
- No dimension can have the same name in Martus as another dimension (i.e., you cannot call the FinEdge NXT Department “Fund”, although you can call it “Funds”).
Fund Setup
Martus must be configured to define the first account number segment with the entity of Fund. This may be known by an alias in Martus (i.e., the name used within Martus could be Entity).
Project Setup
Martus must be configured to define projects with the entity of Project. This may be known by an alias in Martus (i.e., the name used within Martus could be Program). Projects are set to Inactive in Martus if they are set to “Inactive & prevent data entry and/or “Inactive & prevent data entry and posting”.
Transaction Codes Setup
Martus must be configured to define the transaction codes with the entity of Custom and the appropriate TxnCode. Each Transaction Code is a separate dimension within Martus.
Segments Not Used
Martus can be configured to ignore any account segments not used within Martus. Even the first segment of the account number (Fund) can be ignored (not configured in Martus).
GL Accounts
Martus pulls all accounts (balance sheet as well as P&L) from Financial Edge.
Bank Accounts
Bank account balances are not available via the API, so Martus cannot be configured to support the Bank Balances dashboard widget.
Vendor
The vendor is not provided to Martus via the API, so Martus cannot display Vendor on transaction detail drilldown.
Budgets
Budget information can be uploaded from Financial Edge into Martus; Martus can upload both fiscal-year budgets and budgets that are defined for a range of periods; if necessary, these are combined by the implementer into the default Planner budget for each fiscal year in Martus. Once a budget is completed in Martus, it is exported to Excel and the Blackbaud Budget Creator Excel Add-In is used to format the budget for import into Financial Edge.
Sage 100 Integration Requirements & Features
Integration Requirements
Multiple Entities
A Sage 100 company includes a single entity. Accordingly, a multi-entity Sage 100 customer would need multiple Martus instances.
Dimension Setup and the Sage 100 Segmented Account
Martus dimensionalizes the segmented Sage 100 account, naturalizing the GL account segment and treating the remaining segments as dimensions. At the time of implementation, Martus works with the customer/partner to configure the dimension(s) that are important to budgeting and reporting.
Integration Features
Current Features
- Sync accounts and dimensions from Sage 100 – each weeknight via AutoUpdate and ad hoc.
- Sync GL transactions from Sage 100 each weeknight; per standard Martus functionality, the nightly sync (AutoUpdate) updates the current and previous two full months. Ad hoc sync is available to allow the customer to sync any desired range of months.
- Drilldown in Martus from standard financial summary reports to see transaction details.
- Export of budget from Martus in a format optimized for import into Sage 100.
- Support for statistical accounts (based on the non-financial accounts in Sage 100).
- Integration with both the ProvideX and SQL Server database versions of Sage 100.
- Pull existing budgets from Sage 100 (use of this feature is limited to Martus staffers only; this is usually done at the time of implementation and does not need to be done again).
Potential Future Features
- Display vendor/customer name on Transaction Detail
Unavailable Features - Not Supported by the Capabilities of Sage 100
- Display of attachments associated with transaction detail
- Download budget directly from Martus into Sage 100
- Multi-currency support
Description of the Integration
Update requests are generated in the Martus application by such activities as the nightly Auto Update or an ad hoc sync request. These requests are stored in the Martus cloud.
The Martus EZ Connector for Sage 100 is an additional application provided by Martus that is installed on the Sage 100 Server.
- For the Standard and Advanced versions of Sage 100, the EZ Connector makes an ODBC connection to the Sage 100 ProvideX database.
- For the Premium version of Sage 100, the EZ Connector makes a direction connection to the Sage 100 SQL Server database.
The EZ Connector periodically calls the Martus cloud to see if there are any pending requests, responds to those requests by querying Sage 100, and returns the results to the Martus cloud. The Martus application then updates the Martus database with those results.
Implementation and Upgrades for the Martus EZ Connector for Sage 100
At the time of implementation, it is the customer/partner responsibility to install and configure the EZ Connector on the server where Sage 100 is installed. In case of updates to this connector, the customer/partner is responsible for installing the updated version provided by Martus and (when necessary) updating any configuration settings within the Martus EZ Connector.
Setting up the Sage 100 Integration
Step 1: Ensure all Descriptions on Accounts & Sub Accounts are Filled Out in Sage 100
Martus uses the 'descriptions' on the Sub-Account as the Name in Martus.
If there is no description when syncing, the Sub Account Code will populate as the name.
- Click General Ledger > Sub Account Maintenance
- Select the segment dropdown to review
- Click the magnifying glass to review the list of sub accounts
- We recommend identifying sub Accounts that are missing the 'description' and having a description filled out
- Click into each record that does not have description and add a description. Short Description can be added as well but not necessary
- Click 'Accept'
Step 2: Setup a Martus User in Sage 100
- Log into Sage 100
- Go to the Modules > Library Master
- Click 'Security'
- Click 'User Maintenance'
- Fill out following fields to create a new user
- User Login = MartusUser
- First Name = Martus
- Last name = User
- User Code = MU
- Password & Confirm password
- Select Company
- Select Role = Default
- Click 'Accept'
- Keep this login information ready as you will need it to set up Martus EZ Connector
Step 3: Add Company Code To Martus & Download Martus EZ Connector & MEC File
A Martus admin will need to log into Martus to complete these steps
- Log into Martus
- Go to Setup > Sage 100
- Add Company Code
- Click 'Save'
- Click 'Download MEC'
- Click 'Martus EZ Connector Installer'
Step 4: Install Martus EZ Connector
We recommend installing the Martus EZ Connector on the same server where Sage 100 is stored
- Install EZConnector from the downloaded file
- Select 'Windows Service' when prompted
- Click 'Next'
- Save in the appropriate location
- We recommend installing the Martus EZ Connector on the same server where Sage 100 is stored
- Click 'Install'
Step 5: Save the MEC File
This MEC File must be saved in the 'Martus.Connector' folder that was just created on the server
- Move the MEC file into the 'Martus.Connector' folder
Step 6: Launch Martus EZ Connector and Open 'Connection Info' tab
- Right click the 'Martus.Connector' shortcut that was saved in the 'Martus.Connector' folder
- Choose 'Run as administrator'
- When the Martus Connector launches, click on the name of your Sage 100 company
- Click the 'Connection Info' tab at the top
Step 7: Fill Out 'Connection Info' Tab
- Click 'Auto Detect'
- Your connection string will be filled in
- Fill in your user name = MartusUser
- Fill in your password
- Click 'Save'
Step 8: Test Your Connector
- Click on the 'Connections' tab
- Click 'Test'
- Prompt should pop up letting you know that it passed
- Auto Run will automatically check please do not uncheck it
- Connection is now ready!
NetSuite API Integration
Before You Start
Make sure both Martus and NetSuite are available and open. In Martus, navigate to Setup > NetSuite. You'll configure NetSuite and then complete the fields in Martus using the steps below.
Add Your NetSuite Account ID to Martus
- In NetSuite, go to Setup > Company Information > Account ID and copy the Account ID.
- Paste the Account ID in Martus in Setup > NetSuite > AccountId.
Enable NetSuite Features in SuiteCloud
- In NetSuite, go to Setup > Setup Tasks > Enable Features.
- Click SuiteCloud.
- Turn on REST WEB SERVICES and TOKEN-BASED AUTHENTICATION.
- Click Save.
Enable NetSuite Features in Analytics
- Click Analytics.
- Turn on SuiteAnalytics Workbook.
- Click Save.
Manage NetSuite Integrations
- Go to Setup > Integration > Manage Integrations.
- Click New.
- Name the Integration 'Martus'.
- Check - TOKEN-BASED AUTHENTICATION.
- Uncheck - TBA: AUTHORIZATION FLOW CALLBACK URL.
- Uncheck- AUTHORIZATION CODE GRANT.
- Check - CLIENT CREDENTIALS (MACHINE TO MACHINE) GRANT.
- Check - REST WEB SERVICES.
- Click Save.
Once you click Save, the Client Credentials will appear, and you can add these to Martus.
Copy the Consumer Key and paste it in Martus in Setup > NetSuite > Consumer Key.
Copy the Consumer Secret and paste it in Martus in Setup > NetSuite > Consumer Secret.
Verify the Role for the New User has REST Web Services
- In NetSuite go to Setup > Users/Roles > Manage Roles.
- Click Edit on the role you want to give to the new user.
- Scroll down in Permissions > Setup > and verify that REST Web Services is set to Full.
Create the New User in NetSuite and Apply Role
- Navigate to Lists > Employees > Employees > New.
- Enter NAME as 'Martus' and 'User'.
- Enter EMAIL as 'support@martussolutions.com'.
- Under Classification make sure to choose the subsidiary that Martus should have access to
- Click the 'Access 'subtab.
- Check GIVE ACCESS.
- Set up the user's PASSWORD.
- Select the user's ROLE that you just created and click ADD.
- Click Save.
Create Access Token
- In NetSuite go to Setup > Users/Roles > Access Tokens.
- Click New Access Token.
- Select the USER that should have access.
- Select the ROLE that should be applied.
- Click SAVE and an ACCESS TOKEN section will appear.
- IMMEDIATELY copy and paste the TOKEN ID and TOKEN SECRET into Martus as shown in the next step below.
Add Access Token and Secret in Martus
- In Martus, go to Setup > NetSuite.
- Add the TokenID.
- Add the Token Secret.
- Click Save.
- Respond to your implementation ticket letting us know everything is set up so that we can complete your instance for you!
NetSuite Integration - Features and Requirements
Overview of Integration Features
The integration includes these features:
- Sync accounts and dimensions from NetSuite – each weeknight via the nightly automated sync and ad hoc.
- Sync GL transactions from the accounting system each weeknight. The nightly sync updates the current and previous two full months. Ad hoc sync is available to allow the manual sync any desired range of months.
- Drilldown in Martus from standard financial reports to see transaction detail.
- Ability to pull existing budgets from the accounting system.
- Display of vendor name on transaction detail.
NetSuite Configuration
REST Web Services and Token-Based Authentication must be enabled in NetSuite. Client Credentials are via a Machine-to-Machine Grant.
Authorization
Martus access to NetSuite is via token-based authentication. Client Credentials are via a Machine-to-Machine Grant.
Dimension Setup
As with any Martus configuration, the Implementation Consultant works with the customer to identify the dimensions that are important to budgeting and reporting. (GL accounts are not considered dimensions, within Martus.) Martus can support whichever NetSuite dimensions that the customer uses, up to the standard Martus maximum of eight.
Syncing Martus to NetSuite
Martus will sync daily all GL accounts and dimensions, as well as actuals for the current and two previous full months, as is standard for Martus API Integrations.
Pulling Budgets from NetSuite
Martus supports pulling existing budgets from NetSuite.
Statistical Accounts
Not yet supported.
Display of Attachments
Not yet supported.
Budget Export or Upload
Not yet supported:
- Export of budget from Martus in a format optimized for import into NetSuite
- Upload to NetSuite
Multi-currency
Not yet supported.
Martus Features by Integration - Integration Feature Matrix
Martus features for each integration are listed below.
Martus Features | Sage Intacct | QuickBooks Online | QuickBooks Desktop | NetSuite |
| Yes | Yes | Yes | Yes |
| Yes | Yes | Yes | Yes |
| Yes | Yes | Yes | Yes |
| Yes | No | No | No |
| Yes | Yes | Yes | Yes |
| Yes | No | No | No |
| Yes | No | Yes | No |
| Yes | No | No | No |
| Yes | Yes | No | No |
| Yes | One company file per Martus instance | One company per Martus instance. Multi-entity instance supported with MEM | Yes |
Supported Dimensions | Class | Class | Class | Location |
Customer | Customer/Project | Customer/Job | Department | |
Department | Location | Items | Class | |
Employee | Department (only in Martus) | Department (only in Martus) | Custom Dimensions | |
Entity / Location | (such as Program | |||
Item | and Grant) | |||
Project | ||||
UDDs | ||||
Vendor | ||||
Warehouse |
Martus Features | Sage 100 | Financial Edge NXT | Business Central | Acumatica |
| Yes | Yes | Yes | Yes |
| Yes | Yes | Yes | Yes |
| No | No | Yes | Yes |
| No | No | Yes | No |
| Yes | Yes | Yes | No |
| No | No | No | No |
| Yes | Yes | Yes (Sylogist Only) | No |
| Yes | No | No | No |
| No | No | No | No |
| No | No | Yes, via MEM | No |
Supported Dimensions | Each sub-account is a separate dimension in Martus | Fund | Martus can support whatever Business Central dimensions the customer uses, up to the Martus maximum of 8. | Company |
Department | Branch | |||
Cost Center | Project | |||
Other Account Segments | Additional available on request. | |||
Project | ||||
Grant | ||||
T-Codes |