Laravel-Mollie incorporates the Mollie API and Mollie Connect into your Laravel project.
Accepting iDEAL, Apple Pay, Bancontact/Mister Cash, SOFORT Banking, Creditcard, SEPA Bank transfer, SEPA Direct debit, PayPal, Belfius Direct Net, KBC/CBC, paysafecard, ING Home'Pay, Giftcards, Giropay, EPS and Przelewy24 online payments without fixed monthly costs or any punishing registration procedures. Just use the Mollie API to receive payments directly on your website or easily refund transactions to your customers.
Looking for a complete recurring billing solution? Take a look at Laravel Cashier for Mollie instead.
To support the enhanced Mollie API, some breaking changes were introduced. Make sure to follow the instructions in the upgrade guide.
Fresh install? Continue with the installation guide below.
Add Laravel-Mollie to your composer file via the composer require
command:
composer require mollie/laravel-mollie
Or add it to composer.json
manually:
"require": {
"mollie/laravel-mollie": "^3.0"
}
Laravel-Mollie's service providers will be automatically registered using Laravel's auto-discovery feature.
You'll only need to add the MOLLIE_KEY
variable to your .env
file.
MOLLIE_KEY=test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Here you can see an example of just how simple this package is to use.
use Mollie\Laravel\Facades\Mollie;
public function preparePayment()
{
$payment = Mollie::api()->payments->create([
"amount" => [
"currency" => "EUR",
"value" => "10.00" // You must send the correct number of decimals, thus we enforce the use of strings
],
"description" => "Order #12345",
"redirectUrl" => route('order.success'),
"webhookUrl" => route('webhooks.mollie'),
"metadata" => [
"order_id" => "12345",
],
]);
// redirect customer to Mollie checkout page
return redirect($payment->getCheckoutUrl(), 303);
}
/**
* After the customer has completed the transaction,
* you can fetch, check and process the payment.
* This logic typically goes into the controller handling the inbound webhook request.
* See the webhook docs in /docs and on mollie.com for more information.
*/
public function handleWebhookNotification(Request $request) {
$paymentId = $request->input('id');
$payment = Mollie::api()->payments->get($paymentId);
if ($payment->isPaid())
{
echo 'Payment received.';
// Do your thing ...
}
}
Want to help us make our Laravel module even better? We take pull requests, sure. But how would you like to contribute to a technology oriented organization? Mollie is hiring developers and system engineers. Check out our vacancies or get in touch.
The MIT License. Copyright (c) 2024, Mollie B.V.
Contact: www.mollie.com — info@mollie.com