API de factura electrónica de AFIP
Como usarla paso a paso

Si es tu primera vez conectándote con la facturación electrónica de AFIP/ARCA, te recomiendo leer esta guía básica sobre su funcionamiento general.

Conectar tu sistema con la facturación electrónica de AFIP
Guía paso a paso
El primer paso para crear una factura electrónica de AFIP es obtener el Código de Autorización Electrónico o CAE.
Esto lo vamos a hacer utilizando el API de factura electrónica de Afip SDK, que nos permite conectarnos a los web services de AFIP sin complicarnos con el uso de SOAP y la autenticación.
Obtener la autorización
Lo primero que tenemos que hacer es obtener el “Token Authorization”, que sería la autorización en AFIP.
Para usar los web services de AFIP necesitamos un certificado y key, pero Afip SDK nos permite utilizar el CUIT 20409378472 en modo testing para integrarnos rápidamente.
Debemos ejecutar una solicitud POST al endpoint:
https://app.afipsdk.com/api/v1/afip/auth
{
"environment": "dev",
"tax_id": "20409378472",
"wsid": "wsfe"
}
Como respuesta nos devolverá
{
"expiration": "2024-03-13T00:42:59.845Z",
"token": "PD94bWwgd...",
"sign": "kEaCwSs36hpe..."
}
Aquí tenemos el token y el sign que nos dio AFIP para usar el web service. No es necesario que lo guardemos, Afip SDK se encarga de esto por nosotros. Debemos solicitarlo antes de cada llamada a los métodos del web service.
Crear la factura
Vamos a crear una Factura B por un importe de $121
Debemos ejecutar una solicitud POST al endpoint
https://app.afipsdk.com/api/v1/afip/requests
{
"environment": "dev",
"method": "FECAESolicitar",
"wsid": "wsfe",
"params": {
"Auth" : {
"Token": "{{token}}",
"Sign": "{{sign}}",
"Cuit": "20409378472"
},
"FeCAEReq" : {
"FeCabReq" : {
"CantReg" : 1,
"PtoVta" : 1,
"CbteTipo" : 6
},
"FeDetReq" : {
"FECAEDetRequest" : {
"Concepto" : 1,
"DocTipo" : 99,
"DocNro" : 0,
"CbteDesde" : 1,
"CbteHasta" : 1,
"CbteFch" : 20240317,
"ImpTotal" : 121,
"ImpTotConc" : 0,
"ImpNeto" : 100,
"ImpOpEx" : 0,
"ImpIVA" : 21,
"ImpTrib" : 0,
"MonId" : "PES",
"MonCotiz" : 1,
"Iva" : {
"AlicIva": [{
"Id" : 5,
"BaseImp" : 100,
"Importe" : 21
}]
}
}
}
}
}
}
Debemos reemplazar {{token}} y {{sign}} con los que obtuvimos anteriormente.
En la respuesta, nos devolverá el CAE y su vencimiento:
{
...
"CAE": "12345678987654",
"CAEFchVto": "20240327"
...
}
Eso es todo, ya tenemos el CAE correspondiente a la factura que acabamos de crear a través del API de factura electrónica de Afip SDK.
Lo único que nos queda es pasar a modo producción. Para más información de cómo hacerlo, pueden dirigirse a la documentación de la librería: https://docs.afipsdk.com/