Feature #10518
openFixed multiple Admin and Ecommerce issues related to pickup dates, preorder catalog loading, checkout pickup-date selection, guest OTP authentication, and order placement.
100%
Description
Admin Orders – Frontend
Hide “Update & Picked Today” from the normal Orders List payment update modal.
Normal payment updates now display only Cancel and Update.
Keep “Update & Picked Today” available only in the Pickup Locations view.
Prevent accidental pickup status changes during payment-only updates.
Admin Pickup Email / Backend
Fix pickup status email/SMS showing the customer's scheduled pickup date when Picked Today is selected.
When an admin explicitly provides a pickup date:
Use that date in email/SMS.
Save that date with the order.
Continue using the customer's scheduled pickup date when the status update does not override the date, such as Ready.
Ecommerce Catalog – Preorder
Fix 400 Catalog not found errors for preorder products within the valid sale window.
Make the catalog/product sale window end date inclusive through the end of the day.
Fetch only the required catalog type(s): pickup, delivery, or both.
Use Promise.allSettled so one failed request does not prevent other catalog requests.
Display the actual API error instead of a generic catalog loading message.
Ecommerce Checkout – Pickup Dates
Do not automatically select the first pickup date.
Do not automatically save the first pickup slot as selectedPickupDate when adding products to the cart.
Require the customer to explicitly select a pickup date before placing the order.
Block Place Order until a pickup date is selected.
Apply one selected pickup date to all pickup items.
Ensure the same pickup date is displayed for every pickup product in the Confirm Pickup modal and sent in the order payload.
Ecommerce Auth / Place Order
Make OTP verification mandatory for guest users.
Prevent guests from bypassing OTP through Continue/backdrop interactions.
Automatically verify and continue when all 6 OTP digits are entered or pasted.
Preserve the guest authentication token throughout checkout.
If the token is missing or expired:
Display “You're not logged in”.
Redirect the customer to the catalog to complete OTP verification again.
Store customerId after guest OTP verification.
Resolve customerId from checkout state, storage, or the authentication token before Place Order.
Prevent missing-field errors related to paymentMethodType, customerId, and products.
Ensure guest orders can be placed successfully using Card, Cash, or Zelle.
Files Changed
evergreen_pos_fe
AdminOrder.tsx
evergreen_pos_be
order.service.js
evergreenpos_E-commerce_new
CheckoutPreorder.tsx
catlogproducts.tsx
Login.tsx
LoginForm.tsx
Subtasks
Related issues
Updated by Pavan Kumar Murala 25 days ago
- Status changed from New to In Progress
Updated by Pavan Kumar Murala 25 days ago
Admin: Open payment update from the normal Orders List and verify only Cancel and Update are displayed.
Admin: Mark an order as Picked Today and verify email/SMS uses today's pickup date instead of the customer's scheduled date.
Ecommerce: Open preorder catalog during the valid sale window and verify products load without a 400 error.
Ecommerce: Open checkout and verify no pickup date is preselected.
Ecommerce: Select one pickup date and verify the same date is applied to all pickup items in the Confirm Pickup modal and order payload.
Guest: Verify OTP cannot be skipped.
Guest: Enter/paste all 6 OTP digits and verify automatic verification and checkout continuation.
Guest: Complete Place Order using Card, Cash, and Zelle and verify the order succeeds without missing customerId or expired-token errors.
Guest: Test an expired/missing token and verify “You're not logged in” is shown and the customer is redirected to the catalog for OTP verification.
Updated by Pavan Kumar Murala 25 days ago
- Status changed from In Progress to Resolved
- % Done changed from 0 to 100
- Estimated time set to 5:00 h