Skip to content

Installation Instructions

Preparations

  • Check that the requirements are met.
  • Preparations in Billecta: Read the installation instructions for Billecta here

Backend

Add limepkg-billecta-integration to a customer solution.

Run poetry add limepkg-billecta-integration to add the package as dependency in you solution's pyproject.toml file.

Lime Admin

  • Run the setup/addon installer for the package.
  • Map all required fields in the config

Generate an API key for receiving Webhooks from Billecta

In order for Lime to be able to listen to webhooks from Billecta, an API-key needs to be created for the user billectawebhook@api that is created in the setup. Save this API-key in the password manager.

User Group Permissions

During the setup process, the groups Billecta webhook and Billecta task will be created, and also the API user billectawebhook@api and task user limepkg-billecta@lime.tech. There are still some manual steps needed after the setup and these are described below.

Policies for the Group Billecta webhook
  1. The policies should be created with as little access as possible for the group. Below is a table showing how these policies should be setup. The name of the policy is just a recommendation, but please keep it uniformly in the solution. The access (R, W, A, D) refers to the group Billecta webhook. Of course there is probably other users in the Lime solution that should also have access to a lot of the tables below so these rights need to be set on a customer basis.

    Policy name R W A D Table
    tbl_integration_monitor integration_monitor
    tbl_integration_monitor_batch integration_monitor_batch
    tbl_integration_monitor_log integration_monitor_log
    tbl_creditordebtor creditordebtor
    tbl_order order
    tbl_invoice invoice
    tbl_coworker coworker
    tbl_invoicerow invoicerow
    tbl_creditorarticle creditorarticle
    tbl_article article
    tbl_payment payment
    tbl_creditor creditor
  2. Add more policies that matches the custom setup for this package. Meaning in lime-admin for this package, there can be customer specific config for certain tables and fields. These need to be setup per customer basis. Below is an example of how this policy config can look if you are using the "standard/recommended" setup for Real estate.

    Policy name R W A D Table
    tbl_contact contact
    tbl_lease lease
    tbl_orderrow orderrow
Policies for the Group Billecta task
  1. The policies should be created with as little access as possible for the group. Below is a table showing how these policies should be setup. The name of the policy is just a recommendation, but please keep it uniformly in the solution. The access (R, W, A, D) refers to the group Billecta task. Of course there is probably other users in the Lime solution that should also have access to a lot of the tables below so these rights need to be set on a customer basis.

    Policy name R W A D Table
    tbl_integration_monitor integration_monitor
    tbl_integration_monitor_batch integration_monitor_batch
    tbl_integration_monitor_log integration_monitor_log
    tbl_creditor creditor

Application configuration settings

Add the following to the application config (in Lime Cloud for cloud customers, application_config.yaml for on-premise customers or local development):

<application-name>:
    config:
        billecta:
            api:
                base_url: "https://apitest.billecta.com/v1"
    secrets:
        billecta:
            api:
                authentication: "<Authorization header value>"

Authentication options

The authentication value must be set to the full Authorization header value, using one of the following formats:

  • Basic Authentication:
    'Basic ' followed by the Base64-encoded string of username:password

  • SecureToken Authentication:
    'SecureToken ' followed by the Base64-encoded SecureToken

Make sure to include the correct prefix (Basic or SecureToken) and a space before the encoded value.

Read more in the Billecta API documentation for authenticating requests: Billecta API Authentication

Install and configure Integration monitor

Follow integration monitor installation instructions. limepkg-integration-monitor is already a dependency to this package, that step can therefore be skipped.

Recommendation: Add limepkg-cleanup

This step is not a requirement, but since this package can produce quite a lot of integration_monitor_log objects, it is best practice to cleanup objects not needed anymore.

Follow the instructions in the package limepkg-cleanup to add it to your solution and configure the scheduled task. limepkg-cleanup