> ## Documentation Index
> Fetch the complete documentation index at: https://docs.maesn.com/llms.txt
> Use this file to discover all available pages before exploring further.

# weclapp

> Integrate weclapp easily with Maesn’s Unified API. See the documentation with detailed system coverage and setup prerequisites.

**TARGET\_SYSTEM:** `weclapp`

<div className="integration-table">
  |                      |                          Read                          |                         Create                         |                         Update                         |                         Delete                         |                         Webhook                        |
  | -------------------- | :----------------------------------------------------: | :----------------------------------------------------: | :----------------------------------------------------: | :----------------------------------------------------: | :----------------------------------------------------: |
  | Accounts             | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Async task           | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Bank accounts        | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Bills                | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Bill lines           | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Booking proposals    | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Contacts             | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Customers            | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="check" iconType="solid" color="#4db975" /> |
  | Credit notes         | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="check" iconType="solid" color="#4db975" /> |
  | Dimensions           | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Expenses             | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Files                | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Fiscal years         | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Goods receipts       | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Goods receipt lines  | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Invoices             | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="check" iconType="solid" color="#4db975" /> |
  | Invoice lines        | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Items                | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Journals             | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Journal entries      | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Offers               | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Offer lines          | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Open items           | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Payments             | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Payment terms        | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Projects             | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Purchase orders      | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Purchase order lines | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Sales orders         | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="check" iconType="solid" color="#4db975" /> |
  | Sales order lines    | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Suppliers            | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="check" iconType="solid" color="#4db975" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="check" iconType="solid" color="#4db975" /> |
  | Tax rates            | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Transactions         | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Trial balance        | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> | <Icon icon="xmark" iconType="solid" color="#828282" /> |
  | Units                | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Users                | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
  | Vendor credits       | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> | <Icon icon="phone" iconType="light" color="#828282" /> |
</div>

<Icon icon="check" iconType="solid" color="#4db975" /> = Supported by Maesn <br />
<Icon icon="phone" iconType="light" color="#828282" /> = On demand - contact us<br />
<Icon icon="xmark" iconType="solid" color="#828282" /> = Not supported by weclapp <br />

## How to connect to weclapp

As a customer of weclapp, you can easily retrieve the API key used for connecting to your weclapp data.

<Steps>
  <Step title="Prerequisites">
    Before you begin, make sure you have the following:

    * A weclapp account with administrator permissions to generate and retrieve the Personal Access Token.

    You can sign-up for a free trial at [https://www.weclapp.com/en/register/](https://www.weclapp.com/en/register/), if you do not have a weclapp account already.
  </Step>

  <Step title="Retrieve the API key">
    <Note>
      Please note: you must replace 'weclappTenantId' inside the url's paths with the id of your instance of weclapp.
    </Note>

    Log in to weclapp using your account credentials and the provided url, properly edited with your weclapp tenant id, to generate and retrieve the Access Token: [retrieve the Access Token](https://weclappTenantId.weclapp.com/webapp/view/settings/GeneralSettingsOverview.page).
    Enter your password in the 'API token' section to generate new API keys.
  </Step>

  <Step title="maesn Connect setup">
    Paste your weclapp api token in to the 'API key' field and your weclapp tenant id in to the 'weclapp Tenant Id' field in maesn Connect and press 'submit'. If the Token and the weclapp Id are valid, the connection will be established and a success message will be displayed.

    Your weclapp account is now connected!
  </Step>
</Steps>

## Webhooks

Weclapp supports the following parameters for webhooks:

Resources:

* `CUSTOMER`
* `SUPPLIER`
* `INVOICE`
* `CREDIT_NOTE`
* `SALES_ORDER`

Event types:

* `CREATED`
* `UPDATED`
* `DELETED`

Weclapp needs both resource and event type to be able to send webhook events.

The subscription is created **per customer**, which means for each customer, you will create a customized subscription for the events and resources you want to be notified about.
To set this up, call Maesn's create webhook endpoint `POST /webhooks?companyId=<companyId>` (`companyId` query parameter required if not using the interactive flow) with the following example body:

```javascript Example code snippet theme={null}
    const response = await axios.post(url, {
        "callbackUrl": callbackUrl,
        "eventType": "CREATED",
        "resource": "CUSTOMER"
    }, {
        headers: {
            'X-API-KEY': apiKey,
            'X-ACCOUNT-KEY': accountKey
        }
    });
```

It will return the `id` associated with the subscription:

```json Example response theme={null}
{
    "data": {
        "id": "830251",
        "callbackUrl": "https://example.com/webhook-endpoint/12345",
        "createdDate": null,
        "expiresDate": "null",
        "secret": "2f1fd5f883d4c0adf5b31b91e4d6ae2d2975620c67bac8fdb864c78047b1d522"
        "updatedDate": "null"
    },
    "meta": {}
}
```

At this point, your system is ready to receive end-user–related events at the callback URL you provided. The event response will provide the following information:

```json Example event body theme={null}
{
  "eventType": "CREATED",
  "filterDate": null, //not supported by weclapp
  "resource": "CUSTOMER",
  "resourceId": "1605408d-ed88-4228-8a12-ab857a2972d8",
  "userId": null //not supported by weclapp
}
```

To delete the webhook subscription, you can call the `DELETE` `/webhooks/{webhookId}?companyId=<companyId>` endpoint provinding both your `X-API-KEY` and the end user `X-ACCOUNT-KEY`.
