Get Started

Errors

HTTP status codes the API returns, what they mean, and how to handle them.

The API uses standard HTTP status codes. The response body, when present, contains a Spanish-language message field and an error code suitable for programmatic handling.

Status Meaning
200 OK Validation completed. valid: false combined with a transient SAT message means "retry later."
202 Accepted Async validation started. Returned when webhook_url is provided. The full result is POSTed to your webhook URL when ready.
401 Unauthorized Missing or invalid API key.
402 Payment Required Insufficient credits and no prepaid balance. Add balance or upgrade the plan.
422 Unprocessable Entity The request was well-formed but the input is invalid. The error field is one of: missing_rfc, invalid_rfc, invalid_webhook_url.
429 Too Many Requests Rate limit exceeded. Back off and retry.
500 Internal Server Error Something went wrong on our end. Please retry.

Handling "unknown" results

A 200 OK with valid: null means we reached our system but SAT could not be reached. Treat this as transient and retry, usually within seconds. The corresponding message is in Spanish and describes the SAT-side condition.