Umbraco Commerce
CMSCloudHeartcoreDXP
15.latest
15.latest
  • Umbraco Commerce Documentation
  • Release Notes
    • v15.1.0-Rc
    • v15.0.0-Rc
  • Commerce Products
    • Commerce Packages
    • Commerce Payment Providers
    • Commerce Shipping Providers
  • Getting Started
    • Requirements
    • Installation
    • Licensing
    • Configuration
    • User Interface
  • Upgrading
    • Upgrading Umbraco Commerce
    • Version Specific Upgrade Notes
    • Migrate from Vendr to Umbraco Commerce
      • Migrate Umbraco Commerce Checkout
      • Migrate custom Payment Providers
  • Tutorials
    • Build a Store in Umbraco using Umbraco Commerce
      • Installation
      • Creating a Store
        • Configuring your Store
      • Creating your first Product
      • Implementing a Shopping Cart
        • Using the Umbraco.Commerce.Cart Drop-in Shopping Cart
        • Creating a Custom Shopping Cart
      • Implementing a Checkout Flow
        • Using the Umbraco.Commerce.Checkout Drop-in Checkout Flow
        • Creating a Custom Checkout Flow
      • Configuring Store Access Permissions
  • How-To Guides
    • Overview
    • Configure SQLite support
    • Use an Alternative Database for Umbraco Commerce Tables
    • Customizing Templates
    • Configuring Cart Cleanup
    • Limit Order Line Quantity
    • Implementing Product Bundles
    • Implementing Member Based Pricing
    • Implementing Dynamically Priced Products
    • Implementing Personalized Products
    • Implementing a Currency Switcher
    • Building a Members Portal
    • Order Number Customization
    • Create an Order via Code
  • Key Concepts
    • Get to know the main features
    • Base Currency
    • Calculators
    • Currency Exchange Rate Service Provider
    • Dependency Injection
    • Discount Rules / Rewards
    • Events
      • List of validation events
      • List of notification events
    • Fluent API
    • Order Calculation State
    • Payment Forms
    • Payment Providers
    • Pipelines
    • Price/Amount Adjustments
    • Price Freezing
    • Product Adapters
    • Product Bundles
    • Product Variants
      • Complex Variants
    • Properties
    • ReadOnly and Writable Entities
    • Sales Tax Providers
    • Search Specifications
    • Settings Objects
    • Shipping Package Factories
    • Shipping Providers
    • Shipping Range/Rate Providers
    • Tax Sources
    • UI Extensions
      • Analytics Widgets
      • Entity Quick Actions
      • Order Line Actions
      • Order Properties
      • Order Collection Properties
      • Order Line Properties
      • Store Menu Items
    • Umbraco Properties
    • Unit of Work
    • Umbraco Commerce Builder
    • Webhooks
  • Reference
    • Stores
    • Shipping
      • Fixed Rate Shipping
      • Dynamic Rate Shipping
      • Realtime Rate Shipping
    • Payments
      • Configure Refunds
      • Issue Refunds
    • Taxes
      • Fixed Tax Rates
      • Calculated Tax Rates
    • Storefront API
      • Endpoints
        • Order
        • Checkout
        • Product
        • Customer
        • Store
        • Currency
        • Country
        • Payment method
        • Shipping method
        • Content
    • Management API
    • Go behind the scenes
    • Telemetry
Powered by GitBook
On this page
  • Accessing the Default Built-in Templates
  • Creating Custom Templates
  • Email Templates
  • Print and Export Templates
  • Shipping Custom Templates in a Razor Class Library

Was this helpful?

Edit on GitHub
Export as PDF
  1. How-To Guides

Customizing Templates

Learn how to create custom templates for emails, prints, and exports.

PreviousUse an Alternative Database for Umbraco Commerce TablesNextConfiguring Cart Cleanup

Last updated 5 months ago

Was this helpful?

Umbraco Commerce provides support for customizing templates for emails, prints, and exports. This allows you to tailor the outputs of your e-commerce solution to meet specific branding or functional requirements.

Accessing the Default Built-in Templates

The default templates for email, print, and export are embedded in Razor Class Libraries (RCLs) in Umbraco Commerce. To customize these templates, you can extract them and use them as a starting point.

Download the custom templates and place them in /Views/Partials/Commerce/Email/.

Creating Custom Templates

Email Templates

To Create a Custom Email Template:

  1. Create a Razor view file (.cshtml) in /Views/Partials/Commerce/Email/.

  2. Implement the IEmailTemplate interface to make the template available in Umbraco Commerce:

using Umbraco.Commerce.Core.Interfaces;  

public class CustomOrderEmailTemplate : IEmailTemplate  
{  
    public virtual string FileName => "CustomOrderEmail.cshtml";  
}  
  1. Register the Template in a Composer:

using Umbraco.Cms.Core.Composing;  
using Umbraco.Cms.Core.DependencyInjection;  

public class CustomTemplateComposer : IComposer  
{  
    public void Compose(IUmbracoBuilder builder)  
    {  
        builder.EmailTemplates().Add<CustomOrderEmailTemplate>();  
    }  
}  

Print and Export Templates

To create Print/Export Templates:

  1. Create a Razor view file (.cshtml) under the relevant paths:

/Views/Partials/Commerce/Prints/  
/Views/Partials/Commerce/Exports/  
  1. Implement the IPrintTemplate or IExportTemplate interface to make the template available in Umbraco Commerce.

  2. Register the template in a Composer similar to the email template process.

Shipping Custom Templates in a Razor Class Library

To distribute custom templates as part of a Razor Class Library (RCL):

  1. Create a new Razor Class Library project.

  2. Add the template files under appropriate paths, for example, Views/Partials/Commerce/Emails/.

  3. Implement interfaces like IEmailTemplate, IPrintTemplate,or IExportTemplate .

  4. Use a composer to register your custom templates.

15KB
Umbraco.Commerce.Templates.v15.zip
archive
Umbraco Commerce Custom Templates