Download the PHP package rbbsoft/arca-sdk without Composer

On this page you can find all versions of the php package rbbsoft/arca-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package arca-sdk

Rbbsoft\ArcaSdk

SDK PHP PSR-4 standalone para facturación electrónica contra ARCA (ex AFIP). Autenticación WSAA y factura electrónica WSFE para Facturas A/B/C/M y Notas de Crédito A/B/C/M, con idempotencia atómica, recuperación de zombies y retry policy incluidos.

Quickstart

Para la instalación detallada, las variables de entorno, los códigos de error, el diagnóstico, las operaciones administrativas y todo lo demás, ver la guía de uso completa.

Plantilla visual estilo ARCA (v0.7.0+)

Desde v0.7.0 el SDK puede generar PDFs con una plantilla visual completa que replica la estructura de un comprobante ARCA real (basada en el template "RBB Autoradio"), además del layout mínimo retrocompatible de v0.6.x. Se activa pasando un ComprobantePdfMetadata como 3er parámetro de ComprobantePdfGenerator::generar() (o de ArcaSdk::generarPdf()). Los datos del emisor se obtienen por Padrón A13 (obtenerEmisor()); los datos que ARCA no expone se completan manualmente (nombre de fantasía, ingresos brutos, inicio de actividades, condición IVA, nombre del receptor, etc.). Documentación completa y ejemplo en examples/factura_c_basica_pdf_plantilla.php. Soporte actual: Factura C (la firma del método ya acepta el metadata para cualquier tipo, pero el render completo solo está implementado para C hasta que se extienda).

Regeneración de PDF

Una vez que ARCA asigna un CAE a un comprobante, esa emisión es inmutable (idempotencia atómica). Pero el PDF generado por el SDK puede necesitar regenerarse en estos casos:

  1. El layout v0.7.0+ (plantilla visual estilo ARCA real) se desarrolló después de varias emisiones reales. Los PDFs emitidos con la plantilla v0.6.x quedaron con el layout mínimo retrocompatible. Este script permite volver a emitirlos con el layout nuevo conservando el mismo CAE.
  2. Cambian datos manuales del emisor/receptor (por ejemplo, se completa el nombre de fantasía después de una primera emisión, o se corrige la condición IVA). No amerita pedir un CAE nuevo a ARCA: solo se regenera el PDF con los datos actualizados del ComprobantePdfMetadata.
  3. El PDF original se perdió del filesystem (borrado accidental, deploy que no incluye comprobantes/ — directorio gitignored). La fuente de verdad para el comprobante es la tabla arca_emisiones_idempotencia del SDK; el PDF se reconstruye a partir de los datos almacenados.

ARCA no conserva un "PDF maestro": el comprobante electrónico es el CAE + el QR + el JSON del response. El PDF es materialización local para impresión o entrega al receptor. Regenerarlo es siempre seguro; volver a emitir contra ARCA no lo es (asignaría un CAE nuevo).

El script examples/regenerar_pdf_plantilla.php hace exactamente esto: lee un array merge típico con los datos del comprobante autorizado, construye un ComprobanteEmitido inmutable vía ComprobanteEmitido::fromArray(), le pasa un ComprobantePdfMetadata con la metadata v0.7.0, y sobreescribe comprobantes/{cbte_tipo}-{cbte_nro}.pdf con el layout completo (3 páginas, tildes, formato 90000,00 sin separador de miles, DNI sin puntos, COD. 011 uppercase, banda "RBB AUTORADIO" italic+quotes, etc.). El script es local y offline — no habla con ARCA.

Uso:

El array $mergeDemo y el ComprobantePdfMetadata están embebidos como demo del comprobante 11-29 (Factura C, Pto Vta 2, CUIT emisor 20940361444, CAE 86320746470438). Para regenerar otro comprobante, editar esas dos variables con los datos del comprobante autorizado (los reales vienen de la tabla de idempotencia del SDK o del sistema del operador).

Instalación

El SDK se distribuye vía Composer como rbbsoft/arca-sdk. Requisitos: PHP 8.1 o superior con las extensiones ext-soap, ext-bcmath, ext-openssl y ext-pdo_mysql.

Para integrarlo a un proyecto existente:

Para probarlo de forma aislada (crea un directorio nuevo con el SDK y todas sus dependencias; incluye el smoke test como composer test):

La configuración del .env, los certificados y la base de datos se documentan en la guía de uso completa, sección 6.

Validación en entorno de homologación (ARCA)

El SDK se prueba de manera regular contra el entorno de homologación de ARCA (wsfev1 homo, https://wswhomo.afip.gov.ar/...). La homologación es un ambiente de prueba provisto por ARCA que replica los contratos y reglas de validación del ambiente productivo, pero no tiene validez fiscal y no se persiste más allá de un periodo breve.

La validación cubre dos ejes:

  1. Suite automatizada de tests: 582 tests / ~2 750 assertions, ejecutada con PHPUnit. La suite cubre el armado de payloads, el parseo de respuestas, la clasificación de errores, la política de retry, la idempotencia atómica y la recuperación de emisiones zombie. No requiere conectividad con ARCA: se ejecuta offline contra dobles de prueba (SoapClientDouble).

  2. Emisión real de los ocho tipos de comprobante soportados mediante los scripts de examples/. Cada invocación genera un comprobante con CAE asignado por ARCA homologación, persistido en arca_emisiones_idempotencia. Los tipos validados son:
Tipo de comprobante Código Total CAE asignado por ARCA homo
Factura A 1 121,00 86310728860034
Factura B 6 121,00 86310728860050
Factura C 11 100,00 86310728860063
Factura M 51 100,00 86310728860089
Nota de Crédito A 3 121,00 86310728860092
Nota de Crédito B 8 121,00 86310728860123
Nota de Crédito C 13 100,00 86310728860136
Nota de Crédito M 53 100,00 86310728860152

Las emisiones se realizaron con punto de venta 2, CUIT emisor y CUIT receptor configurados por el operador en su .env (variables ARCA_CUIT y ARCA_CUIT_RECEPTOR) y fecha 2026-08-04. La sección 0 de la guía de uso documenta el contrato de las variables de entorno. Los CUITs reales no se versionan en el repositorio.

Para reproducir la validación:

Alcance de la validación: el SDK se considera validado únicamente en el entorno de homologación descripto. No se ha emitido contra el ambiente productivo de ARCA; la presente versión (v0.7.0) no se encuentra en producción. Antes de cualquier pase a producción se requiere una corrida de homologación con el CUIT y el punto de venta definitivos, junto con la verificación manual de los CAE resultantes.

Estructura

Costo de utilización

El SDK se distribuye bajo licencia MIT y su utilización es libre y gratuita, sin distinción entre el entorno de homologación y el entorno de producción. No se requiere el pago de licencia, canon ni suscripción por su empleo en ninguno de los dos entornos.

Atribución obligatoria

Toda aplicación que utilice el SDK debe incluir, en una sección accesible para el usuario final (por ejemplo, "Acerca de", "Créditos" o "Información legal"), una atribución visible al repositorio oficial del proyecto, con un enlace funcional a la fuente upstream en https://github.com/rbb-soft/ARCASdk.

Licencia

MIT. Texto legal completo en LICENCIA.md (traducción de referencia al castellano, no oficial).


All versions of arca-sdk with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
ext-bcmath Version *
ext-gd Version *
ext-libxml Version *
ext-openssl Version *
ext-pdo_mysql Version *
ext-simplexml Version *
ext-soap Version *
mpdf/mpdf Version ^8.3
mpdf/qrcode Version ^1.2
psr/log Version ^1.1 || ^2.0 || ^3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package rbbsoft/arca-sdk contains the following files

Loading the files please wait ...