---
title: "Getting Started"
space: "ERPNext"
url: "https://www.prilk.com/docs/erpnext/integrations/payments/mollie/getting-started"
updated: "2026-05-15"
---

# Getting Started

Six steps from "no Mollie" to "first invoice paid via iDEAL".

## Step 1 — Sign up at mollie.com

Create a Mollie account at [mollie.com](https://www.mollie.com). The
free signup goes through Mollie's KYC (Chamber of Commerce check, ID
upload, bank account verification). Plan on 1–2 business days for
full activation; sandbox / test mode works immediately.

You'll get **API keys** (a live key and a test key) in your Mollie
dashboard under *Developers → API keys*. The keys start with `live_`
or `test_`.

## Step 2 — Enable payment methods in your Mollie dashboard

Under *Settings → Payment methods*, enable the methods you want to
offer. The most important ones for Dutch business:

- **iDEAL** — enabled by default.
- **Credit cards** — needs a separate acquiring agreement (Mollie
  signs you up); takes a few days.
- **SEPA Direct Debit** — needs your IBAN verified; for recurring
  subscriptions.
- **Bancontact** — for Belgian customers.
- **Apple Pay** — needs domain verification (Mollie walks you through).

You can enable / disable methods anytime; changes take effect
immediately.

## Step 3 — Install the app

```bash
bench --site <your-site> install-app mollie_integration
```

Restart the bench so Mollie Settings appears in the awesomebar.

## Step 4 — Configure Mollie Settings

Open **Mollie Settings** in the awesomebar (single doctype — only
one record exists per site).

| Field | What to enter |
|---|---|
| **Profile ID** | From Mollie dashboard → Profiles → your profile. Looks like `pfl_xxxxxx`. |
| **Secret Key** | The `live_*` API key for production, or `test_*` while you're testing. |
| **Payment URL Type** | *Create on Click* (default) — links never expire. *Create Immediately* — for cart checkout where customer pays right away. |
| **Default Method** | Leave blank to let Mollie show the full method picker. Or pick `ideal` to skip directly to iDEAL. |
| **Webhook Secret** | Auto-generated on save. Used to verify incoming webhooks are from Mollie. |

Save. The webhook URL is now `<your-site>/api/method/mollie_integration.mollie.api.webhooks`.

## Step 5 — Test in sandbox mode

With a `test_*` API key in Mollie Settings:

1. Create a draft Sales Invoice.
2. Submit it.
3. From the invoice's menu, click **Get Payment Link** (or attach a
   Payment Request).
4. Open the link in an incognito browser tab.
5. Pick iDEAL → pick "Test bank" → choose "Paid" status.
6. Watch the Sales Invoice — within seconds, a Payment Entry should
   be created and the invoice marked Paid.

If the Payment Entry never appears, check **Integration Request List**
for the webhook receipt — there's usually a clear error.

## Step 6 — Switch to live mode

Once the test flow works:

1. Replace the `test_*` Secret Key in Mollie Settings with your `live_*`
   key.
2. Verify your webhook URL is reachable from the public internet (Mollie
   needs to POST to it). Press deployments handle this automatically;
   bare bench installs need an HTTPS reverse proxy.
3. Send a real €0.01 test payment to yourself before going wide — it's
   cheap insurance.

## What's next

- [Receiving Payments](./receiving-payments) — the full flow for
  invoice payment, web-shop checkout, and QR codes.
- [Subscriptions](./subscriptions) — recurring billing with mandates.
- [Refunds](./refunds) — initiating refunds when needed.
