LokiCheckout_Buckaroo

Jump to User Docs

Checkout
Checkout - Payment
PHP 8.1 - 8.4
Magento 2.4.7 | 2.4.8
CSP Yes
Integration Tests 2
Functional Tests 4
Latest Release 2.0.17

This Magento 2 module is an add-on package for adding support for the payment solution of Buckaroo to the LokiCheckout.

Installation

Install this package via composer:

composer require loki-checkout/magento2-buckaroo

Next, enable this module:

bin/magento module:enable LokiCheckout_Buckaroo Buckaroo_Magento2
bin/magento setup:upgrade

Extending payment methods

By default, most payment methods are supported. If a new payment method is added via the Buckaroo_Magento2 module, it depends on the method whether or not, the LokiCheckout_Buckaroo module needs to be extended. If the method deals with a simple redirect, it just works. If additional input fields are required and they don't exist in the Loki Checkout, most likely the error Structure validation of XML failed. The SOAP request structure does not conform to the specification is given.

To add additional fields, create a new block loki-checkout.payment.methods.buckaroo_magento2_FOOBAR.form in the XML layout, where buckaroo_magento2_FOOBAR equals the payment method code. Check the layout file loki_checkout_block_payment_methods.xml for more examples.

Make sure the block loki-checkout.payment.methods.buckaroo_magento2_FOOBAR.form is registered as a Loki Component via the file etc/loki_components.xml. Also create a corresponding Component ViewModel and Component Repository. Note that each alias (as) of additional Buckaroo field in the XML layout (see loki_checkout_block_payment_methods.xml) - for example customer_DoB - corresponds with the property name - for example customer_DoB - that is saved to the quote via the AdditionalInformationRepository class.

Which fields need to be added? Each payment method is backed by a class in the PHP namespace Buckaroo\Magento2\Model\Method. Within such a method class, the XML construction is initiated, giving evidence of what kind of fields are needed. For example, the code segment $payment->getAdditionalInformation('customer_email') suggests that a field customer_email should be created.

Support

For getting support, create an Issue under the following project URL:

https://github.com/LokiCheckout/LokiCheckout_Buckaroo

Loki Components

The following LokiComponents are created or references in this module:

loki-checkout.billing.address.company loki-checkout.billing.address.country_id loki-checkout.payment.methods.buckaroo_magento2_afterpay.form.customer_DoB loki-checkout.payment.methods.buckaroo_magento2_afterpay.form.customer_iban loki-checkout.payment.methods.buckaroo_magento2_afterpay.form.termsCondition loki-checkout.payment.methods.buckaroo_magento2_afterpay2.form.customer_DoB loki-checkout.payment.methods.buckaroo_magento2_afterpay2.form.customer_iban loki-checkout.payment.methods.buckaroo_magento2_afterpay2.form.termsCondition loki-checkout.payment.methods.buckaroo_magento2_afterpay20.form.customer_DoB loki-checkout.payment.methods.buckaroo_magento2_afterpay20.form.customer_coc loki-checkout.payment.methods.buckaroo_magento2_afterpay20.form.customer_identificationNumber loki-checkout.payment.methods.buckaroo_magento2_afterpay20.form.customer_telephone loki-checkout.payment.methods.buckaroo_magento2_afterpay20.form.termsCondition loki-checkout.payment.methods.buckaroo_magento2_creditcard.form.card_type loki-checkout.payment.methods.buckaroo_magento2_creditcards.form loki-checkout.payment.methods.buckaroo_magento2_paybybank.form.issuer loki-checkout.payment.methods.buckaroo_magento2_sepadirectdebit.form.customer_account_name loki-checkout.payment.methods.buckaroo_magento2_sepadirectdebit.form.customer_iban loki-checkout.payment.methods.buckaroo_magento2_voucher.form.voucher loki-checkout.shipping.address.company loki-checkout.shipping.address.country_id
Module Dependencies

The following dependencies are declared in the module its `etc/module.xml` file:

Buckaroo_Magento2 LokiCheckout_Core Loki_Base Loki_Components Loki_CssUtils Loki_FieldComponents Loki_MapComponents Magento_Backend Magento_Catalog Magento_Checkout Magento_CheckoutAgreements Magento_Config Magento_Customer Magento_Directory Magento_Eav Magento_MediaStorage Magento_Newsletter Magento_Payment Magento_Quote Magento_ReleaseNotification Magento_Sales Magento_Shipping Magento_Store Magento_Vault Yireo_CspUtilities Yireo_IntegrationTestHelper
Composer details
Magento module name
LokiCheckout_Buckaroo
Composer name
loki-checkout/magento2-buckaroo
Composer version
2.0.17
Default branch
main
Requirements
buckaroo/magento2: ^1.50
ext-json: *
ext-pcre: *
loki-checkout/magento2-core: ^2.0
loki/magento2-components: ^2.0
loki/magento2-css-utils: ^1.0
loki/magento2-field-components: ^2.0
magento/framework: ^103.0
magento/module-store: ^101.0
Releases
2.0.17 21 January 2026
2.0.16 21 January 2026
2.0.15 21 January 2026
2.0.14 21 January 2026
2.0.13 21 January 2026
2.0.12 21 January 2026
2.0.11 21 January 2026
2.0.10 21 January 2026
Changelog

[2.0.17] - 12 January 2026

Fixed

  • Add new GitHub Action workflows

[2.0.16] - 19 December 2025

Fixed

  • Allow for default Payperemail values from quote
  • Render chosen gender in sidebar

[2.0.15] - 17 December 2025

Fixed

  • Cleanup ViewModels require-flag which now defaults to true
  • Render payperemail details in sidebar
  • Add payperemail method
  • Add new gender options for payperemail
  • Add instructions on missing payment methods
  • Update composer keywords
  • Update composer keywords
  • Update composer keywords

[2.0.14] - 22 October 2025

Fixed

  • Do not escape $css() with escapeHtmlAttr() but escapeHtml()
  • Fix merge conflict in templates

[2.0.13] - 14 October 2025

Fixed

  • Conditionally add all hosted field blocks
  • Add loki_checkout_payment_before_save_quote event for additional information

[2.0.12] - 01 October 2025

Fixed

  • Simplify image rendering

[2.0.11] - 29 September 2025

Fixed

  • Sort entries of module.xml file
  • Sort dependencies of composer.json
  • Copy generic CI/CD files
  • Update MODULE.json
  • Update README
  • Add escaping

[2.0.10] - 24 September 2025

Fixed

  • Implement new imageRenderer
  • Change containers into blocks to allow for caching
  • Rename loki-components to loki.script.component

[2.0.9] - 16 September 2025

Fixed

  • Additional margins for subforms

[2.0.8] - 03 September 2025

Fixed

  • Copy generic CI/CD files
  • Remove unwanted CSS

[2.0.7] - 02 September 2025

Fixed

  • Add PHPUnit 10 file

[2.0.6] - 02 September 2025

Fixed

  • Change loki-checkout.payment.payment-methods to loki-checkout.payment.methods
  • Refresh payment methods when company or country changes
  • Refresh Afterpay form when changing company or country ID
  • Refactor hard-coded field attributes to FieldViewModel::getFieldAttributes()
  • Conditionally show props in sidebar
  • Add Playwright tests
  • Refactor Loki-library location in Playwright tests

[2.0.5] - 29 August 2025

Fixed

  • Add logic to show relevant afterpay20 fields depending on customer type (b2c, b2b)

[2.0.4] - 27 August 2025

Fixed

  • Add COC Number to afterpay20
  • Change CSS scope from @todo to block
  • Add translations
  • Replace yireo/opensearch with yireo/opensearch-dummy in Gitlab CI
  • Add Paybybank
  • Add concept of Buckaroo Voucher

[2.0.3] - 26 August 2025

Fixed

  • Disable Hosted Fields because they do not work yet
  • Set maximum age of today
  • Add support for Alpine Mask config via XML layout
  • Fix terms text translation
  • Make date of birth configurable
  • Add validators for afterpay
  • Make sure all fields are required
  • Refactor Afterpay form to separate components
  • Add new fields for afterpay and afterpay2 method
  • Lazyload hosted fields SDK
  • Add selection of card type for creditcard method
  • Add GitLab CI files
  • Prevent errors if Buckaroo_Magento2 is disabled by using DI proxies
  • Add additional exception if Buckaroo_Magento2 is disabled

[2.0.2] - 21 August 2025

Fixed

  • Add dependency with loki/magento2-css-utils
  • Replace LokiComponentsUtilBlockCssClass with LokiCssUtilsUtilCssClass
  • Fix newlines after comments
  • Declare used PHP namespaces
  • Add escaping of template code
  • Document latest version of template
  • Add missing strict_types declaration
  • Lower requirements to PHP 8.1

[2.0.1] - 07 August 2025

Fixed

  • Lower PHP requirement to PHP 8.2+

[1.0.1] - 26 May 2025

Fixed

  • Better support for images
  • Search for view/frontend icons as well
  • Fix issues with redirect to portal

[0.0.2] - 25 April 2025

Fixed

  • Allow upgrading to LokiFieldComponents and LokiCheckout 1.0

[0.0.1] - 21 January 2025

  • Initial release
Jump to User Docs

Last modified: September 1, 2025