Skip to content

Installation

UmbCheckout 17 supports Umbraco 17.6 or later, on .NET 10.

UmbCheckout is installed using the NuGet package manager using the below command:

dotnet add package UmbCheckout

You will also need to install a payment provider. The UmbCheckout package doesn’t include one, so for Stripe also run:

dotnet add package UmbCheckout.Stripe

Alternatively, you can install using the NuGet package manager GUI within Visual Studio.

UmbCheckout stores the Basket in the .NET session. It adds the session middleware itself, so you don’t need to add app.UseSession() to Program.cs (an existing call is harmless).

  • To change the session settings (for example the idle timeout or the cookie name), use PostConfigure in Program.cs. It works in any order:
builder.Services.PostConfigure<SessionOptions>(options =>
{
options.IdleTimeout = TimeSpan.FromHours(2);
});
  • Load-balanced sites: the session is kept in memory unless your site registers a distributed cache. UmbCheckout registers an in-memory one only when none exists, so register a shared one (for example AddStackExchangeRedisCache or AddDistributedSqlServerCache) and every server sees the same Basket. SessionOptions are site-wide.

UmbCheckout creates the tables it needs when the site starts, so upgrades follow the same process as installation: run the command found above or upgrade using the NuGet package manager GUI.

If you have purchased a license to enable more features, add the following to your appsettings.json file (or, better, to your environment’s secrets or environment variables):

"UmbCheckout": {
"LicenseKey": "YOUR LICENSE KEY HERE"
}

Replacing YOUR LICENSE KEY HERE with the key found in your UmbPanel account.

You are also required to configure the UmbracoApplicationUrl within the Web routing settings within your appsettings.json file. The configuration screen shows a warning while it isn’t set.

"Umbraco": {
"CMS": {
"WebRouting": {
"UmbracoApplicationUrl": "https://www.mysite.com/"
}
}
}