API Documentation

Integrate RFC validation into your application with our simple REST API.

How do I authenticate to the RFCCheck API?

All API requests must include your API key in the x-api-key header. You can generate API keys from your dashboard after signing up.

x-api-key: rfc_your_api_key

Base URL

https://rfccheck.com/v1

POST /v1/rfc/validate

Validate an RFC number against the SAT database. Returns registration status, taxpayer name, and digital certificate information.

Request

curl -X POST https://rfccheck.com/v1/rfc/validate \
  -H "x-api-key: rfc_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"rfc": "XAXX010101000"}'

Request Body

Field Type Required Description
rfc string Yes The RFC number to validate (12 or 13 characters)

Response

{
  "rfc": "XAXX010101000",
  "valid": true,
  "message": "RFC válido, puede ser utilizado en comprobantes",
  "name": "EMPRESA EJEMPLO SA DE CV",
  "certs": [
    {
      "serial": "00001000000500000001",
      "status": "Activo",
      "type": "FIEL",
      "valid_from_utc": "2020-01-15T00:00:00Z",
      "valid_to_utc": "2024-01-15T00:00:00Z"
    }
  ]
}

POST /v1/rfc/validate/name-zip

Validate an RFC number with additional taxpayer name and postal code verification for enhanced identity checking.

Request

curl -X POST https://rfccheck.com/v1/rfc/validate/name-zip \
  -H "x-api-key: rfc_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"rfc": "XAXX010101000", "name": "EMPRESA EJEMPLO", "zip": "06600"}'

Request Body

Field Type Required Description
rfc string Yes The RFC number to validate
name string Yes Taxpayer name to verify
zip string Yes Postal code (5 digits) to verify

Response

{
  "rfc": "XAXX010101000",
  "valid": true,
  "message": "RFC válido, puede ser utilizado en comprobantes",
  "name_match": true,
  "zip_match": true
}

What fields are in the API response?

Field Type Description
rfc string The RFC number that was validated
valid boolean Whether the RFC is registered and valid with SAT
message string Status message from SAT (in Spanish)
name string Registered taxpayer name (validate endpoint only)
certs array Digital certificates associated with the RFC
name_match boolean Whether the provided name matches (name-zip endpoint only)
zip_match boolean Whether the provided ZIP matches (name-zip endpoint only)

What do RFCCheck API error codes mean?

HTTP Status Description
200 Success - RFC validation completed
400 Bad Request - Invalid RFC format or missing required fields
401 Unauthorized - Invalid or missing API key
402 Payment Required - No credits or active subscription
429 Too Many Requests - Rate limit exceeded
500 Internal Server Error - Something went wrong on our end

What are the API rate limits for each plan?

API requests are limited based on your subscription plan. When you exceed your monthly limit, requests will return a 402 status code. You can purchase additional credits at $0.15 USD per request.

Plan Monthly Requests Price
Basic 1,000 $110 USD/month
Pro 20,000 $2,150 USD/month
Business 100,000 $9,900 USD/month

Ready to get started?

Sign up now and get $5 USD in free credits - limited time offer!

Create Free Account