Descripción general: Servicios de transferencia de persona a persona, utilizando la bóveda de Credibanco y con enrolamiento de tarjeta previo, en la bóveda, adicionalmente debes asociar los código únicos y terminales con los que se realiza la transferencia.
PASOS DETALLADOS:
Crea tu aplicación
1. Crea tu aplicación y gestiona tus llaves de acceso; si ya las creaste continua con el Paso 2.
1.1 Debes asociar la cantidad de códigos únicos y terminales para que puedas usarlos en la transferencia
2. Consume el API de Bóveda - SDK PCI:
Consume la API Bóveda
2. Consume la API de Bóveda - SDK PCI:
2.0. Descarga SDK.
Para descargar los archivos SDK, envíe una solicitud dando clic AQUÍ.
2.1 Crea un usuario a través de la operación createUser.
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/pci-dss/api/v1/services/createUser
• Método HTTP: POST
Parámetro | Obligatoriedad | Descripción |
---|---|---|
SI | Email del usuario | |
tyc | SI | String que acepta valores S o N para aceptar los términos y condiciones |
firstName | SI | El nombre del usuario |
lastName | SI | El apellido del usuario |
userType | SI | Tipo de documento del usuario, 1(CC), 4(CE), 5(Pasaporte), 6(Otro) |
documentNumber | SI | Número de documento del usuario |
cellphone | SI | Número de celular del usuario |
cvv | SI | Número de CVV de la tarjeta del usuario |
cardNumber | SI | Número de tarjeta del usuario |
alias | SI | El alias que se le dará a la tarjeta |
validDate | SI | Fecha de expiración de la tarjeta |
cardType | SI | El tipo de tarjeta, sea cd(tarjeta de credito) o db(tarjeta de débito). |
HTTP STATUS | Status Code | Descripción |
---|---|---|
400 | 05 | El usuario ya existe. |
400 | 07 | Correo electrónico con formato invalido. |
400 | 08 | Campos con valor vacíos. |
400 | 09 | El tipo de documento debe ser 1(CC), 2(CE), 5(Pasaporte) o 6(Otro). |
400 | 10 | El usuario no aceptó los Términos y Condiciones. |
400 | 11 | El tipo de tarjeta no es válido. |
400 | 12 | La fecha de expiración de la tarjeta no es válida. |
400 | 13 | El número de celular no es válido. |
500 | 14 | Validaciones diarias excedidas. Favor de validar nuevamente el día de mañana. |
500 | 15 | Error al realizar el microdébito/reverso |
500 | 16 | Error desconocido al realizar la validación de titularidad de tarjeta. |
500 | 17 | Error al realizar el microdébito/reverso |
200 | 18 | Se requiere la validación de microdébito. |
200 | 19 | Validación de tarjeta exitosa. |
500 | 20 | No existe la identificación. |
500 | 21 | No coinciden los datos. |
500 | 22 | Válido con documento no vigente. |
500 | 23 | Tipo de documento errado. |
500 | 24 | El número de tarjeta no corresponde a la identificación dada. |
500 | 25 | La tarjeta existe, pero no es válida para transar. |
500 | 26 | El número no es de una tarjeta de crédito. |
500 | 27 | El teléfono no coincide. |
500 | 28 | El email no coincide. |
500 | 29 | Error general. |
500 | 30 | Cliente con tarjeta activa en entidad. |
500 | 31 | Cliente sin tarjeta activa en entidad. |
500 | 32 | Error desconocido en validación de datacredito. |
500 | 33 | Error al guardar el registro de usuario. |
200 | 34 | Registro de usuario exitoso. |
500 | 36 | Error al realizar la transacción. |
2.1.1. Agregar una tarjeta a un usuario ya existente desde el servicio addCard (Este paso es opcional, aplica siempre y cuando se quiera agregar otra tarjeta a la ya existente).
• URL Pruebas
• Método HTTP: POST
Parámetro | Tipo | Obligatoriedad | Descripción |
---|---|---|---|
cvv | String | Obligatorio | Codigo de seguridad de la tarjeta a agregar |
cardNumber | String | Obligatorio | Numero de tarjeta a agregar |
alias | String | Obligatorio | Nombre dado por el usuario a la tarjeta a agregar |
validDate | String | Obligatorio | Fecha de expiriacion de la tarjeta a agregar |
cardType | String | Obligatorio | Es el tipo de tarjeta a agregar, acepta los valores ‘cd’(Tarjeta Credito) y ‘db’(Tarjeta debito) |
favorite | String | Obligatorio | ‘S’ Si definir esta tarjeta agregar como favorita para compras, ‘N’ no definir esta esta tarjeta agregar como favorita para compras. |
HTTP status code | Code | Status |
---|---|---|
200 | 53 | Se requiere la validación de microdebito |
200 | 54 | Tarjeta almacenada exitosamente |
500 | 04 | Error al obtener valores desde el token de autorización |
500 | 55 | Error al almacenar la tarjeta |
500 | 24 | El numero de la tarjeta no corresponde a la identificación dada |
500 | 25 | La tarjeta existe, pero no es valida para transar |
500 | 26 | El numero no es de una tarjeta de crédito |
500 | 29 | Error general |
500 | 30 | Cliente con tarjeta activa en entidad |
500 | 500 | 31 |
32 | Cliente sin tarjeta activa en entidad | Error desconocido en validación de datacredito |
400 | 57 | La tarjeta ingresada ya se encuentra registrada |
400 | 58 | El alias actualmente ya se encuentra registrada |
401 | 56 | Sesión de usuario invalida |
2.2 Obtén el valor del micro-débito
2.2.1 En el caso de estar en la etapa de implementación (en producción este valor será enviado por la entidad bancaria), debe consumir el servicio getTrxVal
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/microdebit/api/v1/getTrxVal
• Método HTTP: GET
• Campos de entrada: Debe ingresar por lo menos un campo para consumir el servicio.
Parámetro | Tipo | Obligatoriedad | Descripción |
---|---|---|---|
identification | String | Opcional | Número de identificación ingresado en el enrolamiento |
String | Opcional | Email ingresado en el enrolamiento | |
validationToken | String | Opcional | validationToken generado por el servicio de createUser o addCard = SDK - Pluggin |
HTTP status code | Code | Status |
---|---|---|
200 | - | Response correspondiente el microdebito se obtiene del campo trxVal |
400 | 1 | Debe enviar por lo menos un parámetro |
404 | 2 | No se ha encontrado registros con los parametros ingresados |
3.1 Confirma el valor del valor del micro-débito a través de la operación validateMicrodebit
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/services/api/v1/validateMicrodebit
• Método HTTP: POST
Parámetro | Obligatoriedad | Descripción |
---|---|---|
value | SI | Valor que fue debitado al usuario de tipo String |
token | SI | Token de validación de microdébito producto del registro, campo de tipo String |
HTTP status code | Code | Status |
---|---|---|
500 | 04 | Error al obtener valores desde el token de authorizacion. |
200 | 39 | Se valido exitosamente el microdébito. Usuario registrado |
200 | Se valido exitosamente el microdébito. Tarjeta registrada | |
400 | 40 | Límite de intentos diarios excedido |
400 | 41 | Error al realizar la validación, estado de usuario no valido |
500 | Error al realizar la validación | |
500 | Validación fallida |
3.2 Obtener el token de sesión del usuario previamente creado desde los siguientes servicios.
3.2.1 Consumir el servicio de validateUserByDocument , este servicio valida si el usuario esta registrado en la bóveda, si el usuario existe se le proporciona una OTP que se necesitara para la autenticación del usuario
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/services/api/v1/validateUserByDocument/{documentNumber}
• Método HTTP: GET
HttpStatus | StatusCode | Message |
---|---|---|
200 | 00 | El usuario no ha confirmado el correo. Favor validar el código de verificación enviado al correo. |
200 | 01 | El usuario no ha registrado tarjetas. Favor continuar con el proceso de registro. |
200 | 02 | El documento existe, dse puede proceder con la autenticación. |
404 | 03 | No existe registro para esse documento. |
500 | 04 | Ocurrió un error al validar el documento del usuario. |
500 | 04 | Error al obtener valores desde el token de authorización |
3.2.2 Consumir el servicio authenticateUser donde se obtiene el sesión token, este servicio permite al usuario iniciar sesión con el fin de utilizar el servicio de listado de tarjetas.
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/services/api/v1/authenticateUser
• Método HTTP: POST
HTTPSStatus | StatusCode | Message |
---|---|---|
SI | Email del usuario registrado | |
otp | SI | La OTP que se obtiene en el correo registrado al momento de consumir el servicio validateUserByDocument |
HTTPSStatus | StatusCode | Message |
---|---|---|
500 | 04 | Error al obtener valores desde el token de autorización |
200 | 42 | Autenticación correcta |
400 | 43 | Error al validar el OTP |
401 | 43 | OTP no valido |
500 | 43 | Error al validar el OTP |
401 | 44 | OTP no valido |
403 | 45 | Número máximo de intentos excedido, favor generar nuevamente el OTP |
401 | 46 | La fecha de vigencia del OTP se ha vencido, favor generar nuevamente el OTP |
3.3 Consumir el servicio userCards este servicio muestra el listado de tarjetas que tiene asociadas el usuario, el cual se obtiene el token de tarjeta para consumir el servicio persontoperson se necesita tener en cuenta las siguientes condiciones:
• carTokenSender-> El Bin debe estar habilitado para enviar dinero
• El bin de las tarjetas a utilizar, debe estar agregado y habilitado tanto para enviar, como para recibir dinero (Esto se realiza y se consulta en el paso 3.4)
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/services/api/v1/userCards/{sessiontoken}
• Método HTTP: GET
• Campos de entrada: En la cabecera (Headers) se pondrá el sessionToken obtenido en la autenticación
HTTPStatus | StatusCode | Message |
---|---|---|
200 | 50 | Consulta exitosa de listado de tarjetas. |
500 | 51 | Error al consultar el listado de tarjetas. El usuario no tiene tarjetas |
401 | 52 | Token de sesión no valido. |
3.4 Consumir los servicios para asignar o actualizar y consultar favorita para recibir y favorita para enviar dinero
3.4.1 Consume el servicio setFavoriteCardToReceive para asignar, actualizar la tarjeta para favorita enviar dinero
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/markingcards/api/v1/setFavoriteCardToReceive
• Método HTTP: PUT
campo | Obligatoriedad | Descripción |
---|---|---|
sessionToken | SI | Es el sesióntoken del usuario registrado en la bóveda, se obtiene del servicio de authenticateUser |
cardToken | SI | Es el token de tarjeta que se desea asignar como favorita para enviar dinero, se obtiene del servicio de userCards |
• Códigos de respuesta:
3.4.2 Consume el servicio setFavoriteCardToReceive para asignar o actualizar la tarjeta para favorita recibir dinero
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/markingcards/api/v1/setFavoriteCardToReceive
• Método HTTP: PUT
• Campos de entrada:
campo | Obligatoriedad | Descripción |
---|---|---|
sessionToken | SI | Es el sesióntoken del usuario registrado en la bóveda, se obtiene del servicio de authenticateUser |
cardToken | SI | Es el token de tarjeta que se desea asignar como favorita para recibir dinero, se obtiene del servicio de userCards |
3.4.3 Consume el servicio consultCardsAsFavorites para consultar cual tarjeta tiene el usuario como favorita para enviar o recibir dinero
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-ia/markingcards/api/v1/consultCardsAsFavorites
• Método HTTP: GET
• Campos de entrada: En los parámetros se envia el sessionToken que se obtiene del servicio de autenticación
• Códigos de respuesta:
Consumir servicio transaccional
4. Consumir servicio transaccional.
4.1 Consume el servicio personToPerson donde se realiza la transferencia persona a persona
• Límites para el campo “amount” del valor de la transferencia: Monto Mínimo= 1000, Monto Máximo= 2000000
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-p2p-gateway/api/v1/transfers/personToPerson
• Método HTTP: POST
Campo | Descripción |
---|---|
tokenSessionSender | Token de sesión de la persona que realiza la Transacción, obtenido de IAPaGo del servicio de autenticación. |
cardTokenSender | Token de tarjeta con la cual desea realizar la Transacción, obtenido de IAPaGo del servicio de listado de tarjetas |
documentReceiver | Numero de documento de la persona que recibe el dinero. Debe estar registrado en la base de datos de PaGo. |
documentTypeReceiver | Tipo de documento (1=CC,4=CE) de la persona que realiza la transacción. |
amount | Valor de la transacción a enviar, el cual tiene un monto mínimo y máximo parametrizado general para todos los clientes que hagan uso del presente servicio |
transactionalQueryIdentifier | Identificador para consulta transaccional en formato yyyyMMddHHmmssSSS, las horas son en formato 24H |
merchantUniqueCode | Código único del comercio |
merchantTerminalcode | Terminal del comercio |
• Campos con errores de respuesta:
Campo | Descripción |
---|---|
statusCode | Código de resultado de transacción. |
message | Mensaje de resultado de transacción. |
pullTransferID | Campo retornado por finix para hacer la anulación de la AFT aparece cuando la transacción pull es ok y falla la transacción push. |
transactionType | Código para identificar en que proceso fallo si PULL O PUSH. |
messageTransfer | Mensaje error. |
apiError | Aplica si existe error en el api de Finix. |
numberStepError | Aplica si fallo en algún paso especifico de Finix. |
Campo | Descripción |
---|---|
statusCode | Código de resultado de transacción, es un valor entero. |
message | Mensaje de resultado de transacción. Es una string |
pullTransferID | Campo retornado por Finix para hacer la anulación de la AFT. Es una string |
pushTransferID | Código de autorización una vez hecha la OCT Es una string |
Http-StatusCode | Code | Message |
---|---|---|
200 | 200 | Transferencia exitosa. |
500 | 500 | Transferencia fallida. |
500 | 1 | Servicio no disponible. |
500 | 2 | No pudimos procesar él envió de tu dinero algo está pasando con la cuenta del destinatario. |
500 | 3 | No pudimos procesar él envió de tu dinero algo está pasando con tu cuenta. |
500 | 4 | Error reversando el envió del dinero. |
500 | 5 | Error conectando a finix. |
Consulta de las transferencias realizadas
5. Consulta de las transferencias realizadas
5.1 Consumir el servicio transferByCanalSSOAndIdTransactionalQuery
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-p2p/api/v1/transfers/transferByCanalSSOAndIdTransactionalQuery
• Método HTTP: GET
• Campos de entrada: Se requiere el parámetro transactionalQueryIdentifier que es el identificador que se ingresa en el servicio persontoperson
HttpStatusCode | statusCode | message |
---|---|---|
400-Bad request | 10 | El identificador de la consulta transaccional no tiene el formato valido, el formato correcto es yyyyMMddHHmmssSSS |
409-Conflict | 11 | No se logró obtener el canal-sso |
409 | 66 | El identificador de la consulta transaccional no existe para ese canal |
102- PROCESSING | 3 | Pendiente por hacer el PUSH-OCT |
102 | 4 | Pendiente por hacer el REVERSO-AFT |
409 | 5 | No existen transferencias realizadas bajo ese criterio |
5.2 Consumir el servicio searchTransfersInIntervalDates
• URL Pruebas: https://apiadmin.apps-pruebas.credibanco.com/testing/api-p2p/api/v1/transfers/searchTransfersInIntervalDates
• Método HTTP: GET
• Campos de entrada: El formato para los campos fecha inicio y fecha final son “dd-MM-yyyy HH:mm” “día-mes-año Hora:minuto”, la hora es en formato 24H.
HttpStatusCode | statusCode | message |
---|---|---|
409-Conflict | 1 | No se logró obtener el canal-sso |
400-Bad request | 2 | La fecha inicial no puede ser mayor a la final |
400 | 3 | La fecha final no puede ser menor a la inicial |
409 | 4 | La búsqueda supera la máxima cantidad días |
400 | 5 | El formato de fecha no es correcto, el formato correcto es dd-MM-yyyy HH:mm |
409 | 6 | No existen transferencias realizadas bajo ese criterio |
• Link de la colección de P2P-Gateway:
Dependencias P2P
DEPENDENCIAS SERVICIO PERSONTOPERSON
Servicios del API de Bóveda:
1. CreateUser
2. ValidateMicrodebit
3. ValidateUserByDocument
4. AuthenticateUser
5. userCards
DEPENDENCIAS DEL SERVICIO transferByCanalSSOAndIdTransactionalQuery
El servicio no tiene dependencias de ningún servicio en particular para consumirlo correctamente
1. Consulta por intervalos de fecha (searchTransfersInIntervalDates)
1.1. Ingresa al servicio searchTransfersInIntervalDates
1.2. Parametrizar el campo fechaInicial con formato dd-MM-yyyy HH:mm
1.3. Parametrizar el campo fechaFinal con formato dd-MM-yyyy HH:mm
DEPENDENCIAS DEL SERVICIO searchTransfersInIntervalDates
El servicio no tiene dependencias de ningún servicio en particular para consumirlo correctamente.
Collection
P2P Gateway (Sin PCI) - Para descargar el collection, haga un clic AQUÍ.
Certificación
Para iniciar el proceso de Certificación, debes haber finalizado tu implementación con éxito. Inicia tu solicitud AQUÍ.
Glosario
Puedes consultar el glosario dando clic AQUÍ.