The LemonERP connection imports basic data from LemonERP into Spotilla and sends selected billing, order and worktime data from Spotilla to LemonERP. Enable transfers in stages: first verify the connection and basic data mappings, check the data to be transferred, and finally verify the result in both systems.

Open the connection and save credentials

You need Spotilla administrator permissions and a LemonERP connection enabled for your organization. In the browser, open Settings → Integrations → LemonERP. The connection has its own Authentication, Settings and Integration Logs tabs. If LemonERP is missing, check availability with your Spotilla contact. See also the prerequisites for enabling an integration.

On the Authentication tab, select the intended Environment: Production or Sandbox. Enter the Base URL, Username, Password, Database and API Key supplied by the connection administrator. Click Save on this tab and then Test Connection.

Saved credentials are masked. Leaving a credential field empty or keeping its masked value preserves the previous value; clearing the field does not remove the saved credential. Saving credentials again releases a transfer block caused by a login error. Correct any incorrect details before saving again.

The connection test uses the saved credentials and checks login. A successful test does not confirm that customers, products, invoices or entries are valid or that they will be transferred.

Confirm whether you use this LemonERP tab or the old Lemonsoft settings form. The old form uses Sentral API key. Use it only if your organization's connection has been arranged through that implementation: the credentials and transfer options differ between the connections.

Save transfer settings and prepare dependencies

Open the Settings tab and expand the section for the transfer you need by clicking its heading. Each section's In use option controls that transfer. Save transfer options, filters and field mappings using the Save button on this tab. Saving authentication details and saving transfer settings are separate actions. Previews and transfers use the saved settings.

A mapping identifies which record for the same data is used in the other system. A customer, user or product with the same name does not replace a required mapping. Prepare transfers in this order:

  • Import the required Cost Centers and Chart of Accounts before transferring customers and selecting sales accounts.
  • Map customers before transferring task sales orders and contract invoices.
  • Map suppliers and verify products before transferring purchase orders.
  • Map users and salary types before transferring worktime and absences.
  • Prepare the Spot product transfer for the maintenance target on a sales order, and the offer-to-project mapping for tasks related to a project.

A transfer's test button opens a preview of the data. Wait for it to finish and open View Results in the same section. Check records to be created and mapped, updates, skipped records and errors before running the actual transfer. The preview does not itself perform the actual transfer. The worktime results window has a separate button for the actual synchronization.

Cost centers, chart of accounts, users and salary types

The Cost Centers section imports cost centers from LemonERP into Spotilla. If necessary, limit the selection using Cost centers to sync; an empty selection means all. An existing cost center is mapped by number, a missing one is created, and the name is updated. Cost centers without a code are skipped. Review Test Cost Center Sync, start the actual import with Sync Now, and check Cost Center Mapping Overview. Compare the numbers and names with LemonERP and check the log.

The Chart of Accounts section imports accounts from LemonERP as Spotilla sales accounts and maps them by account number. Account number filter patterns limits processing: for example, 30** means four-digit accounts starting with 30, as each asterisk represents one digit. Comma-separated patterns are alternatives; an empty filter allows all. Manual processing also includes Spotilla sales accounts that match the filter and have not yet been mapped. A mapping alone does not guarantee that the account is valid for billing in the receiving system.

Use the section's Test Chart of Accounts Sync and Sync Now buttons. Check Chart of Accounts Mapping Overview, the log, and the validity of the account numbers to be used in LemonERP.

User Sync imports people from LemonERP into Spotilla. You can limit the selection using Persons to sync, Professions to sync and Email domain filter; these filters are applied together. Separate domains with commas. Skip persons without email also excludes invalid email addresses.

An unmapped person can be linked to one eligible Spotilla account by email address. Multiple matching accounts, a protected account, a conflicting mapping or user number prevent linking. A new user requires a name and a valid email address of no more than 50 characters. An already mapped user is skipped: do not assume that this feature will update all subsequent changes to the user's details. For worktime transfers, specifically check that the Spotilla user number matches the LemonERP person number.

Open the section's Test Sync and then View Results. Perform Full User Sync starts the actual processing. Check User Mapping Overview, the log, and the user's details and permissions in Spotilla; compare the person number with LemonERP.

In the Salary Types section, select Salary forms to sync. An empty selection does not import all salary types. The import creates or maps log entry subtypes and updates their name, code and description. A new subtype is created as active for task entries. Its unit is pieces if the LemonERP salary form has a piece formula; otherwise, it is time. Check that the subtype is suitable for your entries before using it.

After checking the preview, start the import with the section's Sync Now button. Verify the mapping in Salary Type Mapping Overview, compare the salary type number and name with LemonERP, and check the log.

Customers and delivery customer folders

Customer Sync imports customers, contacts and delivery customer folders from LemonERP into Spotilla. Select an existing folder in Root collection for customer sync. Customer folders are created under it unless the customer's LemonERP cost center has been mapped to another existing folder under Cost Center Mapping. This folder mapping is separate from the customer's own cost center information.

An existing Spotilla customer is mapped by customer number. A mapped customer's details are updated from LemonERP, so the transfer may also change contact and billing details edited in Spotilla. A new customer is not created unless its cost center number can be mapped to a cost center in Spotilla. This transfer does not update an existing customer's cost center.

Delivery customers are imported as delivery customer folders under the main customer's folder. Select Delivery customer device card if needed. Delivery customer naming determines whether to use the street name for delivery customers with identical names or always use the customer's name. By default, the street name is used when names are identical. The delivery customer number is added before the name.

The section's customer filters are passed to LemonERP's customer search. A scheduled partial update retrieves customers created or updated during the current day and overrides the manually set creation and update date limits for that search. A full manual transfer uses the saved filters. Delivery customers marked for deletion in LemonERP are skipped; skipping does not delete a previously created Spotilla folder.

Review Test Full Customer Sync and View Results, then start the transfer with Perform Full Customer Sync. Check Customer Mapping Overview, the customer and delivery customer folders, and the log. Compare customer and delivery customer numbers with LemonERP.

Products and the Spot product transfer

Product Sync sends Spotilla products to LemonERP. It maps an existing product using a LemonERP SKU matching the Spotilla product code, or creates a missing product. Already mapped products are skipped. The feature does not continuously update all product changes or transfer warehouses or stock balances. Deleted Spotilla products are not included in the regular product transfer.

Under Product Category Mapping, map Spotilla categories to LemonERP product groups. The category-specific group takes priority; otherwise, Default product group is used. Review Test Full Product Sync and start Perform Full Product Sync. Verify Product Mapping Overview, the log, and the LemonERP product's code, group and basic details.

Spot Product Sync is a separate transfer. It creates LemonERP products from active Spots to identify the maintenance target on a sales order. The product code consists of the first 30 characters of the Spot's UUID, the name comes from the Spot's name, and the additional name comes from the folder; prices are zero. Select LemonERP product group. Already mapped Spots are not created again.

Review the section's Test Spot Product Sync and View Results, then start Perform Full Spot Product Sync. Verify Spot Product Mapping Overview, the log, and the corresponding product in LemonERP before transferring sales orders that use a maintenance target.

Selecting and pricing task sales orders

Task Sales Orders sends completed tasks that have not yet been transferred from Spotilla to LemonERP. The customer of the task's Spot folder must have a LemonERP mapping. Sync only billable tasks is enabled by default; disabling it also allows non-billable tasks if the other conditions are met. An already mapped task is not sent again to update subsequent changes.

Select Sales order number series. Under Task filter criteria (completed tasks matching these criteria will be sent as sales orders), filter groups are alternatives: matching one group is enough. Within a group, Task Templates, Task Categories and Task Forms are also alternatives. If any are selected, at least one match is required. Selected Customer Groups are an additional condition that must be met. Empty task criteria allow all tasks; a completely empty group can therefore expand the selection to all otherwise eligible tasks.

Rows primarily use the task customer's sales account. If there is none, Default Sales Account is used only if the selected account has a LemonERP mapping. The product's own VAT percentage overrides Default Product VAT%, including when the product's VAT is zero. If neither is set, zero is used. Payment term (days) is sent only if it is a valid positive integer.

Sales order field mapping determines which LemonERP fields receive the task number, description, references, comments and selected form fields. Unmapped information is not transferred through these mappings. Values going to the same target field are joined with line breaks. Internal review comments can also be transferred if mapped: check the target field and its visibility in LemonERP.

During task review, in the browser's task window, select Data sent to LemonERP in the LemonERP sales order section of the Products tab:

  • Product rows: the task's products are transferred with their quantities and pricing details. This is the default method.
  • Lump sum: one row is sent, with a quantity of one and the entered lump sum as its unit price excluding VAT.
  • Product rows at zero price + lump sum: the task's products are transferred with their quantities at zero prices, and the billable amount is sent on a separate lump-sum row.

Lump-sum modes require Lump-sum product to be selected in the integration settings and that product to have a product code. Enter Lump sum (EUR excluding VAT); in the browser, the minimum value is EUR 0.01 and the amount must be less than EUR 10 000 000 000 000. The offer's subtotal excluding VAT may be suggested as the initial value, but check it before approving. The lump-sum row's VAT is determined by the selected product's VAT or the integration default.

A user with permission to complete the task can change these selections while the task is under review. The selections on a completed task are read-only. See the instructions for reviewing a task and its report.

A regular product row primarily uses the sales unit price saved on the task's product row. If none is saved, the product's positive sales price is used, otherwise its price. If this fallback price is not positive, pricing information is not sent; you must therefore check pricing in the receiving system. A row with a missing product is skipped.

Sales order prices are treated as excluding VAT. The row's net amount is quantity × unit price, rounded to two decimal places. VAT is calculated from this rounded net amount and rounded to two decimal places; the total is net + VAT. For example, 3 × EUR 19.99 with VAT at 25.5% produces a net amount of EUR 59.97, tax of EUR 15.29 and a total of EUR 75.26. Rows are sent without reducing LemonERP stock balances.

The number of a mapped delivery customer folder is sent as the delivery customer. A task related to a project-type offer waits for a valid LemonERP project mapping before transfer.

Review Test Sales Order Creation and View Results. Despite its name, this feature is a preview. Perform Full Sales Order Sync starts the actual processing, and an enabled transfer also processes tasks in the background. Verify Sales Order Mapping Overview, the log, and the customer, number series, field contents, rows, prices and VAT on the LemonERP order.

Contract invoices and preview

The Contract Invoices section sends Spotilla contract invoices with the status Waiting to be processed to LemonERP. Select the number series under Create Invoices as. The customer must be mapped to LemonERP. An already mapped invoice is skipped. If you select both Contract Groups and Contract Types, the contract must match both filters; an empty filter does not restrict that property.

Create Items in Lemonsoft allows attempts to create unmapped products on invoice rows before creating the invoice. It does not guarantee successful product creation: also check product-related errors. Sales invoice field mapping controls how the contract name, description and billing details are placed in LemonERP fields. Values going to the same field are joined with line breaks. The billing period is added to the invoice description.

The invoice reference allows digits; spaces are removed. An empty reference is allowed. The billing reference saved on the invoice is used first, and if it is missing, the contract's current billing reference is used. The contract's alternative billing details are sent when enabled.

The quantity on a contract invoice row is derived from the row quantity and the billing interval multiplier. The row amount excluding VAT is calculated as quantity × multiplier × unit price after discount and rounded to the nearest five cents; halfway values are rounded up. The integration uses this same net row amount. VAT is calculated from the net amount using the row's VAT percentage and rounded to cents. The row's own sales account overrides the customer's sales account, and the customer's cost center is sent on the rows. Invoice rows do not reduce LemonERP stock balances.

Test Contract Invoice Sync checks the data without creating invoices or products in LemonERP. Once it finishes, open View Results and check the invoices to be transferred, missing customer mappings, skipped invoices, errors and the data summary. The preview does not start the actual invoice transfer.

If needed, start Perform Full Contract Invoice Sync; an enabled transfer also processes waiting invoices in the background. A successful transfer saves the LemonERP invoice number and changes the Spotilla invoice's status to Processed. Check Contract Invoice Mapping Overview, the invoice number and status in Spotilla, the log, and the received invoice's rows, billing period, discounts and taxes in LemonERP. The background to contract billing is described in the contract billing instructions.

Suppliers and purchase orders

Supplier Sync transfers active Spotilla suppliers to LemonERP as suppliers. A supplier must have a name and supplier number. An existing supplier is mapped by number, a missing one is created, and changed details of an already mapped supplier are updated.

Review Test Full Supplier Sync and View Results before clicking Perform Full Supplier Sync. Verify the section's Supplier Mapping Overview, the log, and the supplier's number and contact details in LemonERP.

Purchase Order Sync sends a separate LemonERP purchase order for each supplier section of a Spotilla purchase order. The supplier must have a mapping, the section must have order rows, and every row must have a product. An unmapped product needs a product code: a matching LemonERP product is mapped or a missing one is created before the order. A product lookup or creation error prevents that order from being sent.

If needed, set Payment term (days), Delivery term and Delivery method. Preview using Test Purchase Order Sync. Create Missing POs in LemonERP starts creating new orders; it is not a button for updating mapped orders. Creation can also start when a supplier section is saved at the draft, sent, partially delivered or completed stage, if the transfer is enabled.

Already mapped orders are updated in the background. Updating requires a usable LemonERP order number and successful retrieval of the current order. The comparison takes account of changes to status and order rows, including delivered quantities. The status sent to LemonERP is determined by the status of the entire Spotilla purchase order: draft is Kirjattu, active is Vahvistettu, partially delivered is Osatoimitettu, and completed is Toimitettu. The supplier section's status and the entire order's status are separate things.

Check Purchase Order Mapping Overview, the log, and each supplier's LemonERP order number. In the receiving system, compare the status, rows, ordered and delivered quantities, and delivery terms. A supplier section being added to the queue does not yet mean that the order is complete.

Projects for won offers

Won-Offer Project Sync creates a LemonERP project or maps the offer to an existing project by project number. The offer must be won and the project number must be a positive integer without leading zeros. Changes to mapped projects are also updated in the background.

Project details are derived from the offer and its related task. They include the title, description, offer amount and number, and available customer, responsible person and target details. The earliest resource allocation start and latest end determine the project's start and end dates; the commissioning date comes from completion of the automatic task. Project field mappings supplement selected description and note fields. Updates may overwrite changes made to these details in LemonERP.

Review Test Won-Offer Project Sync and View Results, then start Perform Won-Offer Project Sync. Verify Won-Offer Project Mapping Overview, the log, and the LemonERP project's number, customer, contents and dates. The project mapping enables sales order transfers for its related tasks.

Worktime, piece-based entries and absences

Worktime Sync sends approved entries with the status Valmis from Spotilla to LemonERP. The user must have a mapping and a valid positive LemonERP person number as their Spotilla user number. A regular entry needs a mapped salary type as its subtype. Incomplete, unapproved and previously transferred entries are not transferred by this feature. A successful transfer saves the mapping and changes the entry's status to Processed.

Set Sync frequency and, if needed, Sync weekday. Without settings, the default is weekly on Monday. Daily transfers do not use a weekday restriction. With the other options, the transfer waits for the selected weekday and sufficient time since the previous transfer processing: approximately seven days for weekly, 14 days for every other week, and 28 days for monthly. Monthly therefore does not mean a particular day of the calendar month or limit the data to the previous month. The schedule does not guarantee an exact time of day.

A regular time entry uses the saved positive number of minutes and the entry's start and end times. Time is sent to LemonERP's hour fields in seconds. An entry with a piece-based subtype is handled differently: the piece quantity is converted into a time for transfer, where the integer part represents hours and the decimal part is rounded to minutes. For example, 8.5 pcs becomes 8 h 30 min, or 30 600 seconds. The start is set to 00:00:01 on the entry date in the service's time zone, and the end is calculated from it, 08:30:01 in this example. This time is generated for the transfer; it is not measured worktime. The piece quantity must be valid and positive.

Absences require separate selections: enable Sync sick-leave entries and select Sick-leave payroll code and, if needed, enable Sync vacation entries and select Vacation payroll code. The selected salary types must have mappings. Enabling regular worktime transfers alone does not enable absence transfers.

Entries saved on Android and iOS go through the same server-side transfer and follow the same approval, salary type and mapping requirements. The connection configuration, preview and management of task sales order selections described here are performed in the browser.

Open the section's Test Worktime Sync. If needed, filter by User, Start date and End date, select Run Preview, and open View Results once it finishes. Check the entries to be transferred and the reasons for skipped entries.

Execute Sync in the results window sends all entries found eligible for transfer in the preview; the count on the button shows their number. Filtering the table display does not reduce this set. The section's Perform Full Worktime Sync, in turn, starts processing all eligible entries regardless of the schedule; the preview's user and date filters do not limit this button.

Verify Worktime Mapping Overview, the entries' Processed status and the log. In LemonERP, check the correct person, salary type, date and time, and any customer and project details. Customer and project details are sent with the entry when a suitable mapping exists; their absence alone does not prevent a worktime transfer.

Verify results and correct errors

Check each enabled transfer's own mapping overview and the event for that specific data on the Integration Logs tab. Compare the result with the record in the receiving system. A completed preview, an enabled setting and a notification that something has been queued each mean something different from a successful transfer.

Correct a missing mapping, invalid number or other data error before processing again. Do not interpret disabling a transfer setting as deleting already transferred data from the other system. Handling of already mapped data varies: products and task sales orders are skipped, while suppliers and offer projects, for example, can be updated. Check successful and failed items before a broad rerun. See troubleshooting integration log errors.