Skip to main content

Shopify - Custom display templates for shipping methods

How to customize the name and description of your shipping methods in Shopify checkout.

Custom Display Templates allow you to control exactly how shipping method names and descriptions appear in your Shopify checkout.

Note!

  • This is an advanced feature that uses Liquid, Shopify's template language, combined with dynamic variables that automatically fill in shipping details like carrier name, service point address, distance, and translated terms. Test thoroughly to make sure that your shipping methods are available for your customers.

  • Sorting criteria for shipping methods are:

    • Price: the lowest price first

    • Delivery method name: sorted in the alphanumeric order

When to Use This Feature

Custom templates are especially recommended when:

  • You sell to foreign markets where your primary carrier subcontracts local carriers for last-mile delivery

  • You operate multiple Shopify Markets with different languages and want to provide localized shipping options

Setting Up Custom Templates

1. Enable the Feature

  1. Go to Apps > Shipmondo and navigate to Shipping Methods.

  2. Select a shipping method (must have a Shipping Product selected) and check Enable custom display templates.

  3. The template fields will appear, and Additional Information will be hidden as custom name and description templates are taking over instead.

2. Choose Your Template Style

You can fill the Custom name template and Custom description template based on your needs. You can write plain text or use Liquid variables.

Plain text example:

DHL Express - Home delivery

Dynamic example:

{{ carrier_name }} - {{ home_delivery | capitalize }}


Examples

Example 1: Static name and description

Scenario: You ship with postal service and want to have a static text.

Custom name template:

Postal delivery

Custom description template:

To door or nearest pick-up point

Result:

Example 2: Service Point Pickup

Scenario: You want your shipping methods through service points to be more "call to action" and include the service type in the name.

Note! It is important to include both service_point_name and distance in custom name template when your shipping method type is service_points to ensure that multiple service points are listed and sorted correctly.

Custom name template:

{{ collect_at | capitalize }} daoSHOP {{ distance }} - {{ service_point_name }} 

Custom description template:

{{ service_point_address }}, {{ service_point_zipcode }} {{ service_point_city }} 

Result:

Example 3: Service Point with a different Last-Mile carrier

Scenario: You use GLS to ship to Sweden, but DSV handles final delivery.

Custom name template:

DSV Ombud {{ distance }} · {{ service_point_name }} 

Custom description template:

{{ service_point_address }}, {{ service_point_zipcode }} {{ service_point_city }}

Result:

Example 4: Home delivery with a different Last-Mile carrier

Scenario: You use PostNord to ship to Germany, but DPD handles final home delivery.

Custom name template:

DPD {{ home_delivery | capitalize }}

Result:


Available Variables

Data Variables

These pull actual shipment information:

Variable

Description

Example Output

{{ carrier_name }}

Carrier name without country code

dao, GLS, PostNord, Bring

{{ service_point_name }}

Name of pickup location

Netto Vesterbrogade

{{ service_point_address }}

Street address

Vesterbrogade 45

{{ service_point_zipcode }}

Postal code

1620

{{ service_point_city }}

City name

København V

{{ distance }}

Distance to service point

(2.3 km)

{{ index }}

Service point number (1, 2, 3...)

1

Translated Terms (21 Languages)

These automatically translate based on customer's checkout language:

Variable

English

Danish

German

Swedish

{{ collect_at }}

collect at

afhent hos

abholen bei

hämta hos

{{ home_delivery }}

home delivery

hjemmelevering

hauszustellung

hemleverans

{{ business_delivery }}

business delivery

erhvervslevering

geschäftslieferung

företagsleverans

{{ pickup_point }}

pickup point

udleveringssted

abholpunkt

utlämningsställe

{{ parcel_shop }}

parcel shop

pakkeshop

paketshop

paketombud

{{ parcel_locker }}

parcel locker

pakkeboks

paketautomat

paketbox

{{ nearest }}

nearest

nærmeste

nächste

närmaste

{{ delivery }}

delivery

levering

lieferung

leverans

{{ shipped_with }}

shipped with

sendes med

versendet mit

skickas med

Supported Languages

English (en), Danish (da), Swedish (sv), Norwegian Bokmål (nb), Norwegian (no), Finnish (fi), Icelandic (is), German (de), Dutch (nl), French (fr), Italian (it), Spanish (es), Portuguese (pt), Polish (pl), Faroese (fo), Estonian (et), Latvian (lv), Lithuanian (lt), Czech (cs), Slovak (sk), Hungarian (hu), Romanian (ro)

Fallback to English if customer's language isn't supported.


Liquid Filters

Format your text dynamically:

Capitalize

Capitalizes the first letter:

{{ collect_at | capitalize }}

Output: Collect at (from "collect at")

Upcase

All uppercase:

{{ carrier_name | upcase }}

Output: GLS (from "gls")

Downcase

All lowercase:

{{ carrier_name | downcase }}

Output: gls (from "GLS")

💡 Expert tips - do's & dont's

  • Keep it short: Shopify checkout has limited space. Aim for under 50 characters for names.

  • Test multiple languages: If selling internationally, check how your template looks in different locales.

  • Use descriptions wisely: Add helpful details like delivery time, address, or opening hours.

  • Combine filters: {{ collect_at | capitalize }} is more natural than {{ collect_at }}

  • Don't use HTML: Templates are plain text only - no <strong> or <br> tags.

  • Don't overload with info: Too many variables make names cluttered and hard to read.

  • Don't forget validation: Invalid Liquid syntax will prevent the shipping method from appearing in checkout.

Character Limits

  • Custom Name: Maximum 100 characters

  • Custom Description: Maximum 200 characters

Shopify may truncate long names depending on theme and device.

Did this answer your question?