Emití facturación electrónica sin rehacer tu software: agregamos un botón mágico que arma el JSON, envía a SIFEN y devuelve el CDC.

Si tenés un sistema que funciona súper bien, no hace falta cambiarlo. Nosotros te integramos un Botón Mágico: al presionarlo, tu sistema manda los datos de la venta, el servicio arma el JSON correcto, crea el documento electrónico, crea el lote, lo envía a SIFEN y devuelve el CDC para que tu software continúe trabajando normalmente.
Desde tu POS, ecommerce o sistema administrativo llamás a /ws-enviar con cliente, ítems y pagos.
Validamos empresa, freepys, token API, documento, lote y comunicación con el servidor SIFEN.
Tu sistema recibe document_id, batch_id, estado y CDC para guardar en tu factura local.
Cada factura o nota de crédito emitida descuenta 1 freepy. Los freepys se restauran cuando se registra el pago mensual del plan.
Ideal para iniciar con facturación electrónica.
Para negocios con más movimiento mensual.
Más freepys para operaciones frecuentes.
Volumen alto para empresas y desarrolladores.
Uso ilimitado mensual para grandes integraciones.
Pensado para programadores: desde tu POS, ERP, ecommerce o sistema administrativo enviás JSON a Botón Mágico y recibís document_id, batch_id, estado, CDC y freepys restantes. Cada emisión exitosa descuenta 1 freepy.
POST https://boton.innoven.com.py/ws-enviar
Tipos aceptados: factura y nota_credito. Usá el Token API de la empresa.
Si el timbrado con ese tipo no existe, se crea; si existe, actualiza est., punto y nro. actual.
POST https://boton.innoven.com.py/ws-consultar
Podés consultar por document_id, batch_id o CDC para actualizar el estado en tu sistema local.
<?php
$token = 'TU_TOKEN_API';
$url = 'https://boton.innoven.com.py/ws-enviar';
$payload = [
'tipo_documento' => 'factura',
'enviar_sifen' => true,
'timbrado' => '80078258',
'est' => '001',
'punto' => '001',
'nro_actual' => '0001000',
'vigencia_desde' => '2026-01-01',
'cliente' => [
'ruc' => '4272381-7',
'razon_social' => 'CLIENTE DE PRUEBA',
'direccion' => 'Asunción',
'email' => 'cliente@email.com'
],
'items' => [
[
'codigo' => 'P001',
'descripcion' => 'Producto de prueba',
'cantidad' => 1,
'precio' => 150000,
'iva' => 10
]
],
'pagos' => [
['tipo' => 'efectivo', 'monto' => 150000]
]
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Authorization: Bearer '.$token
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE)
]);
$respuesta = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);
if ($error) {
die('Error CURL: '.$error);
}
$data = json_decode($respuesta, true);
echo '<pre>HTTP: '.$http."
";
print_r($data);
echo '</pre>';
?>{
"status": "ok",
"mensaje": "Documento creado, lote generado y enviado a SIFEN.",
"id_documento": 10,
"id_empresa": 1,
"id_timbrado": 3,
"tipo_documento": "factura",
"document_id": "019...",
"cdc": "01800...",
"estado_documento": "XML_GENERATED",
"batch_id": "019...",
"estado_lote": "CREATED",
"numero_documento": "0001000",
"timbrado": "80078258",
"est": "001",
"punto": "001",
"nro_actual": 1000,
"nro_actual_formateado": "0001000",
"vigencia_desde": "2026-01-01",
"freepys_restantes": 99,
"envio_sifen": {
"status": "ok",
"estado": "SENT"
}
}<?php
$token = 'TU_TOKEN_API';
$url = 'https://boton.innoven.com.py/ws-consultar';
$payload = [
'batch_id' => 'ID_LOTE_DEVUELTO'
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Authorization: Bearer '.$token
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE)
]);
$respuesta = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$data = json_decode($respuesta, true);
echo '<pre>HTTP: '.$http."
";
print_r($data);
echo '</pre>';
?>$payload = [
'tipo_documento' => 'nota_credito',
'enviar_sifen' => true,
'cdc_asociado' => 'CDC_DE_LA_FACTURA_ORIGINAL',
'timbrado' => '80078258',
'est' => '001',
'punto' => '001',
'nro_actual' => '0001001',
'vigencia_desde' => '2026-01-01',
'cliente' => [
'ruc' => '4272381-7',
'razon_social' => 'CLIENTE DE PRUEBA'
],
'items' => [
[
'codigo' => 'NC001',
'descripcion' => 'Devolución / ajuste',
'cantidad' => 1,
'precio' => 50000,
'iva' => 10
]
],
'pagos' => [
['tipo' => 'efectivo', 'monto' => 50000]
]
];