Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4a63098e3e | ||
|
|
2e6668ff0d |
@@ -163,12 +163,9 @@ async function handleOrderConfirmed(order: Order, eventType: string) {
|
||||
// Send customer email only for ORDER_CONFIRMED (not ORDER_CREATED)
|
||||
if (eventType === "ORDER_CONFIRMED") {
|
||||
await orderNotificationService.sendOrderConfirmation(order);
|
||||
}
|
||||
|
||||
// Send admin notification for both events
|
||||
await orderNotificationService.sendOrderConfirmationToAdmin(order);
|
||||
|
||||
// Track analytics (fire and forget - don't await)
|
||||
// Track revenue and order analytics only on ORDER_CONFIRMED (not ORDER_CREATED)
|
||||
// This prevents duplicate tracking when both events fire for the same order
|
||||
analyticsService.trackOrderReceived({
|
||||
orderId: order.id,
|
||||
orderNumber: order.number,
|
||||
@@ -185,6 +182,10 @@ async function handleOrderConfirmed(order: Order, eventType: string) {
|
||||
orderId: order.id,
|
||||
orderNumber: order.number,
|
||||
});
|
||||
}
|
||||
|
||||
// Send admin notification for both events
|
||||
await orderNotificationService.sendOrderConfirmationToAdmin(order);
|
||||
}
|
||||
|
||||
async function handleOrderFulfilled(order: Order) {
|
||||
|
||||
@@ -53,6 +53,7 @@ class AnalyticsService {
|
||||
|
||||
async trackRevenue(data: RevenueData): Promise<void> {
|
||||
try {
|
||||
console.log(`Tracking revenue: ${data.amount} ${data.currency} for order ${data.orderNumber}`);
|
||||
await op.revenue(data.amount, {
|
||||
currency: data.currency,
|
||||
order_id: data.orderId,
|
||||
|
||||
Reference in New Issue
Block a user