Snippets Order-tracking

Bootstrap 5 Order Tracking Page with Delivery Progress

An order tracking page with a four-stage delivery progress bar, shipping details, and the items in the order.

Bootstrap 5 No jQuery Dec 2019 7.2K views

<section class="wdw-stage ot-stage">
  <div class="container" style="max-width:900px">
    <nav aria-label="breadcrumb"><ol class="breadcrumb small mb-3"><li class="breadcrumb-item"><a href="#" class="text-decoration-none">My orders</a></li><li class="breadcrumb-item active" aria-current="page">Tracking</li></ol></nav>
    <div class="wdw-card overflow-hidden">
      <div class="d-flex flex-wrap align-items-center justify-content-between gap-3 px-4 px-md-5 pt-4 pt-md-5 pb-3">
        <div>
          <span class="wdw-eyebrow">Order #OD45345345435</span>
          <h2 class="wdw-heading h2 mb-0">Arriving 29 Nov</h2>
        </div>
        <span class="badge rounded-pill bg-primary-subtle text-primary-emphasis px-3 py-2 d-inline-flex align-items-center gap-2"><span class="ot-pulse" aria-hidden="true"></span>In transit</span>
      </div>

      <div class="px-4 px-md-5 pb-4">
        <ol class="ot-track list-unstyled mb-4 mt-3" aria-label="Delivery progress">
          <li class="ot-s is-done"><span class="ot-dot"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12.5l4.5 4.5L19 7.5"/></svg></span><span class="ot-label">Order confirmed</span><span class="ot-date">24 Nov</span></li>
          <li class="ot-s is-done"><span class="ot-dot"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 8l-9-5-9 5v8l9 5 9-5zM3 8l9 5 9-5M12 13v8"/></svg></span><span class="ot-label">Picked by courier</span><span class="ot-date">25 Nov</span></li>
          <li class="ot-s is-done is-current" aria-current="step"><span class="ot-dot"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M2 6h11v10H2zM13 10h4l4 3v3h-8"/><circle cx="7" cy="18" r="2"/><circle cx="17" cy="18" r="2"/></svg></span><span class="ot-label">On the way</span><span class="ot-date">27 Nov</span></li>
          <li class="ot-s"><span class="ot-dot"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 21s7-6.2 7-11.5A7 7 0 005 9.5C5 14.8 12 21 12 21z"/><circle cx="12" cy="9.5" r="2.5"/></svg></span><span class="ot-label">Delivered</span><span class="ot-date">Est. 29 Nov</span></li>
        </ol>

        <dl class="row g-3 ot-meta rounded-4 bg-body-tertiary p-3 mx-0 mb-4">
          <div class="col-6 col-md-3"><dt class="small wdw-muted fw-medium">Estimated delivery</dt><dd class="mb-0 fw-semibold">29 Nov 2026</dd></div>
          <div class="col-6 col-md-3"><dt class="small wdw-muted fw-medium">Shipped by</dt><dd class="mb-0 fw-semibold">BlueDart<span class="d-block small fw-normal wdw-muted">+1 598 675 986</span></dd></div>
          <div class="col-6 col-md-3"><dt class="small wdw-muted fw-medium">Status</dt><dd class="mb-0 fw-semibold">In transit</dd></div>
          <div class="col-6 col-md-3"><dt class="small wdw-muted fw-medium">Tracking number</dt><dd class="mb-0 fw-semibold ot-track-no">BD045903594059</dd></div>
        </dl>

        <h3 class="h6 fw-bold mb-3">Items in this order</h3>
        <ul class="list-unstyled row g-3 mb-4">
          <li class="col-md-4"><div class="wdw-card-sm d-flex gap-3 align-items-center p-3 h-100"><span class="wdw-icon ot-tile"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="5" width="16" height="11" rx="2"/><path d="M2 20h20"/></svg></span><div class="min-w-0"><div class="fw-semibold small">Dell XPS 13 laptop</div><div class="small wdw-muted">512 GB SSD, 16 GB RAM</div><div class="fw-bold mt-1">$950</div></div></div></li>
          <li class="col-md-4"><div class="wdw-card-sm d-flex gap-3 align-items-center p-3 h-100"><span class="wdw-icon ot-tile"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="5" width="16" height="11" rx="2"/><path d="M2 20h20"/></svg></span><div class="min-w-0"><div class="fw-semibold small">HP Pavilion 15 laptop</div><div class="small wdw-muted">512 GB SSD, 8 GB RAM</div><div class="fw-bold mt-1">$850</div></div></div></li>
          <li class="col-md-4"><div class="wdw-card-sm d-flex gap-3 align-items-center p-3 h-100"><span class="wdw-icon ot-tile"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="5" width="16" height="11" rx="2"/><path d="M2 20h20"/></svg></span><div class="min-w-0"><div class="fw-semibold small">Acer Aspire 5 laptop</div><div class="small wdw-muted">256 GB SSD, 8 GB RAM</div><div class="fw-bold mt-1">$650</div></div></div></li>
        </ul>
        <div class="d-flex flex-wrap justify-content-between align-items-center gap-3 border-top pt-4">
          <a href="#" class="btn btn-outline-primary rounded-pill px-4">Back to orders</a>
          <p class="mb-0 wdw-muted">Total <span class="ms-2 fs-4 fw-bold text-body-emphasis">$2,450</span></p>
        </div>
      </div>
    </div>
  </div>
</section>

Built on Bootstrap 5.3.8 with plain JavaScript — no jQuery. Supports light and dark mode via data-bs-theme.

Free to use in personal and commercial projects under the MIT license.