# Obtener certificado de producción

{% hint style="info" %}
Si querés evitar este trabajo manual, podés hacerlo automáticamente a través de tu sistema con la [automatización para Crear certificado de producción](https://afipsdk.com/docs/automations/create-cert-prod/nodejs/).
{% endhint %}

## Paso 1 - Instalar OpenSSL

Para la generación del certificado vamos a usar OpenSLL, el cual ya viene en los sistemas Linux/Unix. Para Windows se puede descargar desde <https://sourceforge.net/projects/openssl/>, una vez descargado copiar la carpeta `bin` en `C:\` con el nombre `OpenSSL`.

Ahora debemos abrir una consola. En Windows se debe abrir en modo administrador y navegar hacia `C:\OpenSSL`

## Paso 2 - Generar la clave de cifrado (key)

Dentro de la consola lo primero que debemos ejecutar es el siguiente comando para generar el archivo key.

```bash
openssl genrsa -traditional -out [nombre de archivo] 2048
```

Reemplazando:

> * `[nombre de archivo]` con el nombre que querés que se guarde el archivo key.

Este archivo key es muy importante porque representa la «contraseña» con la que va a funcionar el certificado así que no debemos perderlo.

Por ejemplo yo voy a generarlo de la siguiente forma

```
openssl genrsa -traditional -out keytest 2048
```

De esta forma el nombre de mi archivo key seria `keytest`

{% hint style="info" %}
Las versiones mas antiguas de OpenSSL no soportan el parámetro -traditional, si no te funciona borralo
{% endhint %}

## Paso 3 - Generar el Certificate Signing Request (csr)

Una vez generada la key estamos listos para generar el CSR. Para ello debemos ejecutar el siguiente comando

```
openssl req -new -key [nombre de archivo para la key] -subj "/C=AR/O=[nombre de la empresa]/CN=[nombre del certificado]/serialNumber=CUIT [CUIT]" -out [nombre de archivo para el CSR]
```

Reemplazando:

> * `nombre de archivo para la key` con el nombre del archivo key generado anteriormente.
> * `nombre de la empresa` con el nombre de la empresa para quien es el certificado.
> * `nombre del certificado` con el nombre que quieres que tenga el certificado. Solo se pueden utilizar letras y números. Esto es a modo de que puedas reconocerlo luego si generas varios certificados para diferentes sistemas
> * `CUIT` con el CUIT de la empresa para quien es el certificado.
> * `nombre de archivo para el CSR` con el nombre que quieres que se guarde el archivo CSR

Por ejemplo yo lo generaría de la siguiente forma

```
openssl req -new -key keyproduccion -subj "/C=AR/O=Nombre Empresa/CN=Test1/serialNumber=CUIT 11111111111" -out csr-produccion
```

Donde en «Nombre Empresa» pondría el nombre de la empresa y en «11111111111» podía el CUIT de la empresa

Teniendo el archivos CSR ya podemos dirigirnos a la página de AFIP para generar el certificado.

{% hint style="warning" %}
ATENCIÓN: El archivo CSR no es lo mismo que el certificado, suele ser un error común confundirlos al momento de usar el certificado
{% endhint %}

## Paso 4 - Generar el certificado (cert)

Dentro de nuestro escritorio de AFIP debemos ingresar en **«Administración de Certificados Digitales»**

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-fe68f05e1e96c30d00f5f83ee7fd73fe60fad51c%2FScreenshot%202025-02-17%20at%2010-16-06%20Portal%20de%20Clave%20Fiscal.png?alt=media" alt=""><figcaption></figcaption></figure>

En caso de no tener esta aplicación en tu escritorio debes ver el tutorial [Habilitar administrador de certificados de producción](https://docs.afipsdk.com/recursos/tutoriales-pagina-de-arca/habilitar-administrador-de-certificados-de-produccion)

En caso de tener permiso para administrar las relaciones de otros contribuyentes nos hará elegir el de quien queremos administrar.

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-bc5f4cb982f0bb871afe1c9bf89f7f375faaf558%2FScreenshot%202025-02-17%20at%2010-10-46%20AFIP%20-%20ADMINISTRACION%20FEDERAL%20DE%20INGRESOS%20PUBLICOS.png?alt=media" alt=""><figcaption></figcaption></figure>

Dentro de esta aplicación debemos ir a «Agregar alias»

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-19d327c3a652177c69d85ee857fc957cc3aaa2e5%2FScreenshot%202025-02-17%20at%2010-17-15%20AFIP%20-%20ADMINISTRACION%20FEDERAL%20DE%20INGRESOS%20PUBLICOS.png?alt=media" alt=""><figcaption></figcaption></figure>

Allí en «Alias» debemos colocar el nombre que le pusimos el certificado dentro del CSR.

Luego presionamos examinar y elegimos el CSR que generamos anteriormente.

Por ultimo presionamos «Agregar Alias» y ya tenemos nuestro certificado

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-82a02cc067e94899d83a8058405930cca763a211%2FScreenshot%202025-02-17%20at%2010-18-06%20AFIP%20-%20ADMINISTRACION%20FEDERAL%20DE%20INGRESOS%20PUBLICOS.png?alt=media" alt=""><figcaption></figcaption></figure>

Ahora en la lista de Alias presionamos «ver»

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-19b1366618c1265a69bfd3255572849763362ccd%2FScreenshot%202025-02-17%20at%2010-17-15%20AFIP%20-%20ADMINISTRACION%20FEDERAL%20DE%20INGRESOS%20PUBLICOS.png?alt=media" alt=""><figcaption></figcaption></figure>

Y allí presionamos el boto debajo de «descargar»

<figure><img src="https://4026677166-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVEAVwm5cCW83gSe7NH8Z%2Fuploads%2Fgit-blob-c051c02555b2aa6146dfc2014e112292fdf130d2%2FScreenshot%202025-02-17%20at%2010-19-03%20AFIP%20-%20ADMINISTRACION%20FEDERAL%20DE%20INGRESOS%20PUBLICOS.png?alt=media" alt=""><figcaption></figcaption></figure>

Y eso es todo ya tenemos nuestro certificado y la key para usarlos luego en la librería.

{% hint style="info" %}
El CSR ya no lo necesitaremos, podemos eliminarlo.
{% endhint %}

Ahora lo que nos queda es autorizar a que con este certificado se pueda acceder al/los web service/s que queramos usar.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.afipsdk.com/recursos/tutoriales-pagina-de-arca/obtener-certificado-de-produccion.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
