
Web service para emitir facturas o notas de crédito desde otros sistemas.
Ingresar al administrador /ws-enviar /ws-consultarAmbos endpoints requieren el Token API de la empresa. El Token servidor se usa internamente para hablar con el servidor SIFEN.
Authorization: Bearer TU_TOKEN_API
También se acepta:
X-SIFEN-TOKEN: TU_TOKEN_API
id_empresa en el JSON para indicar cuál debe emitir.documents()->create().document_id, CDC y estado.batches()->create().batch_id. Luego podés enviar a SIFEN desde el panel o con enviar_sifen: true.| Método | POST |
|---|---|
| Content-Type | application/json |
| Tipos aceptados | factura, nota_credito |
| URL enviar | https://sifen.innoven.com.py/ws-enviar |
| URL consultar | https://sifen.innoven.com.py/ws-consultar |
{
"id_empresa": 1,
"tipo_documento": "factura",
"cliente": {
"taxpayer_status": "TAXPAYER",
"taxpayer_type": "INDIVIDUAL",
"ruc": "4272381",
"razon_social": "Oscar Morinigo",
"direccion": "Asunción",
"country_code": "PRY",
"departament_id": 1,
"district_id": 1,
"city_id": 1
},
"items": [
{
"codigo": "1",
"descripcion": "Producto de prueba",
"cantidad": 1,
"precio": 1000,
"iva": 10,
"unidad": "UNIT"
}
],
"pagos": [
{
"metodo_pago": "CASH",
"monto": 1000,
"moneda": "PYG"
}
],
"operationCondition": "CASH",
"enviar_sifen": false
}
{
"id_empresa": 1,
"tipo_documento": "nota_credito",
"motivo_nota": "RETURN",
"cdc_asociado": "0180CDC_DE_LA_FACTURA_ORIGINAL...",
"cliente": {
"taxpayer_status": "TAXPAYER",
"taxpayer_type": "INDIVIDUAL",
"ruc": "4272381",
"razon_social": "Oscar Morinigo",
"direccion": "Asunción",
"country_code": "PRY",
"departament_id": 1,
"district_id": 1,
"city_id": 1
},
"items": [
{
"codigo": "1",
"descripcion": "Devolución producto",
"cantidad": 1,
"precio": 1000,
"iva": 10,
"unidad": "UNIT"
}
],
"pagos": [
{
"metodo_pago": "CASH",
"monto": 1000,
"moneda": "PYG"
}
],
"enviar_sifen": false
}
{
"status": "ok",
"id_documento": 1,
"document_id": "019f0548-cb08-705d-844d-5d742c449bcd",
"cdc": "0180...",
"estado_documento": "XML_GENERATED",
"batch_id": "019f0556-dbb9-70da-9172-f07d5012d3f2",
"estado_lote": "DRAFT"
}
También requiere token. Consultá por id_documento, document_id o batch_id. Si consultás un lote, también devuelve los documentos del lote con su estado, mensaje de error y resumen OK/Error.
{
"id_empresa": 1,
"id_documento": 1
}
{
"id_empresa": 1,
"document_id": "019f0548-cb08-705d-844d-5d742c449bcd"
}
{
"id_empresa": 1,
"batch_id": "019f0556-dbb9-70da-9172-f07d5012d3f2"
}
<?php
$url = "https://sifen.innoven.com.py/ws-enviar";
$token = "TU_TOKEN_API";
$data = [
"id_empresa" => 1,
"tipo_documento" => "factura",
"cliente" => [
"taxpayer_status" => "TAXPAYER",
"taxpayer_type" => "INDIVIDUAL",
"ruc" => "4272381",
"razon_social" => "Oscar Morinigo",
"direccion" => "Asunción",
"country_code" => "PRY",
"departament_id" => 1,
"district_id" => 1,
"city_id" => 1
],
"items" => [[
"codigo" => "1",
"descripcion" => "Producto de prueba",
"cantidad" => 1,
"precio" => 1000,
"iva" => 10,
"unidad" => "UNIT"
]],
"pagos" => [[
"metodo_pago" => "CASH",
"monto" => 1000,
"moneda" => "PYG"
]],
"enviar_sifen" => false
];
$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($data, JSON_UNESCAPED_UNICODE)
]);
$response = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
header("Content-Type: application/json; charset=utf-8");
echo $response;
?>
<?php
$url = "https://sifen.innoven.com.py/ws-consultar";
$token = "TU_TOKEN_API";
$data = [
"id_empresa" => 1,
"id_documento" => 1
];
$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($data, JSON_UNESCAPED_UNICODE)
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>