Tarjetas crédito y débito
Info
El Request y Response mostrado en este artículo aplican tanto para el Modelo Gateway como Payfac. Para el modelo Gateway, tenga en cuenta las recomendiaciones mostradas en esta sección.
Parámetros del Request
Se necesita incluir campos específicos para que este método de pago funcione correctamente. Consulte la sección Parámetros del Request para obtener información detallada sobre los parámetros de compra básica como el monto y la moneda.
Propiedad | Tipo | ¿Obligatorio? | Descripción |
---|---|---|---|
TrxToken | string | Sí | Token que identifica la tarjeta del cliente. Para más información sobre cómo crear el token, consulte Clientes. |
TargetCountryISO | string | Sí | Indica el país destino. |
Installments | integer | No | Este parámetro hace referencia al número de pagos en el que se divide una compra con tarjeta de crédito. |
Customer → Email | string | Sí | Correo electrónico del cliente. |
Customer → FirstName | string | Sí | Nombre del cliente. |
Customer → LastName | string | Sí | Apellido del cliente. |
Customer → DocumentType | string | No | Tipo de documento del cliente. Consulte la tabla de tipos de documento para ver los posibles valores. |
Customer → DocumentNumber | string | No | Número de documento del cliente. |
Customer → PhoneNumber | string | Sí | Número de teléfono del cliente. |
Customer → Address → Country | string | Sí | País del cliente. |
Customer → Address → State | string | Sí | Estado del cliente. |
Customer → Address → City | string | Sí | Ciudad del cliente. |
Customer → Address → AddressDetail | string | Sí | Detalle de la dirección del cliente. |
Customer → Address → PostalCode | string | No | Código postal del cliente. El código postal es obligatorio para Estados Unidos y Canadá. |
CustomerIP | string | No | IP del cliente que utiliza el servicio. |
DataUY | object | No | Información específica para Uruguay. En Uruguay, dos leyes promueven los medios de pago electrónicos mediante la devolución de puntos de IVA. Las leyes 19.210 (Ley de inclusión financiera) y 17.934 de servicios gastronómicos y afines regulan estos beneficios, y los datos presentados en este objeto son necesarios para su correcto uso. Este campo es requerido para el modelo Gateway. |
DataUY → IsFinalConsumer | boolean | No | Indica si la venta se realiza a un consumidor final. Este campo es requerido para el modelo Gateway. |
DataUY → Invoice | string | No * | Número de factura asociado a la venta. Este parámetro solo acepta caracteres numéricos. |
DataUY → TaxableAmount | number | No * | Importe gravado por IVA. En caso de no enviarse el valor, no se aplicará la devolución de puntos de IVA. |
Info
- * Este parámetro es obligatorio cuando
DataUY.IsFinalConsumer
estrue
. - Recuerde que para el correcto funcionamiento del sistema antifraude, sugerimos enviar la información adicional descrita en la sección Antifraude.
Ejemplo del Request
{
"TrxToken": "OT__6dHAgJo6qeg62qIroA7H7_f_NWZZ6IEx4jiYpVJ8SzQ_",
"UniqueID": "paymentID3022",
"Capture": true,
"TargetCountryISO": "UY",
"Currency": "UYU",
"Amount": 25000,
"Installments": 1,
"Order": "CH2023-001",
"Description": "Purchase Test",
"Customer": {
"FirstName": "Joao",
"LastName": "Silva",
"ReferenceCode": "JS-001",
"PhoneNumber": "11987654321",
"DocumentNumber": "12345672",
"DocumentType": "CPF.BR",
"Email": "joao.silva@example.com",
"Address": {
"Country": "UY",
"City": "Montevideo",
"State": "Mdeo",
"PostalCode": "11600",
"AddressDetail": "Avenida Paulista 1000"
}
}
}
Parámetros del Response
Para más información sobre los parámetros del Response, consulte la sección de parámetros de la creación de la compra.
Ejemplo del Response
{
"TransactionId": "79632697147789184",
"Result": "COMPLETED",
"Status": "APPROVED",
"ErrorCode": null,
"ErrorDescription": null,
"Created": "2024-08-07T17:51:54.620",
"AuthorizationDate": "2024-08-07T17:51:56.879",
"AuthorizationCode": "839936",
"Amount": 25000,
"Currency": "UYU",
"Installments": 1,
"TaxableAmount": null,
"Tip": null,
"Url": "https://api.stage.bamboopayment.com/Purchase/79632697147789184",
"MetadataOut": null,
"Action": null,
"PaymentMethod": {
"Brand": "Visa",
"CardOwner": "Joao Silva",
"Bin": "450799",
"IssuerBank": "Santander",
"Type": "CreditCard",
"Expiration": "203008",
"Last4": "4905"
}
}
Tarjetas de prueba
Para generar información de tarjetas válidas para pruebas, debe establecer primero qué adquirente necesita probar y qué tipo de prueba quiere hacer.
Determinación del BIN
Al configurar un adquirente, también se crea el BIN (número de identificación bancaria) de la tarjeta. Este BIN debe coincidir con uno de los bines asociados a las marcas procesadas por el adquirente. Por ejemplo, si está realizando una prueba de integración con MasterCard, el BIN de la tarjeta generada debe ajustarse al siguiente formato: ^ 5 \ [1-5] \ [0-9]*
Este formato significa que debe comenzar con el número 5; el segundo número debe estar entre 1 y 5, luego se acepta cualquier otro número. Por ejemplo, el BIN a probar puede ser 510000
. A continuación se enumeran los bines válidos en el sistema y su adquirente correspondiente.
BIN (formato) | Marca | Notas |
---|---|---|
^4\[0-9]* | VISA | Cualquier tarjeta que empiece con 4 . |
^5\[1-5]\[0-9]* | MasterCard | Cualquier tarjeta que empiece con 51 hasta 5 . |
^589892|^542991 | OCA | Cualquier tarjeta que empiece con 589892 o 542991 . |
Determinación de Comportamiento para el modelo PayFac
El comportamiento de la respuesta dependerá del monto enviado. Utilice las siguientes tarjetas para simular los diferentes estados de la compra.
Marca | PAN | CVV | Fecha de Expiración |
---|---|---|---|
Mastercard | 5165850000000008 | 123 | 12/29 |
Visa | 4704550000000005 | 123 | 12/29 |
Tarjetas sin CVV
Marca | PAN | Fecha de Expiración |
---|---|---|
Mastercard Crédito | 5101980000000000 | 12/29 |
Mastercard Prepago | 5599260000000006 | 12/29 |
Visa Crédito | 4103770000000006 | 12/29 |
Visa Débito | 4213000000000005 | 12/29 |
Visa Internacional Crédito | 4147960000000001 | 12/29 |
Visa Internacional Débito | 4345590000000006 | 12/29 |
Comportamiento | Monto |
---|---|
Resultado: Rejected Error: La tarjeta no permite operar con cuotas. | UYU 1045,00 |
Resultado: Rejected Error: Tarjeta expirada. | UYU 1046,00 |
Resultado: Rejected Error: Fondos insuficientes. | UYU 1051,00 |
Resultado: OK Aprobado |
|
Determinación de Comportamiento para el modelo Gateway
El comportamiento de la respuesta dependerá de la terminación de la tarjeta. Genere la tarjeta utilizando el bin de la marca correspondiente, y envíe los siguientes cuatro últimos dígitos de acuerdo con el resultado esperado.
Terminación | Comportamiento |
---|---|
0001 | Resultado: OK Aprobado. |
0002 | Resultado: Rechazado Error: TR007 Error con algún dato del medio de pago (número de tarjeta, código de verificación y/o fecha de expiración). |
0013 | Resultado: Rechazado Error: TR012 Límite de crédito excedido. |
Particularidades para el modelo Gateway
- Puede realizar compras a cuotas siempre que el Banco Emisor lo tenga habilitado.
- Puede realizar compras con Tarjetas de Débito siempre que el Banco Emisor lo tenga habilitado.
- Visanet exige la inclusión del CVV en la primera compra del cliente o en el alta del cliente.
Una vez realizado el registro y obtenido el Commerce Token, no es necesario solicitar el CVV en futuras transacciones. - Fiserv requiere que se envíe el CVV, incluso si tiene el Commerce Token. Debe ejecutar Flujo de solicitud de código de verificación.
Esta modalidad está activada por defecto. Si desea desactivarla, debe negociar con Fiserv y notificarnoslo. - Creditel y PassCard requieren que el mensaje de
Purchase
incluya el número y tipo de documento del tarjetahabiente (camposCustomer.DocumentTypeId
yCustomer.DocNumber
). - PassCard requiere que se envíe el CVV, incluso si tiene el Commerce Token. Por lo tanto, debe ejecutar el Flujo de Solicitud de Código de Verificación.
- Cuando utilice OCAOneClick2 (OCA Multi-Acquiring), necesita incluir la dirección IP de la persona que está haciendo la compra. Para esto, debe enviar el parámetro
CustomerIP
en el request.
Compras utilizando MasterCard a través de OCA
Cuando utilice MasterCard en el model Gateway, se recomienda enviar el device FingerPrint utilizando el método SetDeviceFingerPrint
.
Agregue esta función al script utilizado en para el formulario de Checkout (PWCheckOut
) para generar y retornar el valor utilizado en la compra.
En este ejemplo, mostramos cómo invocar y obtener el resultado.
<script type="text/javascript">
PWCheckout.SetDeviceFingerprint();
</script>
Luego, incluya el token en la creación de la compra de acuerdo con los siguientes escenarios.
- Para OneTimeToken, envíe el device FingerPrint que generó y el OT token.
- Para CommerceToken, existen dos casos:
- Para compras recurrentes (sin CVV), envíe el device FingerPrint que genera y el CT token. Usted puede utilizar un CT token existente o generar uno nuevo.
- Para compras con CVV, no es necesario generar un
DeviceFingerPrint
ya que cuando el cliente ingresa el CVV, el sistema envía el valor generado cuando se muestra la página de solicitud de CVV. Después, se genera una Compra en estado Pending y necesita redirigir al cliente a la URL retornada en el parámetroactionUrl
donde ingresa el CVV.