Delete invoice
Deletes (marks as deleted) an invoice. **Soft delete:** The invoice is not physically deleted, only marked as deleted. **Restriction:** Only invoices in `DRAFT` status can be deleted.
API Key authentication.
Format: Authorization: Bearer beel_sk_<key>
Scopes: API Keys use the same scopes as OAuth2 tokens. Each key is created with
specific scopes that limit which endpoints it can access. The required scope for each
endpoint is documented in the operation's security section under OAuth2.
Obtaining Keys: API Keys are managed from the BeeL dashboard
Security: API Keys are secret credentials. Do not share them or store them in source code
In: header
Path Parameters
Invoice ID
uuidResponse Body
application/json
application/json
application/json
application/json
curl -X DELETE "https://app.beel.es/api/v1/invoices/550e8400-e29b-41d4-a716-446655440000"{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "The provided data is not valid",
"details": {
"field": "specific error message"
}
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
}
}{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication required"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
}
}{
"success": false,
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
}
}Create invoice POST
Creates a new invoice. **Idempotency:** Supports `Idempotency-Key` header to prevent duplicates.
Download multiple invoice PDFs as ZIP POST
Downloads multiple invoice PDFs as a single ZIP file. **Limits:** - Maximum 20 invoices per request - Maximum 50MB total ZIP size **Partial success:** If some PDFs are not available (not generated, not found), the response will include a `failures` array with details. The ZIP will still be generated with the available PDFs. **Error handling:** - If NO PDFs are available, returns 400 Bad Request - If some PDFs are unavailable, returns 200 with partial ZIP + failures list