Registrar a tus clientes

En esta página se explican los pasos que debes seguir para registrar y anular el registro de participantes con el fin de crear resultados de predicciones:

  1. Asegurarse de que se cumplen los requisitos para registrar partidos
  2. Preparar las tablas de registro de partidos
  3. Usa el método projects.locations.instances.importRegisteredParties para registrar o anular el registro de partes
  4. Validar la respuesta del método
  5. (Opcional) Exportar una tabla de las partes registradas

Antes de empezar

Antes de empezar, necesitas una instancia de IA de AML.

Para que un modelo pueda crear predicciones de puntuación de riesgo, primero debes registrar a las partes. Te recomendamos que registres a las partes cuando ya tengas lo siguiente:

Cuándo registrar partidos

Para poder crear predicciones de un partido en uno de tus conjuntos de datos, debes registrar el partido. No es necesario registrarse para recibir formación, ajustar o hacer pruebas retrospectivas.

Los resultados de las predicciones se usan para investigar a los clientes por blanqueo de dinero en una fase de producción o de prueba (paralela). También puedes crear tus propios procesos de gobernanza y análisis de modelos en función de los resultados que obtengas de las predicciones.

Las partes registradas incurren en costes mensuales adicionales por cada parte registrada (consulta la página de precios para obtener más información).

Cómo preparar tablas de registro de partidos políticos

Consulta la página de precios para obtener información sobre cómo registrar a las partes.

Prepara una tabla para la línea de negocio en la que quieras registrar a las partes. Si ya has registrado algunas partes, esta tabla de registro de partes podría contener un subconjunto de las partes de la tabla Parte que quieras usar para los resultados de las predicciones.

Esquema de participantes de Retail

ColumnaTipoDescripción
party_idSTRINGIdentificador único de la parte en los conjuntos de datos de la instancia.
party_sizeSTRINGNULL; el contenido se ignora en los registros de terceros

Esquema de partes comerciales

ColumnaTipoDescripción
party_idSTRINGIdentificador único de la parte en los conjuntos de datos de la instancia.
party_sizeSTRING Tamaño del grupo solicitado. El nivel se basa en el número medio de transacciones mensuales de la parte durante los 365 días anteriores:
  • SMALL para pequeñas empresas comerciales con menos de 500 transacciones mensuales de media
  • LARGE para grandes empresas comerciales con una media mensual de 500 transacciones o más

Todos los valores distinguen entre mayúsculas y minúsculas.

Cómo registrar partidos

Las partes se registran por separado en cada instancia de IA de lucha contra el blanqueo de capitales. Ten en cuenta lo siguiente:

  • Los comercios y las partes comerciales deben registrarse por separado. Usa llamadas a la API independientes y tablas de registro de terceros independientes. Si una de las partes figura en ambas listas, se considera que son registros independientes.
  • Para usar las predicciones, todas las partes deben estar registradas en la línea de negocio asociada a la versión del motor que se utilice. No puedes crear resultados de predicción si se usa un conjunto de datos que contenga a alguna parte que no esté registrada en la misma línea de negocio.
  • La tabla de registro de terceros proporcionada se usa para añadirla a la lista de terceros registrados de la instancia o para sustituir a todos los terceros registrados de la línea de negocio proporcionada en la instancia.
  • Una vez registrada, una fiesta no se puede anular durante un tiempo (consulta la página de precios). Por este motivo, puedes definir el campo validateOnly como TRUE. Este campo le permite ver el efecto neto y la respuesta del método sin cambiar las partes registradas. Una vez validado, puede volver a ejecutar la operación y asignar el valor FALSE al parámetro validateOnly.
  • Comprueba siempre la respuesta de una solicitud de registro para asegurarte de que todas las partes se hayan registrado correctamente, aunque una solicitud validateOnly anterior se haya completado.
  • En el caso de los registros de terceros comerciales, si se indica un valor distinto de SMALL o LARGE en el campo party_size de la tabla de registro de terceros, se produce un error (Invalid party_size present in table). Los terceros registrados no se actualizan.
  • En el caso de los registros de terceros minoristas, se ignora el campo party_size y se registran todos los terceros de la tabla de registro de terceros proporcionada.

Para importar terceros registrados, utiliza el método projects.locations.instances.importRegisteredParties.

(La siguiente información también está disponible en Crear y gestionar instancias).

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • PROJECT_ID: el ID de tu proyecto Google Cloud aparece en la configuración de gestión de identidades y accesos.
  • LOCATION: la ubicación de la instancia. Usa una de las regiones admitidas
    Mostrar ubicaciones
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • INSTANCE_ID: identificador definido por el usuario de la instancia
  • BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME: a Conjunto de datos de BigQuery que contiene una tabla que describe las partes registradas.
  • PARTY_REGISTRATION_TABLE: la tabla que enumera las partes registradas
  • UPDATE_MODE: usa REPLACE para sustituir las partes que se pueden quitar de la tabla de partes registradas por partes nuevas o usa APPEND para añadir partes nuevas a la tabla de partes registradas.
  • LINE_OF_BUSINESS: este campo debe coincidir con el valor de lineOfBusiness en la versión del motor que usa la configuración del motor. Usa COMMERCIAL para los clientes de banca comercial (entidades jurídicas y físicas) o RETAIL para los clientes de banca minorista.

Cuerpo JSON de la solicitud:

{
  "partyTables": [
     "bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
  ],
  "mode": "UPDATE_MODE",
  "lineOfBusiness": "LINE_OF_BUSINESS"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el siguiente comando en el terminal para crear o sobrescribir este archivo en el directorio actual:

cat > request.json << 'EOF'
{
  "partyTables": [
     "bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
  ],
  "mode": "UPDATE_MODE",
  "lineOfBusiness": "LINE_OF_BUSINESS"
}
EOF

A continuación, ejecuta el siguiente comando para enviar tu solicitud REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:importRegisteredParties"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el siguiente comando en el terminal para crear o sobrescribir este archivo en el directorio actual:

@'
{
  "partyTables": [
     "bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
  ],
  "mode": "UPDATE_MODE",
  "lineOfBusiness": "LINE_OF_BUSINESS"
}
'@  | Out-File -FilePath request.json -Encoding utf8

A continuación, ejecuta el siguiente comando para enviar tu solicitud REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:importRegisteredParties" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": "2023-03-14T15:52:55.358979323Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
    "verb": "importRegisteredParties",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Para obtener información sobre cómo obtener el resultado de la operación de larga duración, consulta Gestionar operaciones de larga duración.

Respuesta de registro

Cuando se completa la operación de larga duración, la respuesta indica el número de terceros que se han añadido, quitado o actualizado.

Campo de respuestaTipoDescripción
partiesAddedinteger Número de participantes añadidos por esta operación.
partiesRemovedinteger Número de participantes eliminados por esta operación.
partiesTotalinteger Número total de participantes registrados en esta instancia después de que se haya completado la operación de actualización.
partiesUptieredinteger Número total de partes comerciales que han pasado de pequeñas a grandes
partiesDowntieredinteger Número total de partes comerciales que han pasado de grandes a pequeñas
partiesFailedToDowntierinteger Número total de terceros comerciales que no han podido cambiar de un nivel grande a uno pequeño
partiesFailedToRemoveinteger Número de participantes que no se han podido quitar con esta operación.

Cómo dar de baja a las partes

Las partes se anulan por instancia de IA de AML mediante el mismo método projects.locations.instances.importRegisteredParties y se sustituye la lista de partes. Asigna el valor REPLACE al campo mode. Este ajuste anula el registro de las partes registradas actualmente (en la línea de negocio proporcionada) que no formen parte de la tabla de registro de partes proporcionada.

Respuestas de cancelación del registro

Una vez completada la operación, consulta la respuesta de la API para comprobar si la operación ha dado el resultado esperado en cuanto al número de participantes añadidos o eliminados, así como el número total de participantes registrados.

La respuesta de la API también devuelve el número de terceros que no se han podido eliminar debido a restricciones. Por ejemplo, no se puede anular el registro de un cliente hasta que hayan transcurrido un número mínimo de días.

Exportar participantes registrados

Para exportar las partes registradas, utiliza el método projects.locations.instances.exportRegisteredParties.

(La siguiente información también está disponible en Crear y gestionar instancias).

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • PROJECT_ID: el ID de tu proyecto Google Cloud aparece en la configuración de gestión de identidades y accesos.
  • LOCATION: la ubicación de la instancia. Usa una de las regiones admitidas
    Mostrar ubicaciones
    • us-central1
    • us-east1
    • asia-south1
    • europe-west1
    • europe-west2
    • europe-west4
    • northamerica-northeast1
    • southamerica-east1
    • australia-southeast1
  • INSTANCE_ID: identificador definido por el usuario de la instancia
  • BQ_OUTPUT_DATASET_NAME: a Conjunto de datos de BigQuery en el que se exportará una tabla que describa las partes registradas.
  • PARTY_REGISTRATION_TABLE: la tabla en la que se escribirán las partes registradas.
  • WRITE_DISPOSITION: la acción que se lleva a cabo si la tabla de destino ya existe. Usa uno de los siguientes valores:
    • WRITE_EMPTY: solo exporta datos si la tabla de BigQuery está vacía.
    • WRITE_TRUNCATE: borra todos los datos de la tabla de BigQuery antes de escribir en ella.
  • LINE_OF_BUSINESS: usa COMMERCIAL para clientes de banca comercial (entidades jurídicas y físicas) o RETAIL para clientes de banca minorista.

Cuerpo JSON de la solicitud:

{
  "dataset": {
    "tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
    "writeDisposition": "WRITE_DISPOSITION"
  },
  "lineOfBusiness": "LINE_OF_BUSINESS"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el siguiente comando en el terminal para crear o sobrescribir este archivo en el directorio actual:

cat > request.json << 'EOF'
{
  "dataset": {
    "tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
    "writeDisposition": "WRITE_DISPOSITION"
  },
  "lineOfBusiness": "LINE_OF_BUSINESS"
}
EOF

A continuación, ejecuta el siguiente comando para enviar tu solicitud REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:exportRegisteredParties"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json. Ejecuta el siguiente comando en el terminal para crear o sobrescribir este archivo en el directorio actual:

@'
{
  "dataset": {
    "tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
    "writeDisposition": "WRITE_DISPOSITION"
  },
  "lineOfBusiness": "LINE_OF_BUSINESS"
}
'@  | Out-File -FilePath request.json -Encoding utf8

A continuación, ejecuta el siguiente comando para enviar tu solicitud REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:exportRegisteredParties" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": "2023-03-14T15:52:55.358979323Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
    "verb": "exportRegisteredParties",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Para obtener información sobre cómo obtener el resultado de la operación de larga duración, consulta Gestionar operaciones de larga duración.

Este método genera una tabla de BigQuery con el siguiente esquema:

ColumnaTipoDescripción
party_idSTRINGIdentificador único de la parte en los conjuntos de datos de la instancia.
party_sizeSTRING Especifica el nivel de los clientes comerciales (grandes o pequeños). Este campo no se aplica a los clientes minoristas.
  • NULL para todos los clientes minoristas
  • SMALL para pequeñas empresas comerciales con menos de 500 transacciones mensuales de media
  • LARGE para grandes empresas comerciales con una media mensual de 500 transacciones o más

Todos los valores distinguen entre mayúsculas y minúsculas.

earliest_remove_timeSTRINGLa hora más temprana a la que se puede eliminar la parte
party_with_prediction_intentSTRINGEl indicador que sugiere si se ha predicho un partido desde el registro
registration_or_uptier_timeSTRINGLa hora a la que se registró o se cambió de nivel el partido