Skip to main content
A common shape: your own system is the source of truth for customers, and meetergo is where the commercial process lives. When a customer commits, you want a contact, a deal in the right pipeline, and an invoice that goes out and gets paid. This recipe wires that up with the API and one automation.

1. Create the custom field that ties the two systems together

You almost certainly have your own record id. Store it on the contact so the two systems stay reconcilable. Custom fields are named by meetergo, not by you: a new field is created as newDataField, newDataField_1 and so on. Rename it to something you can read, then use that name as the key.
GET /data-field lists every field with its name. That is the key you write into additionalData — look it up there rather than guessing.

2. Create the contact

The response carries the contact id. Keep it: the deal and the invoice both refer to it. To find the contact again later, GET /crm?searchTerm=anna.mueller@example.com. Search matches name, email, phone and notes, but not additionalData — so if you need to look someone up by your own id, keep the mapping on your side.

3. Create the deal

Pipelines carry their stages, so one call gives you both ids:
Then link the contact: POST /crm/deals/{id}/contacts with {"contactId": "..."}.
A deal cannot move to a different pipeline later. stageId must always be a stage of the pipeline the deal was created in, so pick the pipeline up front.

4. Get told when the deal is won

There is no webhook event for deal stage changes. Use an automation instead, which is more flexible anyway because you choose the exact stage. In the dashboard, build a workflow with the trigger When a deal is won (or When a deal changes stage, if you want a specific stage rather than won) and the action Call a webhook, pointing at your n8n, Make, Zapier or own endpoint. meetergo POSTs the event there, and your side does step 5.

5. Create, finalize and send the invoice

Three calls. See Invoicing for the full lifecycle and why they are separate.
Finalizing fails until your invoicing settings carry a Steuernummer or USt-IdNr and a postal address. Set them once with PUT /invoicing/settings. The error names exactly which field is missing.

6. Payment and reminders

With Stripe, PayPal or Mollie connected, the send email carries a payment link and the payment records itself. Bank transfers you record yourself:
The invoice flips to paid on its own once the recorded payments cover it. What stays unpaid is picked up by Mahnwesen, once you have switched it on in PUT /invoicing/settings.

Which token do I need?

A Personal Access Token from Integrations & Apps. If you scope it, this recipe needs crm, forms (for /data-field) and invoicing. Scopes are deliberately separate: a token that reads your contacts cannot issue invoices in your name.