Update product
Updates an existing product
API Key authentication.
Format: X-API-Key: beel_sk_<key>
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
Product unique UUID
uuidUnique alphanumeric product code (optional)
^[a-zA-Z0-9_-]*$length <= 50Product/service name
length <= 255Detailed description (optional)
Product/service category:
- PRODUCTO - Physical, tangible products
- SERVICIO - General services
- CONSULTORIA - Consulting and advisory services
- SOFTWARE - Development, licenses, SaaS
- FORMACION - Courses, workshops, training
- OTROS - Other unclassified types
"PRODUCTO" | "SERVICIO" | "CONSULTORIA" | "SOFTWARE" | "FORMACION" | "OTROS"Suggested default price (optional)
decimal0.00010 <= valueUnit of measure (optional)
length <= 50Complete tax information with cross-validations:
- IVA: only percentages 0, 4, 10, 21
- IGIC: only percentages 0, 3, 5, 7, 9.5, 15, 20
- IPSI: only percentages 0.5, 1, 2, 4, 8, 10
- OTROS: any percentage between 0 and 100
Equivalence surcharge percentage (optional)
decimal0.010 <= value <= 100IRPF withholding percentage (optional)
decimal0.010 <= value <= 100Indicates whether the product is active
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://app.beel.es/api/v1/productos/497f6eca-6276-4993-bfeb-53cbbbba6f08" \ -H "Content-Type: application/json" \ -d '{}'{
"success": true,
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"codigo": "SERV-001",
"nombre": "Consultoría técnica",
"descripcion": "Servicios de consultoría técnica especializada en desarrollo web",
"categoria": "CONSULTORIA",
"precio_por_defecto": 85.5,
"unidad": "horas",
"impuesto_principal": {
"tipo": "IVA",
"porcentaje": 21,
"clave_regimen": "01"
},
"recargo_equivalencia": 5.2,
"irpf": 15,
"activo": true,
"created_at": "2025-01-18T10:30:00Z",
"updated_at": "2025-01-18T15:45:30Z"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "BAD_REQUEST",
"message": "Invalid request"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication required"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Resource not found"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "The provided data is not valid",
"details": {
"campo": "specific error message"
}
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "UNPROCESSABLE_ENTITY",
"message": "Data cannot be processed",
"details": {
"field": "Specific error description"
}
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}{
"success": false,
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error"
},
"meta": {
"timestamp": "2025-01-15T10:30:00Z",
"request_id": "123e4567-e89b-12d3-a456-426614174000"
}
}Validate NIF against AEAT registry POST
**Public endpoint** to validate a NIF/CIF against the AEAT registry using VeriFactu. This endpoint is useful for: - Pre-validation before registration (proactive feedback) - Validating client NIFs before creating invoices - Verifying that a NIF exists in the registry **Behavior:** - **VALID**: The NIF exists in the AEAT registry. Returns the fiscal name. - **INVALID**: The NIF has correct format but doesn't exist in the registry. - **PENDING**: VeriFactu API is temporarily unavailable. The NIF has valid syntax but couldn't be verified against the registry. - **ERROR**: Technical error during validation (invalid syntax, timeout, etc.) **Note about PENDING:** If you use this endpoint for pre-validation during registration, a PENDING status indicates that the NIF has valid format and the user can continue. The system will validate the NIF automatically when the service becomes available. **Rate limiting:** - With API Key: 100 requests/hour - With Session Cookie: 1000 requests/hour **Authentication:** This endpoint accepts both API Keys and Session Cookies.
Search and autocomplete GET
Optimized endpoint for active product autocomplete