The Loki Checkout was built with Hyvä Themes in mind: Tailwind and Alpine. We love Hyvä and this is definitely for the Hyvä community.
Out-of-the-box, both the original Luma theme (thus Blank thus any derivative) and Hyvä Themes are supported. And they look good too.
Granular components for steps, forms and fields make things easy. Each component includes an AlpineJS component and a Repository
/ ViewModel
PHP classes.
Small templates, XML layout-based configurations and a CssClass
util guarantee that the number of template overrides are kept to a bare minimum.
Running a checkout with Alpine and Tailwind guarantees performance. On top of this, Loki Components make sure multiple things are done in a single HTTP request.
Various payment providers are supported out-of-the-box, as is PostNL, postcode validation, VAT ID validation. And together we will build more integrations.
All sources have been added with CSP no-eval
and no-inline
in mind - including the Alpine CSP build. With that, the Loki Checkout is PCI 4 Compliant
Each field is saved once blurred. ARIA attributes are everywhere. And compliance is tested with Playwright prior to every release.
Loki uses a tree of Loki Components, so you can easily work on individual components without breaking the rest: Adding new fields, customizing existing new templates, changing error messages, using other icons, swapping steps. And a lot of things are configurable through the XML layout.
Whenever the country is changed (in other words: the value of that specific Loki Component is updated), it will update other components (by default, the region - which is either a text-field or a select-field - and the postcode) within a single HTTP request.
Every field component offers both client-side (JavaScript) validation and server-side (PHP) validation. Validators are easily configured through a dedicated Loki XML or the XML layout. New validators in both PHP and JS are registered without a fuzz.
The VAT ID field is preconfigured with the relevant country prefix. On top of this, VAT IDs are validated server-side. And when configured to do so, it will be validated against the VIES service. Which sucks. So, Geissweb EU VAT Enhanced is supported too.
We ship with a one-column, two-column and three-column theme. Pick the one you like. Each theme is actually nothing more than an XML layout handle, so it is dead-easy to create your own: Move the blocks around, add styling, voila. Each Loki Component (including fields and steps) is designed to be re-positioned with ease.