# FAQ

# Source of the e-mail field in Mollie's order

In Mollie, both billing and shipping addresses have associated e-mail addresses. When creating new order, integration takes values of the cart.billingAddress.email or cart.shippingAddress.email properties. If they are empty, it falls back to the cart.customerEmail property. If it's also empty, but the user is authenticated, it takes email from the customer object. Make sure that at least one of these values is set.

# Error: The locale is invalid

By default, the integration uses the en_US locale. The locale is invalid error means you used an unsupported locale. See the Parameters (opens new window) document for a list of possible values.

# Error: The 'email' field is missing

Because Mollie integration requires an email address, you must add this field and require the guests to provide it. For authenticated customers, its optional.

The simplest way to do it is using the setCustomerEmail method, as shown below. It requires this PR (opens new window) to be merged.

import { useCart } from '@vsf-enterprise/commercetools';
import { useVSFContext } from '@vue-storefront/core';
import { cartActions } from '@vsf-enterprise/commercetools-api';

export default {
  // ...
  setup () {
    const context = useVSFContext();
    const { cart, setCart } = useCart();

    const setCustomerEmail = async (email) => {
      const response = await context.$ct.api.updateCart({
        id: cart.value.id,
        version: cart.value.version,
        actions: [
          cartActions.setCustomerEmail(email)
        ]
      }, null);
      setCart(response.data.cart);
    };
  }
};

Another way that doesn't require PR mentioned above is extending cart.billingAddress and cart.shippingAddress with the email field.

# Payment status is not updated

If the payment statuses are not updated, make sure to:

  • provide the webhookUrl parameter inside the extension module configuration (CT_MOLLIE_CONFIG environment variable),
  • use the beforeCreatePayment hook to specify webhookUrl as described here.

The webhookUrl should point to the URL of the Notification module (opens new window).