Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/mdiago/VeriFactu/llms.txt

Use this file to discover all available pages before exploring further.

VeriFactu ships with a COM Interop layer (Verifactu.Com) that exposes the core invoice submission functionality as COM objects. This enables non-.NET environments — including Microsoft Excel VBA, Access VBA, and VB6 — to submit VERI*FACTU invoices to the AEAT without any .NET programming knowledge. The COM layer is a thin wrapper over the same .NET business objects used by the main library, so all validation rules, blockchain chaining, and AEAT communication logic are fully preserved.

Architectures disponibles

Three separate COM DLLs are provided to match the bitness of the host process:
DLLArchitectureTypical use case
Verifactu.Com.x86.dll32-bit (x86)32-bit Office (Excel/Access), VB6
Verifactu.Com.x64.dll64-bit (x64)64-bit Office (Excel/Access)
Verifactu.Com.ARM64.dllARM64Windows on ARM devices
The bitness of the COM DLL must match the bitness of the host application. Registering the wrong architecture will result in a “class not registered” error at runtime. Use 32-bit Office → x86 DLL; 64-bit Office → x64 DLL.
To check whether your Office installation is 32-bit or 64-bit, open any Office application and go to File → Account → About [App]. The dialog title or the first line of the version string will indicate “32-bit” or “64-bit”.

Registro del componente COM

Before you can use the objects in VBA, Excel, Access, or VB6, the DLL must be registered with the Windows COM registry.
regsvr32 does not work for managed .NET assemblies. VeriFactu COM DLLs are .NET libraries and must be registered exclusively with RegAsm.exe, the .NET Framework COM registration tool. Using regsvr32 will fail with an error.
Use RegAsm.exe from the .NET Framework matching the DLL architecture. For the 64-bit DLL:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe Verifactu.Com.x64.dll /tlb /codebase
For the 32-bit DLL (32-bit Office or VB6):
C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe Verifactu.Com.x86.dll /tlb /codebase
The /tlb flag generates a type library (.tlb) which enables early-binding and IntelliSense in the VBA editor. The /codebase flag embeds the path to the assembly so that the GAC is not required.
Registration must be run as Administrator. Open a command prompt with “Run as administrator” before executing the command.
To unregister the component:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe Verifactu.Com.x64.dll /unregister

Objetos COM disponibles

Once registered, the following COM objects become available through their ProgIds:
ProgIdClassDescription
Verifactu.VfInvoiceVfInvoiceInvoice object — create, submit, and cancel VERI*FACTU invoice records
Verifactu.VfSettingsVfSettingsConfiguration object — certificate paths, endpoints, storage paths
Verifactu.VfTaxItemVfTaxItemTax line item — represents one tax breakdown entry on an invoice
Verifactu.VfRectificationItemVfRectificationItemRectification reference — identifies an invoice being rectified
Verifactu.VfInvoiceQueryVfInvoiceQueryInvoice query — retrieve submitted invoices from the AEAT
See the COM Object Reference page for full property and method documentation for each object.

Siguientes pasos

VBA / Excel Guide

Step-by-step walkthrough for submitting invoices directly from Excel or Access macros.

COM Object Reference

Full property and method reference for all VeriFactu COM objects.

Build docs developers (and LLMs) love