> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/classic-tokenization/es/casos-de-uso/alta-de-tarjeta/flujo-generico-de-alta/paso-1-capturar-los-datos-de-la-tarjeta/tratamiento-de-esquemas-domesticos.md).

# Tratamiento de esquemas domésticos

Utilice esta sección solo si:

* El Servicio de Tokenización actúa como intermediario TSP para un esquema nacional o etiqueta privada.
* Habilita una de estas billeteras xPay: Apple Pay, Google Pay o Samsung Pay.

En la provisión push, la aplicación del emisor prepara una carga útil. La aplicación del emisor la pasa al Servicio de Tokenización a través del solicitante de token (proveedor de la billetera).

Esta carga útil se llama **Datos de registro App2App** (CryptoOTP). Tiene dos partes:

* **Datos de la tarjeta de financiación** que contienen los detalles para tokenizar (PAN, fecha de vencimiento, etc.).
* **Valor de autenticación** que contiene una prueba de seguridad adicional.

Hay dos opciones de implementación para el valor de autenticación:

<figure><img src="/files/f21cd1b9a9da089089d9c4b8afcc1771be46c974" alt=""><figcaption><p>Opciones de validación del valor de autenticación.</p></figcaption></figure>

* **Opción 1 (recomendada): El Servicio de Tokenización valida el valor de autenticación.**
  * El valor de autenticación debe seguir el formato de Thales.
* **Opción 2: El backend del emisor valida el valor de autenticación.**
  * El formato del valor de autenticación depende del emisor.

### Datos de registro App2App (JWE)

{% hint style="info" %}
Esta sección se aplica solo a Samsung Pay y Google Pay.
{% endhint %}

Los datos de registro App2App son un JWE (JSON Web Encryption), según lo definido en la RFC 7516, con estas propiedades:

* Utilice la serialización compacta.
* Tipo de clave: RSA de 2048 bits o 4096 bits.
* Algoritmos:
  * Cifrado de clave: `RSA1_5` (obsoleto) o `RSA-OAEP-256`
  * Cifrado de contenido: `A256GCM`

| ENCABEZADO JWE  | DESCRIPCIÓN                                                                                                                                                                       | VALOR                                 | MOC |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | --- |
| alg             | Algoritmo criptográfico usado para cifrar la Clave de Cifrado de Contenido (CEK).                                                                                                 | 'RSA1\_5' (obsoleto) o 'RSA-OAEP-256' | M   |
| enc             | <p>Algoritmo de cifrado de contenido usado para realizar cifrado autenticado sobre el<br>texto plano para producir el texto cifrado y la etiqueta de autenticación.</p>           | 'A256GCM'                             | M   |
| kid             | Identificador de la clave RSA usada para el cifrado de la clave. Definido durante la incorporación. Proporcionado por Thales al emisor.                                           | cadena                                | O   |
| x-gto-issuerid  | Encabezado JWE personalizado que contiene el `issuerId` definido durante la incorporación.                                                                                        | cadena                                | M   |
| x-gto-productid | <p>Encabezado JWE personalizado que contiene el <code>productId</code> definido durante la incorporación.</p><p>Su presencia depende de la configuración de su incorporación.</p> | cadena                                | O   |

Ejemplo de encabezado JWE:

```json
{
    "alg":"RSA1_5",
    "enc":"A256GCM",
    "kid":"key_123",
    "x-gto-issuerid":"IssuerABC",
    "x-gto-productid":"Product123"
}
```

| TEXTO CLARO JWE      | DESCRIPCIÓN                                                                                                                                                                                                 | TIPO   | MOC                                                               |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----------------------------------------------------------------- |
| fpan                 | FPAN de la tarjeta de financiación a tokenizar.                                                                                                                                                             | cadena | M                                                                 |
| exp                  | Fecha de vencimiento en `MMYY` formato.                                                                                                                                                                     | cadena | O                                                                 |
| issuerCardLastDigits | Últimos dígitos de la tarjeta de financiación para mostrar en la billetera.                                                                                                                                 | cadena | O                                                                 |
| authvalue            | <p>Dos opciones:</p><ol><li>Formato Thales validado por el Servicio de Tokenización</li><li>Identificador opaco pasado al backend del emisor en la <code>requestCardDigitization</code> operación</li></ol> | cadena | C (No requerido para el flujo auxiliar o formato 3 con Apple Pay) |

Ejemplo de texto claro JWE:

```json
{
    "fpan":"3450163332324735",
    "authvalue":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJCYW5jb21hdEkxIiwic3ViIjoiYzQxZTdiZmQ3MWQ3ZiIsImV4cCI6MTUzMTgyOTUyNiwiaWF0IjoxNTMxODI1OTI2LCJwcm9kdWN0SWQiOiJCYW5jb21hdF9QVVJFIn0.Pjv-rS6s2O8I5IXSKi8eBxwhIDquUUYEegDQzqWqQjxAfYyQlJ7fNAt33p7cFhbWSuEVHowyy0xkYOorqZHC3TaAGMqB-pcU5KrwtGkXKUPPzdTOfUnZ8qmg1opiN1PfgCOHF0jja61QmAjcMPEHRSrTeK7EUogA-WM7ozSn6BAX0nTDb4dICr9bpksVKvB53DG5GTqTV00cX4EjSP_QuuiUpAvuiZFRcWaDzGzTECB8DptcOUmaHhuuuHIgPng5DNJeMtPvPqEmCNdSpMJ7eq-kg0RWsHmkbNpgVpk2pLm8AB_MPoq0wZ7hs660qnnU9d-9AG28VQrASsvkBolHZg",
    "exp":"0221"
}
```

Ejemplo completo de JWE:

```
eyJhbGciOiJSU0ExXzUiLCJlbmMiOiJBMjU2R0NNIiwieC1ndG8tcHJvZHVjdGlkIjoiQmFuY29tYXRfUFVSRSIsIngtZ3RvLWlzc3VlcmlkIjoiQmFuY29tYXRJMSJ9.m0WJhih-DYQOFJBHHvJGyuMcFYMsUTeEFkfRB1YOgODMNzZoYDhyhnx2kNQWr382Zw8qc-QmhGGnrhVw5EVoffpS5CSF5JP4Y1aSffssTFTeYtGGrVWF4GWSvQGCBZs9fEJMT9SpKpCLbVl7LJXJ5oHbsFu_MG9jkYZFvyyVVJ6xq97iQE6Co8zEYD5uPrQXX7jJlqqGX1VhA_Bs1aklTgaPYvt-mpYauPl8qIKSFL2w2yJZ3LwQxffuQxCMc6aaAu5k0VWPGtez7zimRd044n5WqErUfguSTxVOLhODpB0HanOwq7YVqeE40TqOtzzgWENzNm2KSraXjXUHuL5smg.z3nyT9uJ30YRNarp.Tt3avmBS0_Svg0yxG-yq0WLJ6BZn7xEtOcYHg0465T_TAP-3tKbCsDe5RG-kGADHB6oHy-oJa1YYn3nybkBl9SVsBWBPTJ9f1gPJvtY4jLkbq7nolTr3XjvK9ljtdE2G0IbcCZ4s7pLoQHf459AxilP8U-M3R3SEayMRsJocJQOlhVBLz6rTMgKEwAV52mtPccOTPpwL351fX4ssCG4oeTcM_gB7kDMuYgHLBmCW3XCKkRg7QLBybPP7TNhBy78JHcZe8DZ3mNHfL8tFEntnEYEGAWWHUQKm3H8qYoIlEVGqAz9j-UpDfyok8wohm5RxblH0NWMitarPjH01MNouMvomfM5FCaze7PErNNoaAw5Mp5I2h0QeEI3sJJkAkbzDq0R0UEbheNbhFdm3h10qSZ-mnJCp8ju1dcneOFxxlGwCQFO13EnDKFLuj4Qvnm9ARdIoQJiqWl4M8deiRPq2jrksrlEnavyADTnr4Dj1J56KS-eI8QIlSZEMqzGKZ6LsxLkEQE7Jy9-RW1-VctBczTJvdUpk-41IxrJdeGUV8UQPQGGwZ9CCa_2gmxjxByEL0UtO0mzno8UBUaI-Rmho7xvOjHLm73fkk2OeXJzNVgbNo4f5IrEW-e6GKAMhsBudcw2upSh0u2Cew8ruvPKzfu3JNSdSUaQv8lO_Yc6yH8x4UxqsylO1hsGaEpIogkTqnMWfTJHDTkK0VVwuoDye48aOhDWv8XWIsiyMIyFp0bEDCkfKQpDCXaANUhXgqQ.fewcSD5vzA5ICFBT_XBISg
```

### Valor de autenticación (formato Thales) (JWT)

{% hint style="info" %}
Esta sección se aplica solo a Apple Pay, Samsung Pay y Google Pay.
{% endhint %}

El valor de autenticación es un JWT (JSON Web Token), según lo definido en la RFC 7519, con estas propiedades:

* Tipo de clave: RSA de 2048 bits o 4096 bits.

| ENCABEZADO JWT | DESCRIPCIÓN                                                                                                                     | VALOR                                                                                       | MOC |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | --- |
| typ            | Tipo de medio del JWT completo.                                                                                                 | 'JWT'                                                                                       | M   |
| alg            | Algoritmo usado en el JWT.                                                                                                      | <p>Algoritmos compatibles:<br></p><ul><li>'RS256'</li><li>'PS256'</li><li>'PS512'</li></ul> | M   |
| kid            | Identificador de la clave utilizada para firmar el JWT. Definido durante la incorporación. Proporcionado por el emisor a Thales | cadena                                                                                      | O   |

Ejemplo:

```json
{
    "typ":"JWT",
    "alg":"RS256",
    "kid":"key_456"
}
```

| RECLAMACIONES JWT | DESCRIPCIÓN                                                                                                                               | VALOR  | MOC                            |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------ |
| iss               | Identificador único del emisor asignado durante la incorporación.                                                                         | cadena | M                              |
| sub               | El `issuerCardRefId` definido por el emisor.                                                                                              | cadena | M                              |
| iat               | Fecha de creación del token definida en la RFC 7519.                                                                                      | int    | M                              |
| exp               | Expiración del token definida en la RFC 7519.                                                                                             | int    | M                              |
| productId         | El identificador del producto de la tarjeta definido durante la incorporación.                                                            | cadena | O                              |
| nonce             | Reclamación privada usada para Apple Pay. Es el `nonce` valor que la aplicación del emisor captura a través del SDK iOS PassKit.          | cadena | C (aplicable solo a Apple Pay) |
| nonceSignature    | Reclamación privada usada para Apple Pay. Es el `nonceSignature` valor que la aplicación del emisor captura a través del SDK iOS PassKit. | cadena | C (aplicable solo a Apple Pay) |

Ejemplos:

{% tabs %}
{% tab title="Reclamaciones base" %}

```json
{
    "iat":1456815010,
    "exp":1456851010,
    "iss":"IssuerABC",
    "sub":"11111",
    "productId":"Product123"
}
```

{% endtab %}

{% tab title="Reclamaciones de Apple Pay" %}

```json
{
    "iat":1456815010,
    "exp":1456851010,
    "iss":"acmeBank",
    "sub":"111111",
    "nonce":"iYWNtZUJhbmsiLCJzdWIiOiIxMTExMTEifQ.WIo8cL1d71CZuxQ",
    "nonceSignature":"aXNzIjoiYWNtZUJhbmsiLCJzdWIiOiIxMTExMTEifQ.WIo8cL1d71CZuxQZ2re2TnBuRfQy-6p_OowGuaN9Hp1SMSY01BN-hl1q7TI67WdP5Vz2Em6BXzOdE1I1anPzoLeJXQW-y8UVWOMQN3hLn6hYoNDYye0Y3m-_jsOIJ7a7yr33ODKmgq4ieQoceeaZNpMEGeZr1X3G2a3iS-1tP9515qgcp-UoM9TjrP5kvP1cTjVG7djsb1UNlPwbnXdMRh8cxHa4bYqZ8fJYqcMcUVLLc08C9ejNwn2lL3eX2tU9Ofkrs2sf44stDxhwSLRP3I3x15_rEMeW6FtvN83_ecmROcI"
}
```

{% endtab %}
{% endtabs %}

Ejemplo completo de JWT:

```
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJCYW5jb21hdEkxIiwic3ViIjoiYzQxZTdiZmQ3MWQ3ZiIsImV4cCI6MTUzMTgyOTUyNiwiaWF0IjoxNTMxODI1OTI2LCJwcm9kdWN0SWQiOiJCYW5jb21hdF9QVVJFIn0.Pjv-rS6s2O8I5IXSKi8eBxwhIDquUUYEegDQzqWqQjxAfYyQlJ7fNAt33p7cFhbWSuEVHowyy0xkYOorqZHC3TaAGMqB-pcU5KrwtGkXKUPPzdTOfUnZ8qmg1opiN1PfgCOHF0jja61QmAjcMPEHRSrTeK7EUogA-WM7ozSn6BAX0nTDb4dICr9bpksVKvB53DG5GTqTV00cX4EjSP_QuuiUpAvuiZFRcWaDzGzTECB8DptcOUmaHhuuuHIgPng5DNJeMtPvPqEmCNdSpMJ7eq-kg0RWsHmkbNpgVpk2pLm8AB_MPoq0wZ7hs660qnnU9d-9AG28VQrASsvkBolHZg
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.payments.thalescloud.io/classic-tokenization/es/casos-de-uso/alta-de-tarjeta/flujo-generico-de-alta/paso-1-capturar-los-datos-de-la-tarjeta/tratamiento-de-esquemas-domesticos.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
