Skip to content

Business to Business (B2B)


This page details the integration and implementation of Kustom Checkout for Business-to-Business (B2B) transactions.

How it’s done

Kustom Checkout can be configured for B2B in Austria, Belgium, Denmark, Finland, France, Germany, the Netherlands, Norway, Spain, Sweden, the United Kingdom and Switzerland.

Billie as a B2B payments provider

Billie provides Buy Now, Pay Later (BNPL) payment methods for business customers. Billie is available in Austria, Belgium, Denmark, Finland, France, Germany, the Netherlands, Norway, Spain, Sweden, the United Kingdom and Switzerland.

Important

B2B via Billie is only available in the United Kingdom (GB) for merchants registered in the UK, and in Switzerland (CH) for merchants registered in Switzerland.

Prerequisites

  • Kustom Checkout is implemented.
  • Your Merchant ID is enabled for B2B. Reach out to support@kustom.co for assistance with activating it.

How it works

The B2B flow in Kustom Checkout is built on the same underlying logic and API as the B2C flow. This means merchants can reuse their existing integration and only need to apply the adjustments described in the implementation section.

For business customers, a dedicated user flow is introduced, allowing shoppers to switch between B2C and B2B during checkout. In the B2B flow, organization details (such as organization number) are required, and shipping and billing addresses can be configured separately. Both invoice and card payments are supported, as well as recurring orders.

You can also provide separate terms and conditions for the B2B flow by supplying a dedicated link; if no B2B-specific terms are provided, the default B2C terms are used.

Implementation flow

Step 1 - Configure the checkout

Before loading the checkout, configure options for the B2B flow.

1a. Enable B2C/B2B flow choice

Configure the allowed_customer_types option in the checkout order to include both "person" and "organization".

"options": { "allowed_customer_types": ["person", "organization"] }

1b. (Optional) Render B2B flow by default

Optionally render the B2B flow by default, setting the customer.type field to "organization".

"customer": { "type": "organization" }

1c. (Optional) Prefill organization number

Optionally prefill the organization number with the organization_registration_id field.

"customer": { "type": "organization", "organization_registration_id": "556036-0793" }

1d. (Optional) Set specific B2B terms

Use the merchant.organization_terms_uri field to provide separate terms for the B2B flow. If not set, the default B2C terms are used.

"merchant.organization_terms_uri": { "your URI string" }

Step 2 - Load the checkout

Load the checkout as usual. The customer can switch between B2C and B2B flows.

Step 3 (Optional) - Listen for customer interaction events

Subscribe to the load event to receive customer data and flow type before the order is placed.

_klarnaCheckout(function(api){  
    api.on({  
        load: function(data){  
            console.info(data)  
        }  
    })  
})

The shipping_address_change event can also be used for similar purposes.

Step 4 - Parse organization address details

Handle the push POST request when the customer places the order. The customer.type field in the order will identify whether the order was placed by an organization or a person.

"customer": {  
    "type": "organization", // optionally, this could be set to "person"  
    "organization_registration_id": "556036-0793"  
},

The billing_address will potentially include additional fields for organization details (e.g., organization_name, reference).

Note: Contact Kustom to enable B2B support for your e-store ID before going live.