Checkout Flow - Redesign
Checkout Flow - Redesign
Overview
The checkout flow has been redesigned across three pages to match new mockups: Review Order, Shipping, and Payment. All changes are consolidated on the integration_checkout_redesign branch.
What Changed
Review Order Page (/shop/cart)
- Redesigned cart layout with light grey background and white card panels
- New "Review your order" heading with subtitle
- Larger product images (90px) and improved cart line layout with stepper, remove link, and price grouped together
- Suggested products card with grid layout
- Order summary sidebar with "Continue to Shipping" button
- 3-step progress bar matching the rest of the checkout flow
Shipping Page (/shop/checkout)
- New page heading: "Shipping Details"
- Shipping address card with selected state and Change button
- Delivery speed card with carrier options
- Mobile mini order summary with collapsible details
- Mobile CTA button at bottom
- Pre-selected carrier based on cold-chain requirements and sorted by price
- 3-step progress bar with current step highlighted
Payment Page (/shop/payment)
- Redesigned payment method selection with card token UI
- Expired card handling with visual indication
- Card network badges (Visa, Mastercard, etc.) displayed next to each token
- "Use a new card" option with proper layout
- Green Pay Now button
- 3-step progress bar with payment step highlighted
Cross-Page Changes
- Consistent progress bar styling (.z-checkout-progress) across all checkout pages
- All text standardized to black across the checkout flow
- Footer restored on the Shipping page
- Light grey background applied consistently
Files Modified
- bista_menmd_website/views/shop_cart_redesign.xml - Review Order page templates
- bista_menmd_website/views/shop_checkout.xml - Shipping page templates and progress bar
- bista_menmd_website/views/shop_payment.xml - Payment page structure
- bista_menmd_website/views/payment_token_checkout.xml - Payment method widget
- bista_menmd_website/static/src/scss/website_sale.scss - All checkout styling
- bista_menmd_website/static/src/scss/payment_tokens.scss - Payment token styling
- bista_menmd_website/static/src/js/website_sale.js - Checkout JS extensions
- bista_menmd_website/static/src/js/write_rx.js - Carrier pre-selection logic
- bista_menmd_website/static/src/js/payment_token_manager.js - Card token management
- bista_menmd_website/models/payment_token_ext.py - Payment token extensions
- bista_menmd_website/controllers/main.py - Address sorting controller override
- bista_menmd_website/controllers/website_sale.py - Checkout controller logic
- bista_menmd_website/__manifest__.py - Asset and view registration
- bista_menmd_customization/views/website_sale_confirmation.xml - Order confirmation redesign
- bista_menmd_portal/views/portal_payment_method.xml - Portal payment method layout
How to Test
Review Order Page (/shop/cart)
- Add a product to cart and navigate to /shop/cart
- Verify the 3-step progress bar shows at the top with step 1 highlighted
- Verify cart line items show larger product images, stepper, Remove link, and price grouped together
- Verify suggested products card appears below cart items
- Verify order summary sidebar shows on the right with "Continue to Shipping" green button
- Verify "Secure checkout - SSL encrypted" badge appears below the button
- Test increasing/decreasing quantity and removing an item
- Click "Continue to Shipping"
Shipping Page (/shop/checkout)
- Verify the 3-step progress bar shows with step 1 completed and step 2 highlighted
- Verify heading reads "Shipping Details" with subtitle
- Verify shipping address card shows with selected address and Change button
- Click "Use a different address" - verify the address selector appears
- Verify delivery speed card shows carrier options
- Verify a carrier is pre-selected on page load (based on cold-chain rules)
- Click different carriers - verify the order summary total updates without console errors
- Verify the footer appears at the bottom of the page
- On mobile, verify the mini order summary at top is collapsible
- Click "Continue to Payment"
Payment Page (/shop/payment)
- Verify the 3-step progress bar shows with steps 1 and 2 completed and step 3 highlighted
- Verify saved payment cards display with network badges (Visa, MC, etc.)
- Verify expired cards show with visual indication and cannot be selected
- Verify "Use a new card" option appears at the bottom with proper layout
- Verify the Pay Now button is green
- Test selecting a saved card and submitting payment
- Test entering a new card and submitting payment
Order Confirmation
- After successful payment, verify the centered card design appears
- Verify the three-column info grid displays order details
- Verify the "What's Next?" section displays
Cross-Cutting Tests
- All text across checkout should be black
- Progress bar should be consistent across all three checkout pages
- Background should be light grey across all checkout pages
- All buttons should match brand styling (green for primary CTA, navy for secondary)
- No console errors during the full checkout flow
- Test on both desktop and mobile viewports