The following document is a quick-start guide for integrating a new Intacct client in a single or multi-entity, single currency setup, without payments.

Pre-connection Instructions / Checklist

  • Make sure you have the username and password for Beanworks and that you are a Beanworks System Administrator for your company.

  • Make sure you log into your Sage Intacct account. If you have more than on Sage Intacct company, ensure that we can access all of the Sage Intacct companies that you want to connect as the Sage Intacct administrator.

  • Make sure that you can complete all the below steps in a single session/sitting. Otherwise, the connection may time out before you can complete the connection.

  • When setting up the connection we need to enter Sage Intacct user credentials. Please ensure that you have the appropriate information.

Note: The following should be done at the root level if the customer is multi-entity.

Step 1: Ensure that the client’s Intacct is allowing web user connections. This requires that the Web Services subscription be enabled. This can be found in Company -> Subscriptions. In the grid of icons, look for one that shows a monitor and mouse cursor, called Web Services. If this is not currently in the Subscribed Applications section, click the icon and enable it by clicking Subscribe.

Step 2: Create a Web Services User. A Web Services User is a special type of user that can log in using the Intacct web API and issue commands using XML. Essentially, it will be a user that our application can log in as to control Intacct remotely. If for some reason the customer already has a Web Services User, they can use that login in our system. Otherwise (and more likely) we’ll have to set one up:

  1. Navigate to the Web Services User screen (Company -> Web Services Users, and click the + icon there, or use the Add button in the list screen)

  2. Enter the user details. The User ID field is the most important, as it will be the username for our login credentials. It is strongly encouraged that this be set to beanwebadmin, to easily identify it later if need be. Last Name and First Name are largely irrelevant, but are mandatory. Email Address is required and must be a valid email address the customer has access to, as a confirmation email will be sent there. Contact Name and User Name can be left blank. User Type should be Business and Admin Privileges should be set to Limited. Status must be Active.

  3. Click Save. There will be a prompt that adding users might incur charges. The customer must agree to this, and then confirm the add by re-entering their password.

(The next two steps may be optional, due to circumstances that are not entirely understood at the time of writing. Some Intacct instances will use user-level permissions instead of roles, in which case the permissions screen will appear immediately after user creation, allowing permissions to be set ad-hoc. If this is the case, you can go ahead and set them at that point, skipping Step 3 and 4 below)

Step 3: Create a Role for your Web Services User. A Role is a set of Permissions that dictate what our new user can do. We will work towards finding the minimum set of permissions necessary for this user to function, but for now we will just get them up and running.

  1. Navigate to the Role screen (Company -> Roles, and click the + icon there, or use the Add button in the list screen)

  2. Enter a Name and optionally a Description. It’s strongly recommended that you use Beanworks API as the Name. The Description can either be a short description of what this role is for, or just left blank.

Click Save. You will be taken to a screen that lists the different Permissions sections, such as Administration and Company. You’ll need to add the following Permissions to this role to allow it to access the necessary parts of Intacct:

Activities/Lists

Module (Only needs to be set in one)

Permissions

Required

Application Subscriptions

Administration

List, View

Departments

Company

View

Entities

Company

View

Locations

Company

View

Class

Company

View

Transaction Allocations

Company

View

Employees

Company

View

Exchange Rate Types

Company

View

Exchange Rate

Company

View

Accounts

General Ledger

View

Pay Bills

Accounts Payable

Run

Vendors

Accounts Payable

View

Bills

Accounts Payable

View, Add

AP Terms

Accounts Payable

View

Payment Requests

Accounts Payable

View

Tax Details

Accounts Payable

View

Customers

Accounts Receivable

View

Projects

Projects

Accounts Receivable

View

Contracts

Contracts

View

Items

Inventory Control

Projects

Order Entry

Purchasing

View

Checking Accounts

Cash Management

View

Savings Accounts

Cash Management

View

4. Click Save. You will be taken back to the Role list.

Step 4: Associate the new Role with the Web Services User, in order to give it the access levels it requires to issue commands to Intacct remotely.

  1. Navigate to the Web Services User screen (Company -> Web Services Users)

  2. In the user list, find the user you had made in Step 2, and click on the Edit link to the left of that row.

  3. Change to the Roles Information tab at the top.

  4. Click into the first empty row, and it will turn into a dropdown. In that dropdown, select the role you created in Step 3.

  5. Click Save and confirm the change with a password entry as was done in Step 2.

Step 5: Allow Beanworks to make changes to the customer’s Intacct instance by setting us up with Web Services Authorization.

  1. Navigate to Company -> Company Info and click Edit in the upper right hand corner.

  2. Change to the Security tab at the top and scroll down to the second-to-last header, Web Services Authorization.

  3. Click on the small + icon on the top right of the grid. A window will open. In the Sender ID field, enter BeanworksMPP. In the Description field, either enter a meaningful description, or leave it blank as it is optional.

  4. Click Save. When the window closes, click Save in the parent screen.

Step 6: Create a Custom Field for writing Invoice URLs to. This will provide a link on the Bill in Intacct that will open the corresponding Invoice in Beaworks.

  1. Navigate to Platform Services -> Custom Fields and click the + icon there, or use the Add button in the list screen)

  2. Select AP Bill in the Object dropdown and click Next.

  3. Select URL in the Data Type dropdown and click Next.

  4. Enter Beanworks into the Label field, BEANWORKS into the Field ID field (this should auto-fill), and optionally Link to Beanworks Invoice in the Description field. Click Next.

  5. The last page can be skipped. Click Done.

This should be all that is required on the Intacct end. The next step is to move over to Beanworks, and attempt a login with the new user. The following depends on whether or not the user is integrating at the root level in a multi-entity Intacct instance, which is not recommended but possible. Ideally, a single-instance user will integrate with us at the legal entity level, and a multi-entity user will integrate with us using one legal entity per entity they have.

Step 7: (Optional) Ensure that the customer’s AP Payment Approval workflow is disabled. Note that while this isn’t required, if the workflow is enabled there is a risk of a Payment needing to be approved twice, once in Beanworks and once in Intacct.

  1. Navigate to Accounts Payable -> Setup -> Configuration.

  2. Almost at the page’s bottom is a header for Payment approval settings. Under this heading is a checkbox for Enable AP payments approval. Ensure that it is unchecked.

  3. If the customer wants to keep this enabled (the most likely reason being that not all of their payments will be through us) be sure to let them know that any payments they approve in Beanworks that match the approvals in Intacct will have to be approved twice.

Step 8: Navigate to the customer’s Beanworks instance. Go to Settings, then to ERP Management. Now, depending on integration type, do one of the following:

  • Single Entity Integration: For Company ID, enter the company id part of the customer’s login (the first of the three fields they use to log in to the Intacct UI). For Username, enter the username of the Web Services User created in Step 2. For Password, you will need the password of the Web Services User, which will be in an email that has been sent to the address specified during its creation in Step 2.

  • Multi Entity Integration: This is almost identical to the single entity version, save for the need to specify the Intacct entity id. This id can be found in Intacct by going to Company -> Entities, and looking in the Entity ID column of the entity you want to use. Once you have this id, you will append it to the Company ID value using a pipe ( | ) character. For instance, if the Company ID was MyIntacctCompany and the Entity ID of the entity to integrate with is 100, you would enter MyIntacctCompany|100 as the Company ID in Beanworks.

UPGRADING FOR EXISTING CUSTOMERS

Scenario A: The customer was on-boarded before the Payments module was integrated, and are missing Payment-specific permissions.

  • Log into the client’s Intacct instance using Administrator credentials.

  • Navigate to the Roles window, located at Company -> Roles.

  • Locate the Role that is being used by the Beanworks Web Services User. Ideally this should be named according to the examples in Step 2 of the setup guide above, but if not it should have something to do with Beanworks, Web, Admin, or similar. In the case of very old clients, it could be Laura Dykstra.

    • If you’re really unsure, you can check the Role definitively by navigating to Company -> Web Services Users, then clicking on View Permissions & Roles on the row of the correct user.

    • In the window that opens, click on the Roles tab. The Roles the user has been granted will be found there.

    • Click Close to dismiss the window when finished.

  • Once a likely candidate is found, click on the Subscriptions link that is found most of the way to the right hand side of the row.

  • In the window that opens, click on the Permissions link in the row for Cash Management.

  • If they are not already selected, check the boxes for List and View in the Checking Accounts and Savings Accounts rows, and Run in the Select to Pay row, then click Save.

  • You will be returned to the Roles Subscriptions page. Click Save here as well.

  • The web user should now have sufficient permissions to sync the Bank GL Account list in Beanworks. Log into the client’s Beanworks instance and perform a sync using the controls in ERP Management.

Did this answer your question?