Introduction

Introduction

Walley Checkout for WooCommerce was previously known as Collector Checkout for WooCommerce and there may be some remnants of this in the documentation or plugin. For instance in the code snippets and/or some of the settings.

Walley Checkout for WooCommerce is a plugin that extends WooCommerce, allowing you to take payments via Walley.


Limitations in functionality


Walley Checkout is an embedded checkout, a checkout solution that replaces the standard WooCommerce checkout form. This setup provides an easy way for the customer to complete the purchase and a convenient way for the merchant to offer multiple payment options in the same solution.

An embedded checkout also implies certain limitations in functionality. Compatibility with other plugins that extend the functionality of the standard checkout might be limited. Examples of features that might not work out of the box:

  • Selection of Delivery Date.
  • Extra checkout fields (besides the standard billing and shipping fields).
  • Newsletter subscription signup.
  • Create an account during checkout process where the customer gets the opportunity to select user name and password (however, this can be generated automatically in WooCommerce).

Currencies


The plugin itself has no limitations regarding currency.

However, please note that there can be limitations in the agreement you have with Walley.

When it comes to questions regarding supported currencies you should always talk to your payment provider. The exception is when the plugin in fact do have limitations.

You can read more about this at the Walley website.


Sign up with Walley


To get started with Walley Checkout, you need to create an account with Walley. If you’re not a customer yet you can register here.


Testing


If you want to try the checkout before installing it in your store you can checkout our demo store here.

To make test purchases you also need customer test data. This information can be found here.


Installation


  • Login to WordPress Admin. Navigate to Plugins → Add New (in the left column menu).
  • Click on the Upload Plugin option, then click Browse to select the zip file from your computer. Once selected, press OK and press the Install Now button.
  • Activate the plugin.

Required WordPress & WooCommerce settings


  • Installing HTTPS (a SSL/TLS certificate) in your web store is strongly recommended.
  • Make sure that you have enabled pretty permalinks in your WordPress installation. Otherwise callbacks from Walley back to your store won’t work and orders will not be updated with the correct order status/information.
  • To get the order total to match between WooCommerce and Walley you need to configure WooCommerce to display prices with 2 decimals. More information about displaying of prices and how it can cause rounding issues can be found in this article.
  • You need to enable Guest Checkout (or let WooCommerce generate user name and password automatically when creating an account) in your store, otherwise the order will not be finalized in WooCommerce when paying with Walley.
  • It’s recommended to add/use SKU on products (even on product variants). This is needed to keep track of purchased products in orders between the two systems and to make refunds working properly.

Configuration


  • Navigate to → WooCommerce → Settings → Payments → Walley Checkout.

Basic settings

  • Enable Walley Checkout by ticking the Enable Walley Checkout checkbox.
  • Title – Enter the title for the payment method displayed in the checkout and order confirmation emails.
  • Username – Your Username received from Walley.
  • Password – Your Password received from Walley.
  • Shared key – Your Shared Key received from Walley.
  • Display checkout privacy policy – Select where to display the privacy policy text. You can choose to Display above checkout, Display below checkout or Do not display.

Country credentials

  • Merchant ID “country” B2C – Your Merchant ID for B2C purchases received from Walley.
    Make sure you input the correct information in the field for the country/countries you have an B2C agreement with Walley for – Sweden, Norway, Finland or Denmark.
  • Merchant ID “country” B2B – Your Merchant ID for B2B purchases received from Walley.
    Make sure you input the correct information in the field for the country/countries you have an B2B agreement with Walley for – Sweden, Norway, Finland or Denmark.
  • Delivery Module “country” – Tick the box to enable Walley Shipping Module. This feature displays shipping options inside the Walley Checkout iframe. Requires a separate agreement with Walley and nShift (Checkout) to activate. Read more about how to configure Walley Shipping Module.
    Make sure you check the box for the country/countries you have agreements for – Sweden, Norway, Finland or Denmark.

Checkout settings

  • Checkout version – Choose between the new Checkout 2.0 or the current Checkout 1.0.
    Please note that Checkout 1.0 will be deprecated during 2022.
  • Checkout layout – select the Checkout layout. Choose between
    • Two column checkout (Walley Checkout in left column)
    • Two column checkout (Walley Checkout in left column) – Storefront light
    • Two column checkout (Walley Checkout in right column)
    • One column checkout.
      You can preview the different layouts in the Default layouts of the Checkout page section of Customize the Checkout page documentation.
  • Invoice fee ID – If you want to add an invoice fee to purchases where the customer selects invoice as the selected payment method you can create a (hidden) product that acts as the invoice fee and add the ID of the product in this field.
  • Default customer – Sets the default customer/checkout type for Walley Checkout (if offering both B2B & B2C).
  • Checkout button color – Select your custom background color of call to action buttons in Walley Checkout iframe. Leave blank to use Walley standard color.
  • Validation Callback – Tick the checkbox to activate Walley Validation Callback.
  • Electronic ID fields – Tick the checkbox to activate Requires Electronic ID Fields settings in product pages.

    If Electronic ID fields is activated a Walley Electronic ID required setting is added to all Edit product pages.

    If a product with Walley Electronic ID required checked is added to cart, Walley will require Electronic ID signing (e.g. Mobile Bank ID) before the purchase can be placed.

Order management settings

  • Manage orders – Check this box if you want to cancel an order in Walleys system automatically when the order is marked as Cancelled in WooCommerce and activate an order/invoice in Walleys system automatically when the order is marked as Completed in WooCommerce.
  • Invoice number on order page -Tick the checkbox if you want to display Walley Invoice Number after WooCommerce Order Number on WooCommerce order page (-> WooCommerce -> Orders).

Test Mode settings

  • Test mode – Tick the checkbox if you make purchases using test credentials.
  • Debug – Enable logging. The log messages can be displayed by navigating to: –> WooCommerce –> Status –> Logs.

Invoice fee handling


The invoice Fee for Walley Checkout Invoice payments are added as a simple (hidden) product. To create a Invoice fee product:

  1. Add a simple (hidden) product. Mark it as a taxable product. For more information on how to add a simple (hidden) product please check WooCommerce documentation page on Adding and Managing products.
  2. Go to the Walley Checkout settings page and add the product ID (not the price or the SKU) of the Invoice Fee settings field. The ID can be found by hovering the Invoice Fee product on the Products page in WooCommerce.

Checkout process flow in the plugin


Since Walley Checkout is an embedded checkout solution, order/cart data & customer data is passed between WooCommerce and the payment service provider in a different way than a payment method in the standard WooCommerce checkout.The checkout process looks like this:

  1. The checkout page is requested.
  2. If Walley Checkout is the default (or selected) payment method a request containing merchant and cart data is sent to Walley.
  3. Walley respond with information about a new transaction session.
  4. The checkout page is rendered and the Walley checkout iframe is displayed.
  5. The customer identifies herself in Walleys Checkout.
  6. A javascript event is triggered so that:
    – The checkout is paused.
    – Customer address data (country and postal number) is fetched from Walley.
    – If needed the cart is recalculated and an cart update is sent to Walley.
    – The checkout is resumed.
  7. When the customer clicks the Pay button in Walley Checkout iframe, the checkout page is being reloaded, the WooCommerce checkout form is being populated with customer address data and the form is then posted.
  8. An order is created in WooCommerce.
  9. Order status is changed to Processing (by triggering the WooCommerce function payment_complete()) and an email about the new order is sent to the customer.

Order management


When an order is created in WooCommerce and a reservation number exists in Walleys system, you have the possibility to handle the order management in Walley directly from WooCommerce. This way you can save time and don’t have to work in both systems simultaneously.Read more about order management in Walleys system directly from WooCommerce in the Walley Checkout Order management documentation.


Customize the checkout page


In some scenarios there might be a need for modifying the checkout page. Learn more how you can Customize the Walley checkout page here.


Compatibility with themes & plugins


  • Walley Checkout uses its own template file for displaying the checkout page and should work with most themes. However, the plugin is only tested with the Storefront theme and we do not guarantee that it will work with other themes. Common situations when errors occur are:
    – Themes/plugins with customized template files for WooCommerce checkout page.
    – Themes/plugins that modifies the checkout into a multi step checkout.

Krokedil and Walley do not offer help with adapting your theme or plugin within regular support.