> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.solvimon.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.solvimon.com/_mcp/server.

# Campfire

Connect Solvimon to Campfire to import your customers, billing entities, and products, and to push contracts, invoices, and payments for revenue recognition and general accounting.

---

## Prerequisites

* An active Campfire account.
* A Campfire API key. You can retrieve this in Campfire under **Settings → API Keys**.

## Connect Solvimon to Campfire

#### Connect your Campfire account

In Solvimon Desk, go to **Menu → Settings → Integrations → Campfire** and click `Connect to Campfire`. You'll see a pop-up like the one shown below.

![](/_fern-img/38ee616dcdc4056d2eaa4bc68044e5f7e6f3dbc976cd20aeee7d6b5683f584a5.webp)

Click `Connect` and enter your Campfire API key when prompted.

#### Configure and enable workflows

Once authenticated, open the configurations tab to enable the workflows you want to run against your Campfire platform. The supported out-of-the-box workflows are listed under configuration; if you don't see the one you're looking for, reach out to your Customer Success Manager.

For the **Sync Invoices** workflow, you can configure the following options:

* **Allocate full invoice amount to a single Campfire item**: when enabled, the entire invoice amount is allocated to one Campfire item, and you must provide a **Revenue Campfire Item ID** (the Campfire product item used to allocate revenue). When disabled, each invoice line is pushed individually.
* **Create Subscriptions on a contract**: when enabled, Solvimon creates a Subscription in Campfire on the associated contract for each synced invoice.

## Data flow

The integration runs six workflows. Imports are triggered manually from Desk; exports run automatically when the corresponding resource changes in Solvimon.

```mermaid
flowchart LR
    CF[Campfire] -->|customers, billing entities, products, payments| SV[Solvimon]
    SV -->|contracts, invoices| CF
```

| Workflow                | Direction           | Trigger                                                   |
| :---------------------- | :------------------ | :-------------------------------------------------------- |
| Import customers        | Campfire → Solvimon | Manual                                                    |
| Import billing entities | Campfire → Solvimon | Manual                                                    |
| Import products         | Campfire → Solvimon | Manual                                                    |
| Create contracts        | Solvimon → Campfire | Automatic, on subscription activation                     |
| Export invoices         | Solvimon → Campfire | Automatic or manual, based on the **Send to ERP** setting |
| Sync payments           | Campfire → Solvimon | Automatic, via webhook                                    |

#### Import customers

You can manually trigger this workflow to import your Customers from Campfire to Solvimon to speed up your onboarding process.

Every `Customer` entity in Campfire is treated as a `Customer` in Solvimon, with the following field mapping:

| Solvimon                             | Campfire                    |
| :----------------------------------- | :-------------------------- |
| reference                            | id                          |
| email                                | email                       |
| legal\_name                          | name                        |
| tax\_ids                             | vat\_number                 |
| registered\_address.line1            | billing\_address\_street\_1 |
| registered\_address.line2            | billing\_address\_street\_2 |
| registered\_address.city             | billing\_city               |
| registered\_address.postal\_code     | billing\_zip\_code          |
| registered\_address.country          | billing\_country            |
| custom\_field (Campfire Customer ID) | id                          |

#### Import billing entities

You can manually trigger this workflow to import details of your [billing entities](/platform-guides/platform-configuration/billing-entities).

Every `Entity` in Campfire is treated as a `Billing Entity` in Solvimon. You can add more than one Billing Entity to your platform. To be valid for invoicing in Solvimon, every Billing Entity needs the following:

* Name
* Tax ID
* Address
  * First line
  * Postal code
  * City
  * Country (read more about [supported locales](/platform-guides/for-developers/locale) and country code usage)

> **Warning**
>
> Solvimon requires a Country on every Billing Entity, but Campfire does not enforce this. If a Campfire entity is missing a country, the import will fail for that record. Make sure all entities in Campfire have a country set before importing.

The integration syncs the following fields from Campfire:

| Solvimon                               | Campfire                    |
| :------------------------------------- | :-------------------------- |
| reference                              | id                          |
| legal\_name                            | name                        |
| tax\_ids                               | tax\_identification\_number |
| registered\_address.line1              | address\_1                  |
| registered\_address.city               | city                        |
| registered\_address.postal\_code       | zip\_code                   |
| registered\_address.country            | country                     |
| custom\_field (Campfire Subsidiary ID) | id                          |

#### Import products

You can manually trigger this workflow. Products configured on your Campfire account are synced to Solvimon and created in the Products section of the settings menu under the category `Campfire Products`.

| Solvimon                            | Campfire             |
| :---------------------------------- | :------------------- |
| name                                | product\_name        |
| reference                           | id                   |
| description                         | product\_description |
| custom\_field (Campfire Product ID) | id                   |

> **Warning**
>
> For Contracts and Invoices to sync successfully to Campfire, Products, Customers, and Billing Entities must each have their Campfire ID stored in the respective custom field in Solvimon. Without these, the sync will fail for the affected records.

#### Create contracts in Campfire

This workflow runs automatically. When a Subscription is activated in Solvimon, it is pushed to Campfire as a Contract. Before creating the contract, Solvimon checks whether the Customer associated with the Subscription already exists in Campfire. If it doesn't, Solvimon creates it automatically.

| Solvimon                      | Campfire                 |
| :---------------------------- | :----------------------- |
| billing\_currency             | currency                 |
| billing\_currency             | entity\_currency         |
| name                          | deal\_name               |
| schedule.start\_at            | contract\_start\_date    |
| schedule.end\_at              | contract\_end\_date      |
| schedule.is\_evergreen        | is\_evergreen            |
| auto\_renewal                 | auto\_renew              |
| purchase\_order\_number       | purchase\_order\_number  |
| –                             | status (always `ACTIVE`) |
| billing\_entity (Campfire ID) | entity                   |
| billing\_period               | billing\_frequency       |
| customer (Campfire ID)        | client                   |

#### Export invoices to Campfire

Whenever an invoice is finalised in Solvimon, it is pushed to Campfire. Whether this happens automatically or requires a manual trigger depends on the **Send to ERP** setting in your Invoice Platform settings:

* **Automatic**: the invoice is synced to Campfire as soon as it is finalised, without any manual action required.
* **Manual**: the sync must be triggered manually from the invoice.

Depending on your configuration, the invoice can be synced in one of two ways:

* **Single item**: the full invoice amount is allocated to a single Campfire item.
* **Multiple items**: each invoice line is pushed as a separate Campfire item, with its own usage, quantity, price, and tax.

If the **Create Subscriptions** option is enabled, Solvimon also creates a Campfire Subscription for each invoice line (or for the single item, if using that mode). This triggers the Revenue Recognition process in Campfire.

> **Warning**
>
> For Campfire Subscriptions to be created successfully, the Solvimon Subscription linked to the invoice must have already been synced to Campfire as a Contract. If the Contract does not exist in Campfire, the Subscription creation will fail.

> **Info**
>
> Campfire tags each synced invoice with the Solvimon invoice ID, making it traceable from either platform.

| Solvimon              | Campfire                |
| :-------------------- | :---------------------- |
| invoice\_number       | invoice\_number         |
| invoice\_id           | source\_id              |
| invoice\_date         | invoice\_date           |
| due\_date             | due\_date               |
| billing\_currency     | currency                |
| customer              | client                  |
| billing\_entity       | entity                  |
| po\_number            | purchase\_order\_number |
| billing\_period.start | period\_start           |
| billing\_period.end   | period\_end             |
| invoice\_lines        | lines                   |

Each invoice line is mapped as follows:

| Solvimon                    | Campfire         |
| :-------------------------- | :--------------- |
| item.name                   | product\_name    |
| item.quantity               | quantity         |
| item.amount\_excluding\_tax | amount           |
| item.tax\_amount            | tax              |
| item.tax\_description       | tax\_description |
| item.service\_period\_start | service\_date    |
| item.product\_id            | product          |

#### Sync payments and payment status

This workflow runs automatically via webhook. When a Transaction is added to an invoice in Campfire, Solvimon is notified and creates a corresponding Payment on the Solvimon side, keeping payment status in sync across both platforms.

| Campfire                       | Solvimon                                                        |
| :----------------------------- | :-------------------------------------------------------------- |
| payment\_journal\_entry\_order | external\_reference                                             |
| –                              | customer\_id (from linked Solvimon invoice)                     |
| –                              | payment\_acceptor\_id                                           |
| amount                         | amount.quantity                                                 |
| currency                       | amount.currency                                                 |
| –                              | timestamp (payment date)                                        |
| –                              | result (always `AUTHORIZED`)                                    |
| –                              | context.type (always `PAY_INVOICE`)                             |
| –                              | context.pay\_invoice.invoice\_id (from linked Solvimon invoice) |

## Recommended workflow

To get the most value from the integration, follow these steps:

1. Import your customers from Campfire to Solvimon.
2. Import billing entities and products.
3. Use Solvimon to create draft invoices.
4. Review and edit invoices in Solvimon Desk as needed.
5. Finalise and send invoices to customers using Solvimon.
6. Invoices are synced to Campfire for revenue recognition and general accounting.

> **Note**
>
> Synchronisation is trigger-based by default. If you need custom triggers, reach out to your sales executive.