diff --git a/server/api/series/[id]/tickets/purchase.post.js b/server/api/series/[id]/tickets/purchase.post.js index bcf1ba9..740a752 100644 --- a/server/api/series/[id]/tickets/purchase.post.js +++ b/server/api/series/[id]/tickets/purchase.post.js @@ -44,9 +44,12 @@ export default defineEventHandler(async (event) => { member = await Member.findOne({ email: email.toLowerCase() }); } + // Resolve canonical email: use authenticated member's email if available + const canonicalEmail = member ? member.email : email.toLowerCase(); + // Validate purchase const validation = validateSeriesTicketPurchase(series, { - email, + email: canonicalEmail, name, member, }); @@ -80,7 +83,7 @@ export default defineEventHandler(async (event) => { const registration = { memberId: member?._id, name, - email: email.toLowerCase(), + email: canonicalEmail, membershipLevel: member?.circle || "non-member", isMember: !!member, ticketType: ticketInfo.ticketType, @@ -115,7 +118,7 @@ export default defineEventHandler(async (event) => { // Send confirmation email try { await sendSeriesPassConfirmation({ - to: email, + to: canonicalEmail, name, series: { title: series.title,