diff --git a/src/schemas/invoices.schema.ts b/src/schemas/invoices.schema.ts index f3be3e2..6c04df3 100644 --- a/src/schemas/invoices.schema.ts +++ b/src/schemas/invoices.schema.ts @@ -2,11 +2,11 @@ import { z } from 'zod'; const InvoiceItemSchema = z.object({ description: z.string().nullish(), - quantity: z.number().optional().default(1), + quantity: z.union([z.number(), z.string()]).transform(v => Number(v) || 1).optional().default(1), unit: z.string().nullish(), - unit_price: z.number().optional().default(0), - vat_rate: z.number().optional().default(21.0), - position: z.number().optional(), + unit_price: z.union([z.number(), z.string()]).transform(v => Number(v) || 0).optional().default(0), + vat_rate: z.union([z.number(), z.string()]).transform(v => Number(v)).optional().default(21.0), + position: z.union([z.number(), z.string()]).transform(v => Number(v)).optional(), }); export const CreateInvoiceSchema = z.object({