Skip to content

Order Details Page with Product Photos

Bootstrap 5 order details page with product photos, delivery progress tracker, price summary, shipping address, copy order number and buy-again toast.

Also known as: order confirmation page, view order screen, order tracking page, order summary page, delivery status tracker

Order Details Page with Product Photos live demo

Open in new tab

Bootstrap 5 code (HTML, CSS, JS)

A Bootstrap 5 order details page that shows a single purchase with product photos, a four-step delivery tracker, a price summary, the shipping address and the payment method. Use it as the "view order" screen in a customer account, an order history area or a post-purchase confirmation page.

How it works

The root is section.od-order, a warm off-white band with a container-lg inside. The .od-header row holds the order title with .od-number, a copy button (.od-copy), a pill status badge (.od-badge) and two actions: an outlined Invoice link (.od-btn-outline) and a filled Track package link (.od-btn-primary).

Below it, ol.od-steps is a CSS grid with four .od-step items. Steps with .is-done get a filled teal dot and color the connector line drawn by the next step's ::before; .is-current gets an outlined dot with a soft halo. The main area is a Bootstrap row: the left card lists the products as .od-item grid rows with a square .od-thumb photo, name, variant line, price and a "Buy again" button; the right column has the dl.od-totals summary and an .od-info card with the address and payment.

On DOMContentLoaded the script fills each data-od-day element with a date relative to today. Clicking .od-copy copies the value of its data-copy attribute with the Clipboard API, falling back to a hidden textarea and execCommand('copy') when the API is not available. Clicking .od-again reads data-product, changes the button label to "Added" and shows a message in the Bootstrap toast (.od-toast), created with bootstrap.Toast.getOrCreateInstance.

Customization

  • --od-accent and --od-accent-soft on .od-order in style.css: change the teal used by the tracker, badge, buttons and discount line.
  • --od-bg and --od-line: change the page background and the border color of cards and the tracker.
  • --od-thumb: set the product photo size (default 96px); the item grid column follows it.
  • Move .is-current and aria-current="step" to another .od-step (and add .is-done to the ones before it) to show a different delivery stage.
  • data-copy on .od-copy: the text that is copied, normally your order number.
  • The comment in the .od-again click handler in script.js: replace the toast with a fetch() call to your cart endpoint.
  • delay: 3500 in script.js: how long the toast stays visible, in milliseconds.

Use cases

  • Online stores: customers open a past purchase to see product photos, prices, totals and the shipping address
  • Customer account areas: the view order screen of an order history list, with Invoice and Track package buttons
  • Post-purchase pages: a four-step delivery tracker shows whether the order is packed, shipped or delivered
  • Repeat-purchase shops: shoppers reorder an item with the Buy again button and get a toast confirmation
  • Support pages: customers copy the order number with one click before contacting help

Accessibility

The section is labelled by the order heading. The tracker is an ordered list with an aria-label, and the active stage carries aria-current="step"; decorative step icons are aria-hidden. The icon-only copy button has an aria-label. Totals use a dl so each label is paired with its amount. The toast has role="status" and aria-live="polite", so copy and cart messages are announced, and its close button is labelled. All buttons keep a visible teal focus ring, and every product photo has descriptive alt text.

Usage notes

Requires Bootstrap 5 (CSS and bundle, added automatically) and Bootstrap Icons. The Clipboard API only works on HTTPS pages; the fallback handles other cases. The product photos come from Unsplash; replace them with your own images.

Order Details Page with Product Photos at a glance

Framework
Bootstrap 5
Code
HTML, CSS, JavaScript
JavaScript
Vanilla JavaScript, no jQuery
Dependencies
Bootstrap 5, Bootstrap Icons
Layout
Responsive, works on mobile
Category
Order History
License
Free for personal and commercial use

Questions about this template

Can I use the Order Details Page with Product Photos code for free?

Yes. You can copy or download the code and use it in personal and commercial projects, including client work. No sign-up is needed. Reselling it as part of a component library or template collection is not allowed; see the license.

How do I add it to my website?

Load Bootstrap 5 and Bootstrap Icons from a CDN (the links are under Requirements). Paste the HTML where the component should appear, add the CSS to your stylesheet and load the JavaScript before the closing </body> tag. Download HTML gives you a complete page with everything already linked.

Does it need jQuery or a JavaScript framework?

No. The script is plain vanilla JavaScript, so it works without jQuery, React or Vue. You can still use the markup inside those frameworks.

Does it work on mobile?

Yes. The layout adapts to small screens. Use the Mobile and Tablet buttons above the live demo to check it at phone and tablet width.

Requirements

Add these to your page (already included in the download):

  • <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css">
  • <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
  • <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
Order Details Page with Product Photos – Bootstrap 5 order history component screenshot
Order Details Page with Product Photos · Bootstrap 5 Order History

More Order History

Printable Invoice Layout – Tailwind CSS order history preview

Printable Invoice Layout

Tailwind CSS invoice with line items, auto-calculated discount, tax and balance due, a print button and print-friendly A4 styles.

Order History – Tailwind CSS order history preview

Order History

Tailwind CSS order history list with status filter chips, colored status badges and expandable order details.