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 UmbCheckoutYou will also need to install a payment provider. The UmbCheckout package doesn’t include one, so for Stripe also run:
dotnet add package UmbCheckout.StripeAlternatively, 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
PostConfigureinProgram.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
AddStackExchangeRedisCacheorAddDistributedSqlServerCache) and every server sees the same Basket.SessionOptionsare site-wide.
Upgrades
Section titled “Upgrades”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.
Installing a License
Section titled “Installing a License”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/" } }}