IRBM requires that submitted invoice data be stored securely and made available for auditing purposes. To meet this requirement, always archive the final signed XML for each invoice after submission.
โ When to archive:
Immediately after the final XML is signed, base64-encoded, and submitted to IRBM โ store that exact copy.
โ Laravel Example:
Storage::disk('s3')->put("invoices/xml/{$invoice->id}_submitted.xml", $signedXmlContent);
$invoice->update([
'irb_xml_path' => "invoices/xml/{$invoice->id}_submitted.xml",
]);
โ Recommended Column:
irb_xml_path
(string)
๐ก Tips:
- โ Use S3 or external backup storage with versioning enabled
- โ
Include
invoice_no
andsubmission_date
in the filename - โ Mark files as immutable (write-once) for legal protection
โ Use case:
This archive is useful for legal disputes, audits, and regenerating invoices for customers.
Coming up in Day 8:
Weโll create a report to track submission statuses across all invoices with filters for failed, submitted, and pending cases.