Back to News

Plugixa Car Parking 1.2.0: Mollie, Adyen and Klarna Payments

Plugixa Team 5 min read

Plugixa Car Parking 1.2.0 for WordPress: Mollie, Adyen and Klarna payments, a Confirming your payment screen, and late payments that never double-book

Plugixa Car Parking 1.2.0 is out. Pro now takes payments through three more providers, Mollie, Adyen and Klarna, so drivers across Europe can pay for parking the way they already pay everywhere else. Behind them, everything a provider reports after the customer has left is handled with more care: a payment still being confirmed, a payment that arrives too late, a refund that fails and a disputed charge. Here is what changed.

Five ways to pay online

Until now, Pro offered cards by Stripe and PayPal. 1.2.0 adds three hosted checkouts. Each sends the customer to the provider’s own payment page and brings them back to the booking, so no card details ever touch your site.

The Payment method step of the booking form, offering Pay on arrival, Online payment (Adyen), Pay with Klarna, Online payment (Mollie) and Credit / debit card (Stripe)

Every provider writes to the same payments ledger, and every refund made from a booking goes through the provider and is recorded with its refund id.

The Payments ledger listing payments by Adyen, Mollie, Stripe and PayPal, including an Adyen refund marked Failed

Mollie: iDEAL, Bancontact and cards

Mollie PRO is the natural choice in the Netherlands and Belgium. Paste an API key, list the methods you want (cards, iDEAL and Bancontact by default), and you are done: there is no webhook to set up, because each payment tells Mollie where to report. A test_ key takes no real money and the settings show a Test mode badge. Refunds made in the Mollie dashboard and chargebacks are reported back to the booking.

The Mollie settings with Offer payment by Mollie switched on, a saved API key, the Test mode badge and the creditcard, ideal and bancontact methods

Adyen: Hosted Checkout for larger operators

Adyen PRO suits airport and city operators who already process through Adyen. Enter the API key, merchant account, theme ID and country, then add a Standard webhook with an HMAC key, so every event is verified before it is believed. Refunds made in the Customer Area and chargebacks come back to the booking.

The Adyen settings with the API key, merchant account, theme ID, country, payment methods and test environment, and the Webhook card with its address and HMAC key

Klarna: pay with Klarna

Klarna PRO appears to customers as Pay with Klarna. Enter the API username and password, the region and the country, and test in Klarna’s playground first. Each payment is captured as soon as the customer completes it, so the booking counts as paid at once. There is no webhook to set up.

The Klarna settings with the API username and password, region, country code and the Use Klarna’s playground switch

Monthly payments for long stays stay with Stripe. See Monthly payments.

“Confirming your payment”

Hosted checkouts do not always decide at once. A bank payment can be pending for a moment, and the customer is often back on your site before the provider has made up its mind. Before 1.2.0 they saw Payment not completed, which invites a second payment.

Now they see Confirming your payment, with their booking reference and a reassuring note that there is no need to pay again. The booking updates by itself as soon as the provider reports.

The Confirming your payment screen: we have not had confirmation of your payment yet, there is no need to pay again, with the booking reference HL-70E845

A space is never sold twice

A booking that is not paid in time expires and frees its space. Before 1.2.0, a payment that arrived after that still confirmed the booking, even when the space had since been booked by someone else. Two drivers, one bay.

In 1.2.0, if the space is still free, the late payment confirms the booking as before. If it has gone, the booking stays expired, the money stays on its Payments panel, you are emailed (“Late payment needs attention”) and the customer is told on the screen they come back to:

The Your payment arrived too late to hold the space screen, saying the payment was received after the booking had run out and the customer will be contacted about a refund

Failed refunds and disputes

A provider can accept a refund and fail to pay it out days later, for example when the customer’s card has been closed. Before 1.2.0 the refund stayed on the booking as if the customer had the money. Now it is marked Failed, the booking holds the money again with its Refund button back, and you are emailed. This covers Stripe, PayPal, Mollie and Adyen.

A booking’s Payments panel with an Adyen payment of 46.74 euros and a refund of 23.37 euros marked Failed, so the booking still holds the whole amount

When a customer’s bank disputes a payment, you are emailed once, on every gateway that reports disputes, so the provider’s deadline to respond is not missed. These emails are sent even when booking emails are switched off, and each one is listed in the message log. The Payments guide has the details.

Booking forms that work behind a page cache

A page cache can keep a page for days: LiteSpeed Cache keeps it for a week by default. A booking form served from a copy more than a day old used to fail at the last step with “Your session expired”, and refreshing served the same copy. In 1.2.0 a signed-out visitor’s form keeps working for as long as a cache is likely to keep the page, so you no longer need to exclude it from your cache.

The opposite holds for the private pages. A booking’s summary link and the screen shown after paying are now kept out of page caches, so a customer never sees a stale payment status, or another customer’s booking on a cache set to ignore the address. See Kept out of page caches.

Also since 1.1.0

  • 1.1.1: if the database refuses to create one of the plugin’s tables, administrators now see a notice naming it, with a Try again button, instead of a silent failure. The invoice PDF library (Pro) is updated to dompdf 3.1.6 for a published security advisory.
  • 1.1.2: the plugin’s custom CSS setting is gone. Move any rules to Appearance -> Customize -> Additional CSS, or to Styles in the Site Editor.
  • Developers: a gateway’s webhook handler can now answer several events from one notification, ask the provider to retry, or take back a recorded refund, and plugixa_carparking_payment_notice announces late_payment_no_space. See the Hooks reference.

Every change is listed in the changelog.

Plugixa Car Parking 1.2.0 is available now. If you take payments online, update before switching Mollie, Adyen or Klarna on, and add the Adyen webhook with its HMAC key before offering Adyen to customers.