orderdetails_page_afterproductinfo widget zone. It invites the customer to opt-in to WhatsApp order tracking notifications.orderdetails_page_overview widget zone. It shows shipment progress and WhatsApp notification status for the order.These widgets are rendered via the nopCommerce widget zone system. The plugin implements IWidgetPlugin to inject view components into public store pages.
orderdetails_page_afterproductinfo — Opt-in widget on the checkout completed pageorderdetails_page_overview — Tracking status widget on the order details pageorder_summary_content_after — Compact opt-in prompt on the order summary page (optional)POST /WhatsApp/OptIn with orderId + phoneWhatsApp.OptInWhatsAppMessageLog entries for the order IDCarrierTrackingUrls settingOrderId — from route dataCustomerPhone — pre-filled from BillingAddress.PhoneNumberIsOptedIn — from customer attribute WhatsApp.OptInCountryCode — derived from BillingAddress.CountryId phone prefixOrderId, OrderStatus — from Order entityShipmentStatus — from Shipment entity (mapped to progress step)TrackingNumber, CarrierName — from ShipmentTrackingUrl — constructed from CarrierTrackingUrls[CarrierName] with {tracking} replacedNotifications — list of WhatsAppMessageLog entries for the order, each with MessageType, Status, SentAtPOST /WhatsApp/OptIn — customer opts in: stores phone + creates customer attributePOST /WhatsApp/OptOut — customer opts out: removes attribute, adds to blacklistGET /WhatsApp/TrackingStatus?orderId={id} — AJAX: returns tracking progress + notification list as JSONIsEnabled = false)RequireCustomerAccount setting is trueIWidgetPlugin with GetWidgetZonesAsync()ShowOptInOnCheckoutCompleted, ShowTrackingOnOrderDetails, RequireCustomerAccount