# 🏢 Servicio de búsqueda de contribuyente

# Ejemplo de consumo

# Persona física

curl -X POST https://api.consultaunica.mx/v3/sat \
  -H 'x-api-key: 1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f' \
  -H 'Content-Type: application/json' \
  -d '{
    "variant": "tax_payer_search",
    "taxPayerSearch": {
      "rfc": "LOOA531113FI5"
    }
  }'

# Persona moral

curl -X POST https://api.consultaunica.mx/v3/sat \
  -H 'x-api-key: 1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f' \
  -H 'Content-Type: application/json' \
  -d '{
    "variant": "tax_payer_search",
    "taxPayerSearch": {
      "rfc": "COP920428Q20"
    }
  }'

# ✅ Respuesta exitosa. HTTP 200

# Persona física encontrada

{
    "variant": "tax_payer_search",
    "taxPayerSearch": {
        "entityType": "individual",
        "individual": {
            "name": "ANDRES MANUEL",
            "paternalName": "LOPEZ",
            "maternalName": "OBRADOR"
        }
    }
}

# Persona moral encontrada

{
    "variant": "tax_payer_search",
    "taxPayerSearch": {
        "entityType": "company",
        "company": {
            "name": "COPPEL"
        }
    }
}

# ❌ Error de validación. HTTP 409

La fecha de nacimiento tiene un formato inválido

{
    "message": "La consulta no es válida, favor de verificar los datos ingresados",
    "errors": [
        {
            "field": "body.taxPayerSearch.rfc",
            "error": "String should have at most 13 characters"
        }
    ]
}

# ❌ Error desconocido. HTTP 500

{
    "message": "Algo falló durante la consulta, favor de consultar nuevamente"
}