ml-connector
VismaPipedrive

Visma and Pipedrive integration

Visma.net ERP handles financial records, supplier management, and customer invoicing. Pipedrive manages your sales pipeline and customer relationships. Connecting the two keeps your supplier master data and customer invoices visible in your CRM without manual data entry. Supplier records create organizations in Pipedrive, and customer invoices flow into deal notes so your sales team has the full financial context of each customer. ml-connector handles the different OAuth2 flows on each side and moves the data on a polling schedule you set.

How Visma works

Visma.net ERP is a cloud accounting and financial management platform that exposes suppliers, supplier invoices, customers, customer invoices, purchase orders, GL accounts, and journal transactions via REST API on a tenant-specific endpoint. The API authenticates with OAuth2 client credentials grant to https://connect.visma.com/connect/token, and every call requires the ipp-company-id header identifying the Visma company. Visma supports webhooks with one-time delivery and no automatic retry, plus delta polling via lastModifiedDateTime query parameters on list endpoints. Webhooks must be explicitly enabled at the company level for each entity type.

How Pipedrive works

Pipedrive is a cloud CRM focused on sales and customer management. It exposes deals, organizations, persons, products, and activities through REST API on https://api.pipedrive.com with OAuth2 bearer token or API token authentication. Pipedrive supports webhooks in both v1 (action.object format) and v2 (separate action and entity fields) with HMAC-SHA256 signature verification via the X-Pipedrive-Signature header. Custom fields are exposed as opaque hashes and must be retrieved separately from field definition endpoints. Pipedrive is CRM-only and has no native invoices, bills, purchase orders, GL accounts, or employee records.

What moves between them

Suppliers from Visma flow into Pipedrive as organizations. Visma supplier invoices are read periodically and appended as notes or activities on the corresponding Pipedrive organization. Visma customers and their invoices flow into Pipedrive deals and persons, with invoice totals and dates visible to the sales team. The sync runs on a schedule you configure, typically daily or after each Visma invoice post. Reference data such as customer status and payment terms align in both directions where supported by Pipedrive custom fields.

How ml-connector handles it

ml-connector stores both credential sets encrypted. On the Visma side it uses OAuth2 client credentials with the tenant-specific company ID to obtain bearer tokens, and it polls the Visma API for supplier and invoice updates using lastModifiedDateTime as a delta marker so only new and changed records are fetched. On the Pipedrive side it either uses OAuth2 with token refresh or API token auth, and it handles the HMAC-SHA256 signature verification on inbound webhooks. When a new Visma supplier is detected, ml-connector creates or updates a Pipedrive organization with the supplier name and code; when a Visma customer invoice is created, ml-connector creates or links a Pipedrive deal and appends the invoice details as a note or linked activity. Pipedrive's custom fields and opaque field hashes are resolved via field definition queries so invoice amounts and due dates land in the right fields. Rate limits on both sides are respected with exponential backoff on 429 responses.

A real-world example

A regional B2B service company uses Visma.net for accounting and supplier invoice management, and Pipedrive for customer pipeline tracking. Before the integration, the sales team received no visibility into customer payment patterns or invoice history in Pipedrive; they tracked balances in spreadsheets and emails from finance. With Visma and Pipedrive connected, each customer invoice automatically appears as a note on the deal in Pipedrive, and the sales team can see at a glance which customers have open invoices, who is paying late, and what products they ordered. This reduces the need for finance to chase sales for customer payment context, and sales can factor payment history into renewal or expansion conversations.

What you can do

  • Sync Visma suppliers to Pipedrive organizations, keeping vendor master data visible in your CRM.
  • Post Visma customer invoices as notes or activities on Pipedrive deals, giving sales full financial visibility.
  • Map Visma customer records to Pipedrive persons, aligning customer master data across both systems.
  • Handle Visma OAuth2 client credentials and Pipedrive webhook signature verification automatically.
  • Poll Visma for invoice updates on a schedule you control, with exponential backoff on rate limits.

Questions

Which direction does data move between Visma and Pipedrive?
The main flow is from Visma into Pipedrive. Suppliers become organizations, customer invoices appear as deal notes or activities, and customer records become persons in Pipedrive. Pipedrive is a CRM and has no native invoices or GL accounts, so financial data flows one direction only. Reference data such as customer status and terms can be aligned in both directions via custom fields.
How does ml-connector handle Visma's webhook limitations?
Visma webhooks have one-time delivery and no automatic retry, and they must be enabled at the company level for each entity. ml-connector uses polling with lastModifiedDateTime as a fallback to ensure no invoice or supplier record is missed, and it can also listen for Visma webhooks where they are enabled to accelerate the sync.
Does ml-connector resolve Pipedrive's custom field hashes?
Yes. Pipedrive custom fields are exposed as opaque hashes in the API response, so ml-connector queries the field definition endpoints (/v1/dealFields, /v1/personFields, etc.) to map invoice amount and due date fields to the correct custom field IDs before writing to Pipedrive.

Related integrations

Connect Visma and Pipedrive

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started