Primeros pasos

Esta guía te lleva desde el registro hasta emitir tu primer DTE en menos de 15 minutos.

Si programas en TypeScript o Python, hay SDK oficial para ambos: integras en una tarde sin escribir HTTP a mano.

bash
pnpm add @folyo/sdk
# Python: pip install folyo

Revisa la página de SDKs para el quickstart completo. El resto de esta guía usa la API por HTTP directo, que aplica a cualquier lenguaje.

1. Crear una cuenta

Regístrate en folyo.cl y confirma tu correo con el enlace que te enviamos. Todas las cuentas nuevas inician en el plan Free, con 25 DTE al mes.

Tu empresa parte en el ambiente de certificación del SII: un espacio de pruebas donde los documentos no tienen valor tributario. Sirve para validar tu configuración antes de pasar a producción. Más detalle en Ambientes del SII.

2. Completar el onboarding guiado

Al confirmar tu correo aterrizas en /bienvenida, un onboarding guiado que deja tu empresa lista para facturar en tres pasos:

  1. Certificado digital: sube tu certificado electrónico (.pfx o .p12) con su clave. Firma todos los DTE que emitas y se guarda cifrado.
  2. Conexión con el SII (opcional): guarda tu clave del SII para que Folyo complete tu dirección y tus datos automáticamente. Puedes omitirlo y escribirlos a mano.
  3. Datos de la empresa: giro, código de actividad, dirección y resolución. Se traen del SII para que solo los confirmes.

Puedes salir cuando quieras: el avance se guarda y retomas donde quedaste.

3. Cargar folios (CAF)

Solicita folios al SII desde Folios en el dashboard, o carga un archivo CAF manualmente. Sin folios no puedes emitir documentos. Los folios de certificación y de producción son independientes: no se mezclan entre ambientes.

4. Obtener una API Key

Ve a API Keys y crea una nueva clave. Úsala en el header X-API-Key para autenticarte.

5. Emitir tu primer DTE

Puedes emitir desde Emitir en el dashboard, o por API:

http
POST https://api.folyo.cl/v1/dte/emitir
X-API-Key: tu_api_key
Content-Type: application/json

{
  "tipo_dte": 33,
  "receptor": {
    "rut": "12345678-9",
    "razon_social": "Empresa Receptora SpA",
    "giro": "Servicios de Tecnología",
    "direccion": "Av. Providencia 123",
    "comuna": "Providencia",
    "ciudad": "Santiago"
  },
  "detalle": [
    {
      "nombre": "Servicio de desarrollo",
      "cantidad": 1,
      "precio": 100000,
      "monto": 100000
    }
  ]
}

La API responde 202 Accepted con un job_id. El DTE se firma y envía al SII en segundo plano. El resultado llega por webhook o puedes consultar el estado con GET /v1/dte/emision/:jobId.