Snippets Order-tracking

Bootstrap 5 Order Details with Tracking Progress

An order confirmation receipt with per-item delivery tracking progress bars, invoice details and a totals breakdown.

Bootstrap 5 No jQuery Dec 2019 4.7K views

<section class="wdw-stage trk-stage">
  <div class="container" style="max-width: 760px">
    <div class="wdw-card overflow-hidden">
      <header class="px-4 px-md-5 py-4 d-flex flex-wrap align-items-center justify-content-between gap-3 border-bottom">
        <div>
          <span class="wdw-eyebrow">Order confirmed</span> <span class="badge rounded-pill bg-primary-subtle text-primary-emphasis font-monospace ms-1">#788152</span>
          <h1 class="wdw-heading h2 mt-1 mb-1">Thanks for your order, Anjali</h1>
          <p class="wdw-muted mb-0">We emailed your receipt. Delivery updates appear below.</p>
        </div>
        <div class="d-flex align-items-center gap-2">
          <span class="badge rounded-pill bg-success-subtle text-success-emphasis px-3 py-2">Paid</span>
          <button type="button" class="btn btn-primary btn-sm rounded-pill px-3" id="trkInvoice"><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 3v12m0 0l-4-4m4 4l4-4M5 21h14"/></svg>Download invoice</button>
        </div>
      </header>

      <div class="px-4 px-md-5 pt-3 pb-3">
        <div class="d-flex flex-wrap justify-content-between gap-2 mb-3 small">
          <span class="fw-semibold text-body-emphasis">Receipt</span>
          <span class="wdw-muted">Voucher <span class="font-monospace text-body">1KAU9-84UIL</span></span>
        </div>

        <ul class="list-unstyled d-grid gap-3 mb-0">
          <li class="wdw-card-sm p-3">
            <div class="d-flex flex-wrap align-items-center gap-3">
              <img src="https://images.unsplash.com/photo-1511499767150-a48a237f0083?w=240&h=240&fit=crop" width="72" height="72" class="rounded-3 object-fit-cover" alt="Round gold-rim glasses">
              <div class="flex-grow-1">
                <h2 class="h6 mb-1">Jack Jacs</h2>
                <p class="small wdw-muted mb-0">Golden rim · Size M · Qty 1</p>
              </div>
              <strong class="fs-6">₹3,600.00</strong>
            </div>
            <div class="mt-2 pt-2 border-top">
              <div class="d-flex justify-content-between small mb-1">
                <span class="fw-semibold text-body-emphasis">Out for delivery</span>
                <span class="wdw-muted">Arrives today</span>
              </div>
              <ol class="track-steps list-unstyled mb-0" aria-label="Delivery progress"><li class="is-done"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 1 of 4: Placed (completed). </span><span class="lbl">Placed</span></li><li class="is-done"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 2 of 4: Shipped (completed). </span><span class="lbl">Shipped</span></li><li class="is-current" aria-current="step"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 3 of 4: On the way (current). </span><span class="lbl">On the way</span></li><li class=""><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 4 of 4: Delivered (upcoming). </span><span class="lbl">Delivered</span></li></ol>
            </div>
          </li>
          <li class="wdw-card-sm p-3">
            <div class="d-flex flex-wrap align-items-center gap-3">
              <img src="https://images.unsplash.com/photo-1572635196237-14b3f281503f?w=240&h=240&fit=crop" width="72" height="72" class="rounded-3 object-fit-cover" alt="Black-rim rectangular glasses">
              <div class="flex-grow-1">
                <h2 class="h6 mb-1">Michel Mark</h2>
                <p class="small wdw-muted mb-0">Black rim · Size L · Qty 1</p>
              </div>
              <strong class="fs-6">₹1,235.00</strong>
            </div>
            <div class="mt-2 pt-2 border-top">
              <div class="d-flex justify-content-between small mb-1">
                <span class="fw-semibold text-success">Delivered</span>
                <span class="wdw-muted">22 Dec, 2019</span>
              </div>
              <ol class="track-steps list-unstyled mb-0" aria-label="Delivery progress"><li class="is-done"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 1 of 4: Placed (completed). </span><span class="lbl">Placed</span></li><li class="is-done"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 2 of 4: Shipped (completed). </span><span class="lbl">Shipped</span></li><li class="is-done"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 3 of 4: On the way (completed). </span><span class="lbl">On the way</span></li><li class="is-current is-final" aria-current="step"><span class="seg" aria-hidden="true"></span><span class="visually-hidden">Step 4 of 4: Delivered (current). </span><span class="lbl">Delivered</span></li></ol>
            </div>
          </li>
        </ul>
      </div>

      <div class="px-4 px-md-5 pb-4 pt-2">
        <div class="row g-4">
          <div class="col-sm-6">
            <h2 class="h6 mb-3">Order details</h2>
            <dl class="small mb-0 d-grid gap-1">
              <div class="d-flex justify-content-between"><dt class="fw-normal wdw-muted">Invoice number</dt><dd class="mb-0">788152</dd></div>
              <div class="d-flex justify-content-between"><dt class="fw-normal wdw-muted">Invoice date</dt><dd class="mb-0">22 Dec, 2019</dd></div>
            </dl>
          </div>
          <div class="col-sm-6">
            <dl class="small mb-0 d-grid gap-2">
              <div class="d-flex justify-content-between"><dt class="fw-normal wdw-muted">Subtotal</dt><dd class="mb-0">₹4,835</dd></div>
              <div class="d-flex justify-content-between"><dt class="fw-normal wdw-muted">Discount</dt><dd class="mb-0 text-success">−₹150</dd></div>
              <div class="d-flex justify-content-between"><dt class="fw-normal wdw-muted">GST 18%</dt><dd class="mb-0">₹843</dd></div>
              <div class="d-flex justify-content-between border-top pt-2 fs-6"><dt class="fw-bold">Total</dt><dd class="mb-0 fw-bold">₹5,528</dd></div>
            </dl>
          </div>
        </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.