fix: vinyl order attribution and 1-hour customer delivery window
Vinyl line items now include the parent product name in their notes
("Vinyl add-on for: X" and "Add-on for: X | Text: ...") so the Square
dashboard and receipts show which item the vinyl belongs to.
Confirmation emails now show a 1-hour arrival window (was 2.5 hrs
because jobMin for classic tier was used; jobMin is still sent to
Square as deliveryWindowDuration for internal job scheduling).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
2be379a029
commit
ffd07e35bd
@ -386,9 +386,10 @@ export async function POST(req: NextRequest) {
|
||||
if (!captured) throw new Error('Payment capture returned no result')
|
||||
|
||||
// ── Fire-and-forget: emails only (calendar already written above) ────────
|
||||
const subtotalCents = lineItems.reduce((sum, li) => sum + li.priceCents * li.quantity, 0)
|
||||
const subtotalCents = lineItems.reduce((sum, li) => sum + li.priceCents * li.quantity, 0)
|
||||
const CUSTOMER_WINDOW_MIN = 60 // 1-hour arrival window shown to customer
|
||||
const slotEndISO = deliverySlotISO
|
||||
? new Date(new Date(deliverySlotISO).getTime() + jobMin * 60_000).toISOString()
|
||||
? new Date(new Date(deliverySlotISO).getTime() + CUSTOMER_WINDOW_MIN * 60_000).toISOString()
|
||||
: undefined
|
||||
|
||||
void (async () => {
|
||||
|
||||
@ -275,7 +275,7 @@ export default function CartDrawer() {
|
||||
quantity: e.quantity,
|
||||
priceCents: e.vinylShapePriceCents ?? 450,
|
||||
catalogItemId: e.vinylShapeVariationId,
|
||||
note: 'For custom vinyl',
|
||||
note: `Vinyl add-on for: ${e.product.name}`,
|
||||
},
|
||||
{
|
||||
name: 'Custom Vinyl',
|
||||
@ -283,6 +283,7 @@ export default function CartDrawer() {
|
||||
priceCents: vinylCents,
|
||||
catalogItemId: e.product.variations[0]?.id ?? e.product.id,
|
||||
note: [
|
||||
`Add-on for: ${e.product.name}`,
|
||||
`Text: "${e.vinylText}"`,
|
||||
e.vinylFontName ? `Font: ${e.vinylFontName}` : null,
|
||||
].filter(Boolean).join(' | ') || undefined,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user