Modelo de data

La mayoría de los campos establecidos en la regulación ya están siendo registrados en Transfiya. El modelo de datos detallado con las diferencias se puede encontrar a continuación:

NombreTransfiyaRequeridoCondiciónTipoValidaciónComentario
Tipo de llavelabels.aliasTypeRequeridoTextoVer tabla labels.aliasTypeNuevo valor requerido por regulación.
Valor de llavelabels.aliasValueRequeridoTextoVer tabla labels.aliasValueNo distingue entre mayúsculas y minúsculas, se almacena en mayúsculas.
Estado de llavelabels.statusOpcional con condiciónNo permitido en llamada de creación.TextoVer tabla labels.statusACTIVE por defecto.
IdentificadorhandleOpcionalTexto26-35 caracteres alfanuméricos con estructura base58
Tipo de identificaciónlabels.proprietaryRequeridoTextoVer tabla labels.proprietary
Descripciónlabels.descriptionOpcionalTextoMáximo 255 caracteres.
Número de identificaciónlabels.identificationRequeridoTextoMáximo 18 caracteres alfanuméricos, caracteres especiales no permitidos.
Tipo de clientelabels.typeRequeridoTextoUno de los valores: PERSON, BUSINESS, TROUPESolo PERSON y BUSINESS son usados para transferencias reguladas.
Nombre de entidad legal del clientelabels.nameRequerido con condiciónlabels.type = ‘BUSINESS’Texto1-140 caracteres
Primer nombre del clientelabels.firstNameRequerido con condiciónlabels.type = ‘PERSON’Texto1-40 caracteres
Segundo nombre del clientelabels.secondNameOpcional con condiciónlabels.type = ‘PERSON’Texto1-40 caracteresNuevo valor requerido por regulación.
Primer apellido del clientelabels.lastNameOpcional con condiciónlabels.type = ‘PERSON’Texto1-40 caracteresCambiado a obligatorio para coincidir con la regulación.
Segundo apellido del clientelabels.secondLastNameOpcional con condiciónlabels.type = ‘PERSON’Texto1-40 caracteresNuevo valor requerido por regulación.
País de residencialabels.countryOfResidenceOpcionalTextoCódigo ISO de país de 2 caracteres. https://www.iso.org/obp/ui
Identificación de entidad emisoralabels.createdByGenerado por TransfiyaTextoReferencia de participante TransfiyaIdentificador de billetera del banco en Transfiya.
Tipo de método de pagolabels.bankAccountTypeRequeridoTextoUno de los valores:SVGS, CACC, DBMO, DORD, DBMI
Número de método de pagolabels.bankAccountNumberRequeridoTextoMáximo 34 dígitos
Código nacional del bancolabels.bankBicfiOpcionalTexto4 dígitos
Nombre del bancolabels.bankNameOpcionalTextoMáximo 64 caracteres
Número de identificación del bancolabels.bankIdOpcionalTextoMáximo 9 caracteres numéricosRepresenta un número NIT del banco sin dígito de verificación o un código asignado por BanRep.
Referencia del router del bancolabels.routerReferenceRequeridoTextoMáximo 34 caracteres alfanuméricos, debe comenzar con $Identificador de billetera del banco en Transfiya.
Fecha/hora de creación del registrolabels.createdGenerado por TransfiyaTextoFecha y hora en formato ISO 8601
Fecha/hora de modificación del registrolabels.updatedGenerado por TransfiyaTextoFecha y hora en formato ISO 8601
Código SPBVI objetivolabels.targetSpbviCodeOpcionalTextoVer tabla labels.targetSpbviCodeTFY por defecto.
Fecha/hora de consentimiento del usuariolabels.consentedOpcionalTextoFecha y hora en formato ISO 8601, será establecido por Transfiya si no se proporciona.Nuevo campo para registrar el momento en que el usuario dio consentimiento para registrar datos.
KeeperkeeperRequeridoArrayVer tabla keeperLlave pública del firmante.

Tipos de llaves

Para hacer que los signers sean compatibles con la regulación, se han añadido nuevas etiquetas que definen claramente el tipo y valor de cada alias (llave). Estas etiquetas permiten una integración fluida entre el sistema Transfiya y los requisitos regulatorios establecidos.

Signer label (labels.aliasType):

NameTransfiyaRegulation
Phone numberPHONEM
AlphanumericALPHANUMO
EmailEMAILE
Document numberNRICNRIC
Merchent IdMERCHANTB

Ejemplo y validaciones de alias label (labels.aliasValue):

Tipo de aliasEjemploValidaciónComentario
Número de teléfono3012344567Debe comenzar con 3 y tener 9 dígitos después de este prefijo.
Alfanumérico@JORGE35Comienza con el símbolo @. Máximo 20 caracteres alfanuméricos y mínimo 5 caracteres alfanuméricos (No puede incluir espacios, tildes ni el caracter ñ) después del símbolo @.El símbolo @ está reservado para IDs alfanuméricos, nombres de usuario, etc.
Correo electrónicoTEST@COMPANY.IOMáximo 92 caracteres. Debe tener un único carácter @. Máximo 30 caracteres antes del @ y 61 después.
Número de documentoPR5002499Mínimo 3 y máximo 18 caracteres alfanuméricos, no se permiten caracteres especiales.El número de identificación del documento debe ser único en el sistema, incluso si se repite en Colombia.
ID de comerciante0012345678Comienza con 00 y tiene 10 dígitos en total.

Status de signers (llaves regulatorias)

Signers van a incluir el estado de las llaves regulatorias asociadas a cada signer.

Los estados se manejan usando el label staus an nivel de signer (labels.status):

NameTransfiyaRegulation
ActiveACTIVEACTV
Blocked by clientSUSPENDED_BY_CLIENTSUSP
Blocked by participantSUSPENDED_BY_PARTICIPANTSUSB
Inactive (cancelled)INACTIVEICTV

Tipo de documento

Document type enum (labels.proprietary):

NameTransfiyaRegulationComment
Citizenship CardCCCC
Foreign ID CardCECE
Passport NumberPAPAS
Identity CardTITDI
Unique Personal Identification NumberNUIPNUIP
Tax Identification NumberNITNIT
OtherOTR-Not supported by regulation
Temporary Protection PermitPPTPPTNew value required by regulation
Special Stay PermitPEPPEPNew value required by regulation

Tipo de cuenta

Tipo de cuenta (labels.bankAccountType):

NameTransfiyaRegulationComment
Savings accountsSVGSCAHO
Cash trading accountTRAS-Not supported by regulation
Current accountCACCCCTE
OtherOTHR-Not supported by regulation
Low-amount depositsDBMODBMONew value required by regulation
Ordinary depositsDORDDORDNew value required by regulation
Inclusive low-amount depositsDBMIDBMINew value required by regulation

Codigos de participantes SPBVI

SPBVI codes (labels.targetSpbviCode):

NameCode
TransfiyaTFY
Entre cuentasENT
CredibancoCRB
VisionamosVIS
ServibancaSRV

Keeper (firmas digitales)

El objeto Keeper contiene información de la llave almacenada en el lado del banco que se utiliza para asegurar este firmante y autorizar los pagos relacionados con él.

Los campos del keeper se definen a continuación y siguen en el modelo actual:

NombreCampoTipoRequeridoValidación
Tipo de llaveschemeTextoRequeridoUno de:ecdsa-ed25519, eddsa-ed25519
Llave públicapublicTextoRequerido64-130 caracteres