feat(gro-609): add refund handling and payment stats to admin
- Add stripePaymentIntentId to Invoice schema and types - Add POST /api/invoices/:id/refund endpoint (Stripe placeholder) - Add GET /api/invoices/stats/summary for payment analytics - Add refund button + dialog (full/partial) to InvoiceDetailModal - Add payment stats cards to Invoices page (revenue, outstanding, refunds, method breakdown) Ref: GRO-609 Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
@@ -251,6 +251,7 @@ export const invoices = pgTable(
|
||||
status: invoiceStatusEnum("status").notNull().default("draft"),
|
||||
paymentMethod: paymentMethodEnum("payment_method"),
|
||||
paidAt: timestamp("paid_at"),
|
||||
stripePaymentIntentId: text("stripe_payment_intent_id"),
|
||||
notes: text("notes"),
|
||||
createdAt: timestamp("created_at").notNull().defaultNow(),
|
||||
updatedAt: timestamp("updated_at").notNull().defaultNow(),
|
||||
|
||||
@@ -150,6 +150,7 @@ export interface Invoice {
|
||||
status: InvoiceStatus;
|
||||
paymentMethod: PaymentMethod | null;
|
||||
paidAt: string | null;
|
||||
stripePaymentIntentId: string | null;
|
||||
notes: string | null;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
|
||||
Reference in New Issue
Block a user