Saltearse al contenido

Autenticación

El API REST requiere autenticación mediante un encabezado Bearer. Para autenticarte, debes incluir un token de API válido que te proporcionaremos al crear una cuenta en nuestra plataforma. A continuación, se describe cómo debes configurar la autenticación en tus solicitudes.

Obtener un Token de API

Para obtener un token de API, primero debes registrarte en nuestra plataforma tandiashop.com y crear una cuenta. Una vez que tu cuenta sea creada, recibirás un token de API único. Asegúrate de mantener este token seguro, ya que te permitirá acceder a recursos protegidos en el API.

Autenticación en las Solicitudes

Para autenticarte en las solicitudes al API, debes incluir el token de API en el encabezado Bearer de la siguiente manera:

GET /api/invoice
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer tu-token-de-api

Asegúrate de reemplazar tu-token-de-api con el token de API que se te proporcionó al crear tu cuenta.

Respuestas de Autenticación

Si la autenticación es exitosa, recibirás una respuesta con el código de estado HTTP 200 (OK) y podrás acceder a los recursos protegidos por el API.

En caso de una autenticación incorrecta o falta de token, recibirás una respuesta con un código de estado HTTP 401 (No autorizado) y un mensaje de error indicando la falta de autenticación.

Validaciones de seguridad y control de acceso

Los endpoints protegidos de Tandia API aplican autenticación Bearer mediante auth:api. El token enviado permite identificar la cuenta (accountId) y limitar las operaciones a los recursos asociados a esa cuenta.

ControlComportamiento
Bearer obligatorioLos endpoints protegidos requieren Authorization: Bearer .... Si falta, es inválido o no corresponde a una cuenta válida, la solicitud se rechaza.
Alcance por cuentaLas operaciones de compañías, documentos, certificados y credenciales se resuelven usando la cuenta identificada por el Bearer.
api_keySe usa para integraciones backend a backend. Debe guardarse como secreto de servidor y no exponerse en frontend público.
secret_keyNo autentica solicitudes Bearer. Se usa para verificar firmas, por ejemplo Tandia-Signature en webhooks.
Rate limitLas rutas API pasan por el grupo api de Laravel, que incluye throttling del framework.

Recomendaciones de integración

  • Usa HTTPS en todas las llamadas y webhooks.
  • Guarda api_key y secret_key solo en backend o almacenes seguros.
  • Rota credenciales si se sospecha exposición.
  • Valida siempre la firma de webhook antes de procesar eventos entrantes.
  • No compartas tokens en aplicaciones frontend públicas ni en logs operativos.

Credenciales disponibles

Tandia API utiliza api_key como credencial Bearer:

El secret_key no se envía como Authorization en las solicitudes normales. Es una credencial sensible asociada a la cuenta y se usa para procesos de firma, por ejemplo firmas de URLs o datos relacionados con webhooks/documentos. Debe almacenarse de forma segura y no exponerse en clientes públicos.

Casuísticas de uso

CasoCredencial recomendadaQué enviarResultado esperado
Integración backend a backend estableapi_keyAuthorization: Bearer tu-token-de-apiLa API identifica la cuenta asociada sin requerir login previo.
Validación de firmas, webhooks o datos firmadossecret_keyNo se envía como BearerSe usa como secreto de firma/verificación cuando aplique.

Uso con api_key

Si Tandia entrega directamente el api_key de la cuenta, puedes usarlo como token Bearer sin hacer login previo. Es la misma credencial que recibiste al crear tu cuenta en tandiashop.com.

GET /api/account/companies
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer tu-token-de-api

El backend valida el Bearer, identifica la cuenta asociada y verifica que la cuenta esté activa.

Ejemplos de Solicitudes

A continuación, se presentan ejemplos de solicitudes utilizando la autenticación Bearer con el token de API.

GET /api/document/doc_10987654321
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer tu-token-de-api