update
This commit is contained in:
@ -412,6 +412,13 @@ export class EInvoice implements TInvoice {
|
||||
try {
|
||||
const encoder = EncoderFactory.createEncoder(format);
|
||||
const invoice = this.mapToTInvoice();
|
||||
|
||||
// Import EN16931Validator dynamically to avoid circular dependency
|
||||
const { EN16931Validator } = await import('./formats/validation/en16931.validator.js');
|
||||
|
||||
// Validate mandatory fields before encoding
|
||||
EN16931Validator.validateMandatoryFields(invoice);
|
||||
|
||||
return await encoder.encode(invoice);
|
||||
} catch (error) {
|
||||
throw new EInvoiceFormatError(`Failed to encode to ${format}: ${error.message}`, { targetFormat: format });
|
||||
|
Reference in New Issue
Block a user