El reto de facturar servicios profesionales
- Los mismos clientes se facturan cada mes por servicios o asesorías recurrentes.
- Muchos clientes son empresas que piden la factura con sus datos exactos y te aplican retenciones.
- Armar cada comprobante a mano le quita tiempo al trabajo que sí cobras.
- Los servicios recurrentes se facturan en cada cobro, sin armarlos a mano.
- Cada factura lleva los datos exactos de la empresa que la pide.
- Recuperas el tiempo que dedicabas a armar comprobantes.
Tres pasos, de tu sistema al SRI
- PASO 01
Conecta tu sistema
Genera tu API key y úsala desde tu sistema de gestión o de cobros.
sk_test_••••••••4f2a - PASO 02
Emite al cobrar
Envía los datos del servicio y Flashpi arma, firma y envía el comprobante al SRI.
POST /v1/facturas - PASO 03
Entrega el comprobante
Recibe la autorización y envía el RIDE y el XML a tu cliente.
RIDE.pdf + factura.xml
Factura de un servicio mensual
Una sola solicitud a la API. Flashpi construye el XML, lo firma con tu certificado y lo envía al SRI.
- Sin armar XML ni SOAP
- Firma con tu certificado .p12
- Estado y clave de acceso en la respuesta
curl -X POST https://api.flashpi.ec/v1/facturas \
-H "Authorization: Bearer TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"comprador": {
"tipo_identificacion": "ruc",
"identificacion": "1790012345001",
"razon_social": "Empresa Cliente S.A.",
"email": "[email protected]"
},
"detalles": [
{
"descripcion": "Asesoría contable · octubre",
"cantidad": 1,
"precio_unitario": 450
},
{
"descripcion": "Declaraciones mensuales",
"cantidad": 1,
"precio_unitario": 80
}
]
}' const res = await fetch("https://api.flashpi.ec/v1/facturas", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.FLASHPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"comprador": {
"tipo_identificacion": "ruc",
"identificacion": "1790012345001",
"razon_social": "Empresa Cliente S.A.",
"email": "[email protected]"
},
"detalles": [
{
"descripcion": "Asesoría contable · octubre",
"cantidad": 1,
"precio_unitario": 450
},
{
"descripcion": "Declaraciones mensuales",
"cantidad": 1,
"precio_unitario": 80
}
]
}),
});
const comprobante = await res.json(); import os
import requests
res = requests.post(
"https://api.flashpi.ec/v1/facturas",
headers={"Authorization": f"Bearer {os.environ['FLASHPI_API_KEY']}"},
json={
"comprador": {
"tipo_identificacion": "ruc",
"identificacion": "1790012345001",
"razon_social": "Empresa Cliente S.A.",
"email": "[email protected]"
},
"detalles": [
{
"descripcion": "Asesoría contable · octubre",
"cantidad": 1,
"precio_unitario": 450
},
{
"descripcion": "Declaraciones mensuales",
"cantidad": 1,
"precio_unitario": 80
}
]
},
)
comprobante = res.json() <?php
$payload = <<<'JSON'
{
"comprador": {
"tipo_identificacion": "ruc",
"identificacion": "1790012345001",
"razon_social": "Empresa Cliente S.A.",
"email": "[email protected]"
},
"detalles": [
{
"descripcion": "Asesoría contable · octubre",
"cantidad": 1,
"precio_unitario": 450
},
{
"descripcion": "Declaraciones mensuales",
"cantidad": 1,
"precio_unitario": 80
}
]
}
JSON;
$ch = curl_init('https://api.flashpi.ec/v1/facturas');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('FLASHPI_API_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => $payload,
CURLOPT_RETURNTRANSFER => true,
]);
$comprobante = json_decode(curl_exec($ch), true); {
"estado": "AUTORIZADO",
"clave_acceso": "(49 dígitos)",
"numero_autorizacion": "(nº del SRI)",
"fecha_autorizacion": "(fecha y hora)"
} Comprobantes que más usarás
Una API REST que habla con cualquier backend
Flashpi funciona con cualquier lenguaje o framework que pueda enviar solicitudes HTTP. Tenemos ejemplos por lenguaje para Java, Node, Python, Ruby, PHP, Go y C#.
Lo que preguntan los profesionales
¿Tienes otra pregunta sobre cómo facturar tus servicios?
Escríbenos¿Puedo facturar los mismos servicios cada mes?
Sí. Tu sistema envía una solicitud por cada cobro mensual y Flashpi arma, firma y envía cada comprobante al SRI.
¿Qué pasa con las retenciones que me hacen mis clientes?
La retención la emite tu cliente cuando es agente de retención. Tú facturas el valor del servicio. Confirma con tu contador cómo registrarlas.
¿Cómo se corrige una factura emitida?
Una factura autorizada no se edita: se emite una nota de crédito que la referencia y, si hace falta, una nueva factura con los datos correctos.
¿Funciona con mi sistema?
Flashpi es una API REST, así que se integra con cualquier sistema que pueda enviar solicitudes HTTP desde su backend.