Skip to content

Fiskaly Create Invoice

This module is the main node for tax submission via Fiskaly SIGN ES. It allows creating new invoices or updating existing ones using the API’s PUT operation. It supports multiple invoice types according to Spanish tax regulations:

  • SIMPLIFIED: Simplified invoice
  • COMPLETE: Complete invoice
  • CORRECTING: Corrective invoice
  • ENRICHMENT: Supplementary invoice
  • REMEDY: Remedy
  • EXTERNAL: External invoice
  • DRAFT: Draft (can be deleted later)

The module automatically generates a UUID for the invoice if none is provided. Invoice lines are passed as a JSON array with description, quantity, amount and tax rate. Optionally, tax breakdown, signer and additional metadata can be included.

The module is of type hidden (hidden in the main interface).

ParameterTypeRequiredDescription
credentials_idcredentialsYesFiskaly credential
taxpayer_idtextYesUUID of the issuing taxpayer
invoice_idtextNoInvoice UUID (auto-generated if empty)
typeselectYesInvoice type: SIMPLIFIED, COMPLETE, CORRECTING, ENRICHMENT, REMEDY, EXTERNAL, DRAFT
numbertextYesIssuer’s invoice number
issue_datetextYesIssue date (YYYY-MM-DD)
client_idtextNoUUID of the recipient client
descriptiontextNoGeneral invoice description
linestextareaYesJSON array of lines: [{description, quantity, amount, tax_rate}]
tax_breakdowntextareaNoTax breakdown in JSON (optional, calculated from lines)
currencytextNoISO currency code (default: EUR)
total_amounttextNoInvoice total amount
signer_idtextNoUUID of the signing certificate
metadatatextareaNoAdditional metadata in JSON

Requires Fiskaly type credentials with:

  • api_key: Fiskaly API Key
  • api_secret: Fiskaly API Secret
{
"nextModule": "siguiente_modulo",
"data": {
"success": true,
"invoice": { "...datos completos de la factura..." },
"invoice_id": "550e8400-e29b-41d4-a716-446655440000",
"state": "SIGNED",
"type": "COMPLETE",
"message": "Factura FAC-001 creada/actualizada exitosamente"
}
}
{
"credentials_id": "mi-fiskaly",
"taxpayer_id": "uuid-contribuyente",
"type": "COMPLETE",
"number": "FAC-2026-001",
"issue_date": "2026-03-23",
"lines": "[{\"description\": \"Servicio de consultoria\", \"quantity\": 1, \"amount\": 1000.00, \"tax_rate\": 21}]",
"client_id": "uuid-cliente-receptor"
}
  • Fiskaly SIGN ES API - PUT /taxpayers/{taxpayer_id}/invoices/{invoice_id}
  • If invoice_id is not provided, a UUIDv4 is automatically generated
  • The lines field must be a valid JSON array
  • The default currency is EUR; it is only sent if different
  • The tax_breakdown field is optional and can be calculated from the lines
  • PUT (upsert) is used: if the invoice already exists, it is updated
  • Invoices in DRAFT state can be deleted with the fiskalyDeleteInvoice node