VeriFactu and AEAT
No records are sent to AEAT. Direct VeriFactu module routes are unavailable in the sandbox. A test does not prove fiscal acceptance.
Invoicing sandbox
From the app or through the API, check documents, totals and states before working with real data. Tests have their own company and numbering.
Test document, not a tax invoice
Two companies, separate sequences
A draft uses no number. Issuing only advances the test series.
Validation and results
The sandbox applies the validation rules of available operations. Review invoice totals, correct rejected data and prepare your integration to handle errors.
fact_test_…"lines": [{
"quantity": 2,
"unit_price": 150,
"tax_rate": 21
}]{
"data": {
"status": "draft",
"number": null,
"total": 363,
"currency": "EUR"
}
}Draft created: €300.00 net and €63.00 VAT. No invoice number is used yet.
You can also test permissions, states and idempotency. Use the features enabled by your plan; test mode does not expand access or remove API limits.
Understand API errorsWhat you can actually test
Data stays separate from production. Fiscal submissions and document emails do not reach third parties. Webhooks have one specific exception: the connection ping.
No records are sent to AEAT. Direct VeriFactu module routes are unavailable in the sandbox. A test does not prove fiscal acceptance.
Follow the sending flow and its states without delivering email to the recipient, including your own inbox.
FACe submissions are simulated. A FACE-SANDBOX-* reference is not a real filing with the public administration.
Inspect triggers and runs. Steps are skipped with sandbox_neutralized: the adapter does not run and its action is not applied.
invoice.createdInternal record onlyTest events remain available to query with livemode: false. They are not sent to the external receiver.
GET /v1/events "livemode": false
Take what you have tested into production
Reuse your integration for operations available in both environments. Prepare real data and use a newly generated production credential; editing a key prefix does not turn it into another key.
Enter Test mode and check your documents. Switching back to Production restores your real company context. Test data stays separate.
Check the points you have already verified in your integration.
Choose your connection
Work with an SDK, explore the API contract or connect your assistant. Choose your tool to find the right starting point and documentation.
Compatible technologies and clients
Install the official SDK to work with the API from Node.js. Includes retries, pagination and webhook signature verification.
npm install @factuarea/sdkConnect TypeScriptQuestions
No. A fact_test_ key operates on the sandbox company and uses that company's series. The sequence of your production series is neither touched nor consumed.
Generate a fact_test_ key in the developer dashboard. Send it to the same API URL with the permissions your application needs.
Ask us about plans, features or switching from another tool.