Crear Factura Electrónica de ARCA en Make
Con archivo para importar directamente en tu cuenta

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

Conectar tu sistema con la facturación electrónica de ARCA
Guía paso a paso
El primer paso para crear una factura electrónica de ARCA es obtener el Código de Autorización Electrónico (CAE). Esto lo haremos utilizando el API de Afip SDK, que nos permite conectarnos a los web services de ARCA sin complicarnos con el uso de SOAP y la autenticación.
Vamos a usar Make para generar automáticamente el CAE de un comprobante cuando se agrega una fila en una Google Sheet. Así es como luce la interfaz final:
Y así va a lucir nuestra Google Sheet:
Agregamos el trigger en Make para cuando se agrega una fila en nuestra Google Sheet (la primera vez te pedirá conectar tu cuenta de Google).
Ahora obtenemos un Token de Autorización para poder enviar una solicitud a ARCA. Para esto, vamos a agregar una llamada HTTP con los siguientes datos:
Si no sabes qué es el Token de Autorización, te recomiendo leer el post Conectar tu sistema con la facturación electrónica de ARCA.
URL: https://app.afipsdk.com/api/v1/afip/auth
Method: POST
Body type: Raw
Content type: JSON(application/json)
Request content:
{
"environment": "dev",
"tax_id": "20409378472",
"wsid": "wsfe",
"force_create": false
}
Parse response: Yes
Para usar los web services de ARCA, se requiere un certificado digital, con Afip SDK puedes integrarte en modo desarrollo usando el CUIT 20409378472
sin necesidad de obtener un certificado, para poder integrarte lo más rápido posible.
Te dejo este enlace por si luego quieres usar tu propio certificado para desarrollo.
Luego realizamos otra llamada HTTP para consultar al web service cuál fue el número del último comprobante creado.
URL: https://app.afipsdk.com/api/v1/afip/requests
Method: POST
Body type: Raw
Content type: JSON(application/json)
Request content:
{
"environment": "dev",
"method": "FECompUltimoAutorizado",
"wsid": "wsfe",
"params": {
"Auth" : {
"Token": "{{1.data.token}}",
"Sign": "{{1.data.sign}}",
"Cuit": "20409378472"
},
"PtoVta" : 1,
"CbteTipo" : 6
}
}
Parse response: Yes
Si observan los datos de esta llamada, indicamos que en token y sign se utilicen los datos de la llamada HTTP anterior.
Y realizamos la última llamada HTTP para obtener el CAE.
URL: https://app.afipsdk.com/api/v1/afip/requests
Method: POST
Body type: Raw
Content type: JSON(application/json)
Request content
{
"environment": "dev",
"method": "FECAESolicitar",
"wsid": "wsfe",
"params": {
"Auth": {
"Token": "{{1.data.token}}",
"Sign": "{{1.data.sign}}",
"Cuit": "20409378472"
},
"FeCAEReq": {
"FeCabReq": {
"CantReg": 1,
"PtoVta": 1,
"CbteTipo": 6
},
"FeDetReq": {
"FECAEDetRequest": {
"Concepto": 1,
"DocTipo": 99,
"DocNro": 0,
"CbteDesde": {{sum(4.data.FECompUltimoAutorizadoResult.CbteNro; 1)}},
"CbteHasta": {{sum(4.data.FECompUltimoAutorizadoResult.CbteNro; 1)}
},
"CbteFch": {{parseNumber(formatDate(2.`0`; "YYYYMMDD"))}},
"FchServDesde": null,
"FchServHasta": null,
"FchVtoPago": null,
"ImpTotal": {{sum(2.`1`; 2.`2`; 2.`3`)}},
"ImpTotConc": 0,
"ImpNeto": {{2.`1`}},
"ImpOpEx": {{2.`2`}},
"ImpIVA": {{2.`3`}},
"ImpTrib": 0,
"MonId": "PES",
"MonCotiz": 1,
"Iva": {
"AlicIva": [
{
"Id": 5,
"BaseImp": {{2.`1`}},
"Importe": {{2.`3`}}
}
]
}
}
}
}
}
}
Parse response: Yes
Si observan los datos de esta última llamada, verán que utiliza datos de las llamadas anteriores y de la Google Sheet.
Con los datos ya obtenidos, procedemos a actualizar la fila en Google Sheet, agregándole el número del comprobante generado y el CAE.
CAE: {{3.data.FECAESolicitarResult.FeDetResp.FECAEDetResponse[].CAE}}
Vencimiento CAE: {{3.data.FECAESolicitarResult.FeDetResp.FECAEDetResponse[].CAEFchVto}}
Si vamos a la Google Sheet, veremos que se agregó el CAE y el Vencimiento del CAE a la nueva fila.
Les dejo el create-cae-blueprint.json para que puedan importar rápidamente este workflow en su cuenta de Make.
Problemas comunes
Si estas teniendo el error (10016) El numero o fecha del comprobante no se corresponde con el proximo a autorizar te recomiendo leer este artículo.

Error (10016) El numero o fecha del comprobante no se corresponde con el proximo a autorizar
Pasos para resolver este error
Si estas teniendo el error (10242) El campo Condicion IVA receptor es obligatorio. Consular metodo FEParamGetCondicionIvaReceptor te recomiendo leer este artículo.

Error (10242) El campo Condicion IVA receptor no es un valor valido/es obligatorio
Pasos para resolver este error
Con la autorizacion creada ya podemos proceder a crear el PDF para presentarle a nuestro cliente. Podes usar como base esta factura o ticket de ejemplo.
Luego, 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/
Ante cualquier duda o pregunta al respecto, pueden resolverla rápidamente dentro de la Comunidad Afip SDK. Además, puedes unirte para estar al tanto de las novedades y problemas técnicos al usar los servicios de ARCA.