Sage Intacct
SalesPad Cloud is now compatible with Sage Intacct! This document will go over every step necessary to get your Sage Intacct company integrating with SalesPad Cloud.
Noteworthy Settings
Before getting started, there are a few settings within Intacct that you will want to be aware of. All of these settings can be found within the dropdown menu in the upper-left-hand side of the screen:
Multi-Entity Console
SalesPad Cloud supports both single-entity & multi-entity organizations, however, SalesPad Cloud requires that a single entity be designated as the main distribution arm.
To view more information regarding SalesPad Cloud's relationship with multi-entity environments Click Here.
Dimension Settings
SalesPad Cloud currently supports “Location”, “Class”, “Customer”, “Vendor”, and "Item" dimensions for transactions and journals. Having non-supported Dimensions enabled will not cause any issues with the integration, as long as they are not 'Enforced', as that may cause documents utilizing those Dimensions to fail integration from SalesPad Cloud to Intacct.
To check your current Dimension settings, navigate to General Ledger -> Setup -> Configuration, then look for the section labeled 'Dimension Settings'.
Intacct Integration Setup
After you've gone through the noteworthy settings within Intacct, and you feel comfortable with your current Intacct setup, you're ready to get started on setting up the integration.
The first thing you'll need to do is set up a few things on the Intacct-side. Below, you'll find a short checklist. Prior to connecting SalesPad Cloud with Intacct, we will need to go through the checklist, ensuring that each item is configured:
SalesPad Sender ID (with access to Intacct company)
Web Services User (with full admin permissions)
Journals and GL Accounts
Classes (optional)
Customer and Vendor types (optional)
Granting access to the SalesPad Sender ID
Starting with the first item on the checklist, you'll want to give the SalesPad Sender ID access to your Intacct company, doing so grants SalesPad processes access to your company through Intacct's API.
To grant access to the SalesPad Sender ID within Intacct, follow these steps:
- Go to Company -> Setup -> Company and click 'Edit'
- Open the Security tab
- Scroll down to the Web Services authorizations section and click 'Add'
- Create a Web Servies Sender using the following information:
Sender ID Sender ID SalesPadMPP Description (Leave blank) Status Active - Click Save, then Save again
Configure a Web Services User
The next item on the checklist is to configure a Web Services User, with full administrator permissions. The Web Services User is used mainly for auditing purposes, as it is the user that you will see attached to transactions created by SalesPad. Creating a Web Services User specifically for SalesPad allows you to easily distinguish transactions that were created by SalesPad, from any other transaction within Intacct.
To configure the Web Services User, follow these steps:
- Go to Company -> Admin -> Web Services users then click 'Add'
- Create a Web Services User using the following information:
Web Services User User ID SalesPad Cloud Last Name Cloud First Name SalesPad Email Address (Email address of the user responsible for maintenance) Contact Name (Leave blank) User Name (Leave blank) User Type Business Admin Privileges Full Status Active - Click Save, then Save again
Recommended General Ledger Accounts
To account for the transactions coming from SalesPad Cloud, we recommend the following accounts be created (if they do not already exist). For questions about properly configuring the accounts, please contact SalesPad and/or your Intacct re-seller.
Inventory Account
SalesPad Cloud will track the detailed cost for each inventory item’s transactions, but the total value of the inventory will be stored in the Intacct GL account. The inventory account can be specified per item, per item class, or, for all items.
Inventory Variance Account
When journal entries are created for inventory adjustments, SalesPad Cloud will use an inventory variance account as the offset account for inventory. This account is then periodically dispersed to other accounts, based on the users choosing. This account will also be used when inventory adjustments are posted as part of a stock count.
Inventory Assembly Variance
When using assembly transactions in SalesPad Cloud, the value of the raw materials adjusted out will be placed in the assembly variance account, then pulled from that account and moved back into inventory with the value of the finished good.
Sales Account
The sales account will track a record of all sales transactions from SalesPad Cloud. When used in combination with a sales refund and allowances account, the sales account is the value of all sales invoices for a given period of time.
Sales Returns and Allowances
The sales returns and allowances account is for tracking the value of any sales returns or refunds given to a customer for a given period of time. Subtracting this account from the sales account results in net sales for a given period. This is an optional account, if not needed, returns will post to the sales account instead.
Sales Refunds
This account is used as a clearing account when processing a sales return that has a refund. The value of the refund will be placed in this account and will eventually be moved into accounts payable, and then crediting cash when the one-time vendor bill/payment is processed.
Cost of Goods Sold
When inventory is sold on an invoice, the inventory value is moved from the inventory account to the cost of goods sold account. Subtracting this account from the sales account will show the gross margins for a specified period of time.
Received Not Invoiced
This account is used to keep the balance of product received while waiting for the vendor bill to be processed. Once the Vendor bill has been created and posted within SalesPad Cloud, the account will be cleared and the value moved to accounts payable.
Spread Freight
SalesPad Cloud provides users with the ability to spread the freight cost of product equally into the cost of that product on the purchase receipt. This allows for more accurate margin calculations at the time of sale. When using this functionality, there may be times when the freight cannot be fully spread due to rounding issues, and any remaining amount will be placed into the spread freight account specified in settings.
Connecting SalesPad Cloud to Sage Intacct
By this point, everything within your Intacct company should be ready for SalesPad Cloud to begin exchanging information.
Initial Integration
At this point, you're ready to initiate the integration between SalesPad Cloud and Intacct!
Below, you'll find a step-by-step list that covers the initial integration process. Please read each step thoroughly (including the Notes) to ensure everything is configured properly:
- Navigate to your SalesPad Cloud company
- Click View Integrations and select Intacct from the dropdown
- Here, you will be prompted to enter your "Intacct connection information", this is the Web Services User that you setup earlier within Intacct
- Click 'Update Connection'
Note: By default, importing and exporting will be disabled
- Turn on Importing Enabled
Note: Before turning on Exports Enabled, we strongly recommend going through the Optional Setup
- Click 'Update Connection'
- Select Settings from the tab menu
Note: If you do not see Settings, click the menu-expand button (three stacked horizontal lines)
- Specify the ledger abbreviation for each transaction type
- Specify your default GL accounts
- Click Save
As mentioned in the notes above; before you enable exporting, it is strongly recommended that you go through all of the following optional setup, ensuring that there isn't anything else that you'd like to configure. Enabling exporting before all of the settings have been configured properly could cause incomplete data to be sent to Intacct.
Optional setup
When looking at the Intacct integration page within SalesPad Cloud, you'll notice a row of tabs going across the screen. Within these settings, you can customize the integration between SalesPad Cloud and Intacct.
Below, you'll find a list detailing the tabs on this screen, as well as their respective functionality:
Customer Class
Allows you to match SalesPad Cloud's 'Customer Class' to Intacct's 'Customer Type'. This requires previously defined customer classes within SalesPad Cloud, as well as defined customer types within Intacct.
Item Class
Allows you to map SalesPad Cloud's 'Item Classes' to Intacct's 'Classes'. This requires previously defined item classes within SalesPad Cloud and defined company classes within Intacct. Matching names between the two systems is recommended.
Vendor Class
Allows you to map SalesPad Cloud's 'Vendor Class' to Intacct's 'Vendor Type'. This requires previously defined vendor classes within SalesPad Cloud and defined vendor types within Intacct.
Transaction Type Attachments
Set which printed form is tied to a specified sales document ID, stored as an attachment within Intacct when the transaction is synced. This allows Intacct users to open a PDF copy of the sales transaction from SalesPad Cloud. By clicking 'Add Item', users can choose to add each sales document type individually or add all sales document types at once. At a minimum, we recommend adding the 'Invoice' and the 'Return' document types.
Item Accounts
Allows you to assign Inventory, Sales, and COGS accounts per item. This requires that items have already been setup within SalesPad Cloud. This is only required when one or more items are tracked in an account different from the company defaults.
Adjustment Reason Accounts
Allows you to assign specific accounts to your Adjustment Reasons. The 'Add Item(s)' dropdown allows you to either; select a specific Adjustment Reason, or, add all of your Adjustment Reasons. Once your Adjustment Reasons have been added, you can go through each of them and assign a specific Offset Account and Inventory Account that you'd like to use when that Adjustment Reason code is selected.
Landed Cost Accounts
Allows you to assign a specific Offset account for any transactions that utilize Landed Cost.
Tax Agency Accounts
Return Reason Accounts
Field Mappings
Allows you to manually set the individual fields that are integrated between SalesPad Cloud and Intacct. Users can edit mappings for customers, vendors, items, contacts, and AR invoices, however, certain fields are locked as defaults and cannot be edited.
For example; the default 'AR Invoice' does not send the 'Customer PO Number' from SalesPad Cloud to Intacct. If you'd like to have this data pulled into Intacct, select the 'Customer PO Number' field from SalesPad Cloud, then specify the Intacct field that you'd like that number to map to.
Audits
Settings
Errors
Classes
SalesPad Cloud uses the 'Classes' from Intacct to map to the 'Item Class' for each item. This allows for detailed financial reporting within Intacct, such as the ability to look at a profit and loss report by item class (as opposed to simply looking at the P&L for all items combined).
To map SalesPad Cloud's 'Item Class' to Intacct's 'Class', navigate to SalesPad Cloud, then click View Integrations -> Intacct -> Item Class.
Here you can add SalesPad Cloud's 'Item Classes' individually, or all at once, and select the corresponding Intacct 'Class'.
Note: This is assuming that 'Classes' have been previously setup within Intacct, to match the SalesPad Cloud 'Item Class'. If you do not have 'Classes' setup within Intacct, you will need to create those prior to attempting this
Journals
SalesPad Cloud allows users to configure accounts payable, accounts receivable, and inventory transactions, to write to a specific journal. By default, accounts payable will write to AP in Intacct, accounts receivables to AR in Intacct, and inventory transactions to GJ in Intacct.
To change the defaults, navigate to SalesPad Cloud, then click View Integrations -> Intacct -> Settings. Entering the two-letter ledger abbreviations in these fields will allow you to configure how your journals align between SalesPad Cloud and Intacct.
Locations
Both SalesPad Cloud and Intacct support multiple locations. By default, if there are multiple locations within SalesPad Cloud, there will be an attempt to create matching locations within Intacct. Each transaction will then map to the location dimension within Intacct. If using the location dimension is unnecessary, the setting on the integration page can be changed to export to a single location.
Finalizing the integration
After you've reviewed and configured all of the optional settings that you'd like to use, you're ready to enable exporting from SalesPad Cloud. If you're still on the Intacct integration page, turn on Exporting Enabled, then click 'Update Connection'.
Note: If you are no longer on the Intacct integration page, refer to Step 1 & Step 2 in the Initial Integration section
Congratulations! Your SalesPad Cloud company is now integrating with your Intacct company, and you're ready to start fully utilizing both platforms!
If you happen to run into any issues, or if you have any questions regarding the integration setup, feel free to reach out to SalesPad and/or your Intacct re-seller.
Intacct Integration
Below you'll find detailed information regarding the SalesPad Cloud/Intacct integration, and how sales documents, payments, purchases, etc. are handled between the two platforms:
Sales Invoices
When a sales invoice is posted within SalesPad Cloud, an AR Invoice is created within Intacct. The AR invoice will have account entries instead of item numbers on the transaction. The accounts used will be based on the setup of the integration. An entry will be made for sales along with sales tax, sales discounts, and shipping if applicable. If configured, the AR invoice will also include location and class. A separate journal entry will be created to credit inventory and debit the cost of goods sold account specified in setup.
Sales Returns
When a sales return is posted within SalesPad Cloud, a negative AR Invoice is created within Intacct. This is similar to the AR Invoice, but the dollar values specified will be the opposite of what was on the sales invoice. This will create a credit on the customer’s account that is available to apply to one or more AR Invoices for that customer. A corresponding journal entry will also be made if inventory items are on the return, debiting inventory and crediting cost of goods sold.
Sales Return with Refund
When a sales return that has a refund attached is posted within SalesPad Cloud, a negative AR Invoice is created within Intacct. It will mirror the invoice created from the sales return, except if configured, will use the Sales Returns and Allowances account instead of the sales account. This will be offset by a Sales Refund account. The negative invoice will automatically be applied to itself so as to not show up on the customers balance. A one-time use vendor will also be created automatically for the customer. A vendor bill will be created for that one-time use vendor using the Sales Refund account, and then a payment will be created from that vendor bill based on how the refund was given to the customer. A corresponding journal entry will also be made if inventory items are on the return, debiting inventory and crediting cost of goods sold.
Payments
Payments taken on a sales document or from the customer card will be integrated to Intacct as an AR Payment and applied to the AR Invoices based on the application of the payment from within SalesPad Cloud.
Purchase Receipt
Purchase receipts are created when receiving a purchase order from a vendor. Posting the purchase receipt will create a journal entry against the general ledger debiting inventory for the value of the product received and crediting the received not invoiced account specified in the settings.
Vendor Invoice
Once the purchase receipt has been posted, the user can choose to immediately generate a vendor invoice or wait and generate the vendor bill at a later date. Once generated and posted, the vendor invoice is integrated to Intacct as an AP bill. The bill will have entries for the received not invoiced account along with accounts for shipping and tax if applicable. If the cost of the inventory received was adjusted on the vendor invoice, a corresponding journal entry will be created to update the value of the inventory and update the value in the received not invoiced account. If the inventory has already been sold, then the journal entry will update the cost of goods sold account.
Inventory In/Out/Transfer
Inventory transactions, once posted within SalesPad Cloud, will be integrated to Intacct as journal entries. Depending on the type of transaction, the journal entry will update the inventory account by location and/or the inventory variance account. Transfers will only create journal entries if the setting “Export to Single Location” is disabled and there are multiple locations configured.
Assembly
Once an assembly transaction is posted in SalesPad Cloud, a journal entry is created to credit inventory for the value of the components used to create the assembled item, and debits the assembly variance account specified in the settings. A separate journal entry is created to debit inventory for the value of the assembled item, crediting the assembly variance account. SalesPad Cloud also supports adding additional costs into the assembly process, such as labor costs. The journal entry will then use the expense account configured for that item and will be rolled into the final value of the assembled item, placing that value into inventory.
Stock Count
Posting a stock count is the equivalent of posting inventory in/out adjustments. Depending on the counted quantity versus the system quantity, an inventory in transaction, inventory out transaction, or both will be created and automatically posted within SalesPad Cloud. This will then create journal entries identical to what was defined above for Inventory In/Out/Transfer transactions.
Multi Entity Support
Multi-entity support varies by system and can have different meanings based on the setup. The primary goal of this document is to outline what Intacct offers for Multi-entity support, what is supported/unsupported by SalesPad, and how SalesPad supports multi-entity with or without Intacct.
Entity; as defined by Intacct is:
A type of location (a dimension) that is available in multi-entity shared companies only. An entity can represent a business unit, company, division, legal entity, offices, and so forth.
There are three different types of Intacct deployments:
- Standard
- Multi-entity Shared
- Multi-entity Console
Single/Standalone
Single/Standalone deployments have no entity definition and cannot support entity configurations. If a company that was deployed as a standard environment needs to support multiple entities, Intacct requires that a new company be provisioned as a multi-entity shared environment and data migrated from the old deployment to the new. Per Intacct, they are no longer deploying new customers with this setup.
Multi-entity shared
Multi-entity shared environments can have one or more entity defined, but require at least one entity. Entities are configured as parent locations and can have one or more child locations allowing for roll-up to each parent location and up to the top-level company for financial reporting. Each entity can have a different home currency if needed, which adds complexity to exchange rate calculations due to maintaining rates for each currency back to multiple home currencies. All new deployments are done using multi-entity shared environments, even if the company only needs a single entity with no future plans of adding additional entities. Multi-entity shared environments are labeled in this way because they “share” list data (customer, vendor, item) across all entities and allow for entity restrictions for customers and vendors if needed to limit sharing of the list data.
Multi-entity Distributed
In a multi-entity distributed environment, entities do not share data and are not visible to each other. In essence, they are separate companies that allow for consolidation for financial reporting using the Global Consolidation module. Per Intacct, they have moved away from this type of deployment but will sell this solution if absolutely necessary to close the deal.
While SalesPad supports all 3 deployment types, it has only been tested with Single/Standalone and Multi-entity Shared environments. This allows SalesPad to support existing customers deployed as Single/Standalone environments, as well as new customers deployed into a Multi-entity Shared environment.
For Multi-entity Shared environments, we currently do not support more than a single entity. SalesPad requires the user to specify the entity that will be used when exporting 'Locations' to Intacct. The caveat is that SalesPad only allows for mapping to a single entity, which means a Multi-entity Shared company (with multiple entities configured) will only be able to support a single entity mapped to SalesPad. For this type of environment, we would pull in all 'Customers' and 'Vendors', regardless of any multi-entity restrictions configured within Intacct.