3682de195b
queuePaymentCheckEmail queued the admin payment-check email with template key 'invoice_payment_check_admin', but no such template exists — the only one is 'invoice_payment_check' (crmEmailTemplates.js:217, seeded by migration 116), which IS the admin "Paid / Partial / Not paid" email. The processor does an exact template_key lookup and throws "template not found", so every dunning admin payment-check email failed, retried to the cap, and got stuck pending. One-word fix: queue 'invoice_payment_check'. Unbreaks the built-in invoice-dunning flow's email step. (Rebased onto the post-decompose invoiceService refactor — the line now lives in invoice/payments.js.)