You can configure the Perk Spend Management Connector for MS Dynamics 365 Business Central to send master data from Business Central to Perk:
- Users
- Dimensions
- GL accounts
- Vendors (i.e. suppliers in Perk)
Other master data such as tax rates and payment terms must be set up manually in Perk.
Caution: Business Central On-premise may be hosted on private web servers with restricted access to and from unsecured networks. Make sure that security policies do not prevent traffic exchanges between Perk and the Business Central tenant’s services.
In other words, firewall rules, port forwarding rules, and secure network gateways must set up to allow traffic passthrough to and from Business Central On-premises and Perk before proceeding to synchronize data or trigger exports.
You should set up an automated job to synchronize the data regularly using the Update data in Perk task. However, you can also manually sync master data from Business Central to Perk as required.
The Perk connector also contains a specific task Update Duplicates from Perk that lets you re-synchronize Perk master data in Business Central where the connection between the two systems has been lost for whatever reason (i.e. the connector is reinstalled after an environment update or you have created master data manually in Perk). This task lets you synchronize data for users, cost objects, custom fields (tags), vendors, and categories.
The task results in an Excel file in which it indicates the objects that have been re-matched with Perk master data. Where there is no existing connection between the objets, the report indicates the criteria used for mapping Business Central master data against Perk master data.
Caution: You can only run one option at a time, i.e. re-synchronize users.
Users
You can set up the integration to create a user in Perk directly from Business Central. The Perk user is synchronized with the Employee card in Business Central.
Caution: Users must be created as Employees in Business Central. Users as Vendors is currently not supported.
The Employee Card contains an additional section where you can determine the email address used to synchronize the records.
The value in the Perk email address is used to determine whether the user exists in Perk or not. If Perk doesn’t find a user with that email address, it creates a new user and updates the Employee card with the Perk ID.
By default, when you create a new user in Perk, the user record has the Active status. If Perk finds a user with the same email address, it checks whether it is active or not:
- If the user is inactive, Perk changes the user status to active.
- If the user is active, Perk doesn’t allow you to create a new user since it doesn’t allow more than one user with the same email address.
Caution: If you create a user directly in Perk, this user is not automatically created in Business Central.
If you make any changes to users in Perk, those changes are not updated in Business Central. Make sure that all required data is present in Business Central.
If an employee leaves the company (either temporarily or permanently) and you deactivate the employee in Business Central, you must manually deactivate the Perk user. Perk users cannot be deleted; only made in inactive so they can‘t log into Perk.
Warning: The Employee card’s Status field is not automatically synced with Perk. Make sure to deactivate the Perk user manually in Business Central before changing the status to inactive or deleting them. If the user is inactive in one system or the other, either expenses and invoices cannot processed in Perk or they cannot be posted in Business Central.
With the Perk connector, you can create new users in Perk based on the information available in Business Central. However, you need to update certain fields in the user manually in Perk such as line manager threshold (for line manager approval flows), home and office addresses, language preferences, etc.
Creating a new user manually
To create a new Perk user from Business Central:
- Open the List of Employees.
- Select an existing Employee card.
- In the Perk section, enter the email address used to log into Perk in Perk Email.
-
Click Employee > Create/Update user in Perk. The form includes the Business Central employee number, the employee’s first and last names, and the email address you entered for the Perk email.
- Choose whether to send an invitation email to the user by turning on the Send Invitation to Perk switch. This allows them to create a password for logging into Perk.
Tip: You can choose to schedule the creation of several employees in the same job by clicking Schedule…
Once the user has been created in Perk, you’ll see the Perk ID in the Perk User ID field in the Employee Card.
Creating multiple users in Perk
The Perk integration includes a specific report Create/Update Bulk Employees in Perk that allows you to add multiple users from a range of Employee cards, rather than from each individual Employee card. This report can be scheduled using the standard Business Central functionality.
You can choose whether you want to send the email invitation (in the case you want to use password authentication) or skip the email invitation (if you’re setting up SSO authentication).
You can use the Employee filter to determine a specific range of employees to be created in Perk; otherwise, all employees that are not already active in Perk are created. If the employee card does not contain an email address for the employee, then the user cannot be created in Perk.
As the employees are created, the progress window shows the ID of the employee and the employee name that has been created.
Deactivating and reactivating a user
To deactivate a Perk user:
- Open the List of Employees.
- Select an existing Employee card.
- Click Employee > Deactivate user in YK.
To reactivate an inactive Perk user:
- Open the List of Employees.
- Select an existing Employee card.
- Click Employee > Create/Update user in YK.
Note: If you find that the connection between the Perk and Business Central employee is lost for whatever reason (i.e. the Perk User ID does not appear in the Employee card), you can re-establish the mapping between Business Central and Perk.
Updating user data in Perk
If you make changes to employees in Business Central, you need to synchronize these changes with Perk.
To do this, there are two ways:
- From the Employee card, click Update user in YK. This synchronizes the data for this user only.
- By using the Update data in Perk task. This allows you to set filters such as Active in YK and automatically synchronize all employees that are already active.
Troubleshooting user synchronization issues
Occasionally, the association between the Employee card and the Perk user may be lost. You can re-establish the user mapping between Business Central data and Perk by running the Update Duplicates from Perk task in Business Central.
The task checks Employee cards against the information available in Perk and generates an Excel log file. It determines whether an employee can be mapped against a Perk user using these criteria, in order of preference:
- email address
- code (ERP)
In other words, it checks the Business Central user email address against Perk user email address. If there is a match, it updates the Employee card with the Perk user ID. If there isn’t a match, it then checks the Business Central Employee card ID against the Perk user ERP code. If there is a match, it updates the Employee card with the Perk user ID.
The Excel report provides a detailed log of the updates performed by Business Central so you can check that all actions performed are correct. It contains these columns:
| Column | Description |
|---|---|
| Perk ID | Unique ID of the user in Perk. |
| Perk First name | Name of the user in Perk |
| Perk Last name | Name of the user in Perk |
| ERP code | Code of the user in Perk. This value may or may not match the value in Business Central. |
| Perk active status | Status of the user in Perk |
| Mapped | Indicates whether the Business Central Employee card contains a Perk user ID. |
| Mapping criteria |
If the employee card was updated, indicates the attribute that was used to determine the mapping. The mapping criteria are
|
| Business Central Employee ID | ID of the employee. |
Dimensions
Dimensions can be mapped to Perk custom fields and Perk cost objects. Each dimension can have as many custom field values or cost objects as required.
Creating a dimension manually
To create dimensions and dimension values in Business Central:
- Open the Dimensions list.
- Enter the Code (ERP) of the custom field in which you want to create the custom field values in Perk in the Yokoy Tag Dimension field.
Caution: The custom field must already exist in Perk before you can import Business Central dimensions as Perk custom field values. Otherwise, you see an error Dimension Value X is blocked.
3. Click Dimension > Dimension values.
4. Go to Actions > Functions > Create Dimension in Yokoy.
5. Select whether you want to create the dimension as:
- cost object
- custom field
6. Click OK.
Note: You can synchronize several dimensions at the same time by selecting Create Dimension in Yokoy from the search. Select a filter to retrieve all matching dimensions and click OK. All dimensions are created as the same type (either cost object or custom fields).
The Perk ID is displayed in the Perk Tag Dimension Code or Perk Cost Object ID columns, depending on whether the dimension has been created as a custom field or a cost object. You can consult the created dimensions in Perk in either:
- Settings > Cost management > Cost objects
- Settings > Account > Companies > View spend settings > Enable tags (custom fields for cost allocation)
Deactivating a dimension
If you want to delete a dimension in Business Central, you must deactivate it in Perk first. If you fail to deactivate the dimension in Perk, it can still be used in processing invoice and expenses and may lead to issues when exporting invoices and expenses to Business Central. For example, if you assign an expense to a cost object that has deleted in Business Central, when you try to export that expense from Perk, you will encounter an error since the dimension doesn’t exist.
To deactivate a dimension from Business Central:
- Open the Dimensions list.
- Click Dimension > Dimension values.
- In Actions > Functions, depending on how you created the dimension, select either:
- Deactivate Tag in Yokoy
- Deactivate Cost Object in Yokoy
This changes the status of the custom field value or cost object to inactive in Perk. It does not delete the custom field in Perk.
Inactive custom field values or cost objects cannot be used in new expenses or invoices, but it doesn’t affect exported expenses or invoices. If the cost object or custom field value has been used in an existing expense or invoice, users are prompted to select another cost object or custom field value.
Note: If you find that the connection between the Perk and Business Central is lost for whatever reason (i.e. the cost object or custom field value ID does not appear in the dimension value card), you can re-establish the mapping between Perk and Business Central.
Updating dimension data in Perk
If you make changes to a dimension value in Business Central, you can synchronize the data with Perk again by running the Update data in Yokoy task.
You can set specific filters that allows you to refine the dimension values that should be updated in Perk. For example, you can filter by active cost object or custom field value in Perk to update only cost objects or only custom fields.
Troubleshooting dimensions as cost objects synchronization issues
The Update Duplicates from Yokoy task checks the dimension values against the information retrieved from Perk, determining whether a dimension is mapped against a Perk cost object using these criteria, in order of preference:
- ERP code
- Name
- Cost object description
If Business Central finds a dimension value where the data provided by Perk matches the Business Central data in one of these criteria, it updates the dimension card with the corresponding Perk cost object ID.
When the task has finished, Business Central generates an Excel report containing all Perk categories with their mapping status. More specifically, the report contains this information:
| Column | Description |
|---|---|
| Perk Cost object ID | Unique ID of the cost object in Perk. |
| Perk Dimension Name | Name of the cost object in Perk. |
| BC Description | Name of the dimension in Business Central. |
| Perk ERP code | Code of the cost object in Perk. This value may or may not match the value in Business Central. |
| Perk active status | Status of the cost object in Perk |
| Mapped | Indicates whether the Business Central dimension value contains a cost object ID. |
| Mapping criteria |
If the dimension value card was updated, indicates the attribute that was used to determine the mapping. The mapping criteria are:
|
| BC Dimension value code | ID of the dimension value. |
If not mapped and the dimension is already mapped as another Perk cost object, then it is recommended that you rename any unmapped Perk cost objects with DO NOT USE (check the Perk ID) and deactivate them to prevent confusion.
Troubleshooting dimensions as custom fields synchronization issues
The Update Duplicates from Perk task report checks the dimension values against the information retrieved from Perk, determining whether an account can be mapped against a Perk custom field using these criteria, in order of preference:
- Perk ID of the dimension
- ERP code (i.e. Business Central account code) and dimension name
- ERP code
If Business Central finds a dimension value where the data provided by Perk matches the Business Central data in one of these criteria, it updates the dimension card with the corresponding Perk custom field value ID.
When the task has finished, Business Central generates an Excel report containing all Perk categories with their mapping status.
More specifically, the report contains this information:
| Column | Description |
|---|---|
| Perk Tag ID | Unique ID of the custom field value in Perk. |
| Perk Dimension Name | Name of the custom field value in Perk. |
| Perk ERP code | Code of the custom field value in Perk. This value may or may not match the value in Business Central. |
| Perk active status | Status of the custom field value in Perk |
| Mapped | Indicates whether the Business Central dimension value contains a custom field value ID. |
| Mapping criteria |
If the dimension value card was updated, indicates the attribute that was used to determine the mapping. The mapping criteria are:
|
| BC Dimension value code | ID of the dimension value. |
GL accounts
GL accounts can be mapped against Perk’s expense and invoice categories.
A single GL account in Business Central can represent separate entities in Perk (invoice category or expense category).
Caution: To successfully post to GL accounts from Perk for expenses and invoices, the G/L account definition in Business Central must have Posting account type and be enabled for direct posting.
Creating GL accounts in Perk
To create Perk categories from Business Central:
- Open the Chart of Accounts list.
- Select the GL account you want sync.
- Click Account > Create/Update GL account in Perk.
- Select whether you want to sync against a Perk expense category, an invoice category, or both by turning on the corresponding toggle switch.
- Click OK.
Once created, you can view the Perk category ID in the Expense processing category ID or Invoice category ID field.
Invoice and expense categories are separate entities in Perk. While the category name may be the same, only expense categories can be used in expenses (and invoice categories in invoices). However, the data can be posted to the same GL account as appropriate.
If you need to make changes to the GL account card, you can update the changes in Perk by clicking Create/Update GL Account in YK.
Warning: Perk categories cannot be deleted, only deactivated. To deactivate a category from Business Central, click Deactivate GL Account in YK.
Business Central doesn’t set a symbol to represent the icon in Perk. However, you can edit the category once created in Perk to add a symbol.
Updating GL account data
If you make changes to the GL account in Business Central (e.g. name or synchronize as both an expense and an invoice category), you can update this information in Perk in two ways:
- From the G/L Account card by clicking Create/Update G/L Account in YK.
- By using the Update data in Perk task. This allows you to set filters such as Active in YK and automatically synchronize all GL Accounts that are already active as either expense categories or invoice categories, or both.
Troubleshooting category (expense/invoice) synchronization issues
The Update Duplicates from Yokoy task lets you re-synchronize Perk categories (expense or invoice) to Business Central GL accounts. This task checks the GL accounts against the information retrieved from Perk, determining whether an account can be mapped against a Perk category using these criteria, in order of preference:
- Perk ID of the category
- ERP code (i.e. Business Central account code)
If Business Central finds an account where the data provided by Perk matches the Business Central data in one of these criteria, it updates the GL account card with the corresponding Perk expense and/or invoice category ID.
When the task has finished, Business Central generates an Excel report containing all Perk categories with their mapping status. More specifically, the report contains this information:
| Column | Description |
|---|---|
| Perk Category ID | Unique ID of the category in Perk. |
| Perk Category Name | Name of the category in Perk. |
| ERP code | Code of the category in Perk. This value may or may not match the value in Business Central. |
| Perk active status | Status of the category in Perk |
| Mapped | Indicates whether the Business Central G/L account contains a Perk category ID (expense or invoice, depending on the report run). |
| Mapping criteria |
If the G/L account card was updated, indicates the attribute that was used to determine the mapping. The mapping criteria are:
|
| Business Central G/L Account number | ID of the G/L account. |
Vendors (suppliers)
Business Central vendors are mapped to Perk suppliers. You can create a vendor in Business Central and then synchronize that vendor card with Perk.
Business Central synchronizes key information fields such as name, address, tax ID, bank information, contact details in Perk. The Vendor card no. is stored as Supplier ID (ERP) in Perk.
Note: While you can create suppliers in Perk directly from Business Central, the default settings to be used for the supplier, such as default category, cost object, payment terms, approver, and coding type, as well as legal entity-level payment terms, need to be set up directly in Perk.
Once the Vendor has been created in Perk, you’ll see the Perk ID in the Perk Organization Supplier ID and Perk Company Supplier ID fields in the Vendor Card.
Perk creates suppliers at organization and company level to allow vendors to be used as cross-company.
Creating a vendor
To create a vendor from Business Central:
- Open the List of Vendors.
- Select an existing Vendor card.
- Update the Vendor card with all required data.
- Click Vendor > Create/Update Vendor in YK.
Tip: You can synchronize several vendors at the same time by selecting Create Vendor in Perk from the search. Select a filter to retrieve all matching vendor cards and click OK.
Deactivating a vendor
To deactivate a vendor from Business Central:
- Open the Vendors list.
- Select an existing Vendor card.
- Update the Vendor card with all required data.
- Click Vendor > Deactivate Vendor in YK.
If you deactivate a vendor temporarily and want to reactivate it in Perk again, click Create/Update Vendor.
Warning: The Vendor card’s Status field is not automatically synced with Perk. Deleting a Vendor in Business Central does not delete or change the status of its Perk counterpart.
Before deleting a vendor in Business Central, make sure to deactivate the Perk Vendor manually by clicking Deactivate Vendor in Perk. If the vendor is inactive in one system or the other, invoices cannot processed in Perk or cannot be posted in Business Central.
If a Vendor is deleted in Business Central before it is deactivated in Perk, all invoice exports in which the Vendor is referenced will result in errors.
Updating vendor data in Perk
If you make changes to vendors in Business Central, you can update this information in Perk in two ways:
- From the Vendor card by clicking Create/Update Vendor.
- By using the Update data in Yokoy task. This allows you to set filters such as Active in Yokoy and automatically synchronize all vendors that are already active.
Troubleshooting vendor synchronization issues
If you find that the connection between the Perk supplier and Business Central vendor is lost for whatever reason (i.e. the Perk Vendor ID does not appear in the Vendor card), you can run a task Update Duplicates from Yokoy to re-synchronize Perk suppliers to Business Central vendors.
This task checks the vendors against the information retrieved from Perk, determining whether a supplier can be mapped against a Perk vendor using these criteria, in order of preference:
- Perk organization ID and legal entity ID present in the Vendor card
- ERP code (i.e. Business Central vendor code)
- VAT registration no.
- Name and second name
If Business Central finds a vendor where the data provided by Perk matches the Business Central data in one of these criteria, it updates the Vendor card with the corresponding Perk organization supplier and legal entity supplier IDs.
When the task has finished, Business Central generates an Excel report containing all suppliers with their mapping status. More specifically, the report contains this information:
| Column | Description |
|---|---|
| Perk Organization Supplier ID | Perk unique ID to identify the supplier in the organization. Not displayed in Perk. |
| Perk Legal Entity Supplier ID | Perk unique ID to identify the supplier in the company. Displayed in Perk. |
| Perk Supplier Name | Full company name of the supplier. Displayed in Perk in the supplier master data. |
| Perk Tax ID | Supplier’s legal tax number. Displayed in Perk in the supplier master data. |
| Perk ERP code | Supplier ERP ID. Displayed in Perk in the supplier master data. |
| Perk Active | Whether the supplier is active in Perk or not. |
| Mapped | Whether the supplier has been linked to a Business Central vendor. Boolean. |
| Mapping criteria |
Indicates the data used for mapping the Perk supplier to the Business Central vendor. It can be:
|
| Business Central Vendor No. | Number of the vendor in Business Central |
Tip: If you’re using Invoice processing, configure Business Central and Perk to import transactional data.