POST Ejecutar cobro con Token V3

Método de cobro con tarjeta tokenizada

Descripción

Para ejecutar el cobro con tarjeta tokenizada, debió existir previamente una operación exitosa de esa misma tarjeta y mismo merchant group como se indica en el siguiente link: POST Ejecutar cobro con Tarjeta

Para ejecutar el cobro con token se debe emplear el método POST purchase

En el body viajan

  • Identificación de la Entidad dentro de pagoUno (external_reference)

  • Los Token obtenidos en una operación previa exitosa

  • Los bines (primeros seis dígitos de la tarjeta)

  • Datos del tarjeta-habiente (nombre, documento, fecha de nacimiento, mail, teléfono, bandera de notificación)

    • la bandera de notificación en true permitirá mandar notificaciones al mail o teléfono del tarjeta-habiente

  • Lista de Compra (merchant group con su access key, monto, plan, cuotas, moneda, datos del vendedor para el resumen de tarjeta)

  • Datos para control de fraude (control por Score o pago garantizado)

    • Cuando el control es a través scoring, debe ser informado el máximo valor para la aceptación del riesgo.

En el response se recibirá

  • El id de la transacción

  • El resultado de la transacción (approved "true" o "false" dependiendo de si el pago fue autorizado o no)

  • Los datos de tokenización de la tarjeta (primary_account_token y primary_account_token_auth)

  • El resultado del control de fraude

  • Entre otros

Utilidad de tokenización

La tokenización le permitirá recordar los datos de PAN y fecha de vencimiento

Esto le permitirá proponer el uso de una tarjeta registrada en operaciones subsecuentes evitando así el reingreso del PAN y la fecha de vencimiento, sólo será necesario el ingreso del código de seguridad (el CVV jamás es almacenado en nuestras bases)

También le permitirá realizar operaciones de cobro sin cvv siempre que el comercio este habilitado para realizar cobros sin código de seguridad. Esta funcionalidad es útil en pagos recurrentes, en donde deberá gestionar con EntradaUno el código de subscripción adecuado.

Utilidad de Control de Fraude

Si el comercio desea realizar control de prevención de fraude deberá primeramente contar con este servicio habilitado en EntradaUno

Caso contrario los parámetros deben viajar como se indica en el ejemplo

Utilidad de Notificación

Si el comercio desea enviar una notificación al cliente (por correo electrónico o teléfono) sobre el pago efectuado, deberá primeramente contar con este servicio habilitado en EntradaUno

Caso contrario el parámetro debe viajar como se indica en el ejemplo.

Request para cobros con tarjeta tokenizada

POST /payment/purchase

IMPORTANTE:

*️Todos los parámetros marcados con * (asterisco) son OBLIGATORIOS

👉La URL del host para su implementación debe ser solicitada al área de soporte

💵El parámetro transaction_amount no debe contener ni puntos ni comas, los últimos dos dígitos siempre serán utilizados para la parte decimal del monto, si quiero realizar un operación por 100.50 (100 con 50 centavos) se debe enviar 10050

🛃 Los Token recibidos sólo son válidos para los comercios del Merchant que realizó la operación.

La llamada se realizara enviando en el body el json de parametros como se muestra en el siguiente ejemplo:

B) con token

{ "is_scoring_required": false, "max_risk_score": 0, "is_payment_guaranteeable": false, "customer_transaction_identificator": "xxxxx_v3", "card_holder": { "front_name": "Juan Lopez", "birth_date": "01011990", "email": "desa@midominio.com", "telephone": 1132840000, "document_type": "DNI", "document_number": "99999", "notification": false }, "purchase_list": [ { "merchant_code_group": "grupo", "access_key_merchant_code_group": "xxxxxxx-xxxx-x-xxxxx", "transaction_amount": 1000, "installments_plan": 0, "installments": 1, "transaction_currency_code": "032", "seller_descriptor": "TEST_V3" } ], "oWEB": { "primary_account_number_first_six": "454545", "primary_account_token": "12000000-A082-4044-A082-00FFDEBB0000", "primary_account_token_auth": "6D0B61AB621960E77419E888XXXXXXXX" }

Headers

NameTypeDescription

Content-Type*

String

application/json

Request Body

NameTypeDescription

customer_transaction_identificator*

str

Identificación de la Entidad dentro de pagoUno (external_reference).

oWEB*

object

Datos de la Tarjeta:

bin, token, token_auth

primary_account_number_first_six*

str

Bin. Primeros 6 (seis) dígitos del PAN

primary_account_token*

str

Token del PAN

primary_account_token_auth*

str

Token de Autorización

card_holder*

object

Datos del Tarjeta-Habiente:

nombre, fecha de nacimiento, documento, teléfono, correo, bandera de notificación

front_name*

str

Nombre del Tarjeta-Habiente tal cual se muestra en la tarjeta

birth_date

str

Fecha de Nacimiento del Tarjeta-Habiente

document_type*

str

Tipo de documento.

Ej: dni, DNI, cuil, CUIL.

document_number*

str

Número de Documento del Tarjeta-Habiente

telephone

number

Teléfono

email

str

Correo Electrónico

notification

boolean

Valores permitidos: true, false

purchase_list*

array

Lista de Compras

Es obligatorio tener al menos un elemento en esta lista.

Compuesta por:

merchant group con su access key, monto, plan, cuotas, moneda, datos del vendedor para el resumen de tarjeta

merchant_code_group*

str

Grupo de Códigos de Comercio

access_key_merchant_code_group*

str

Clave de acceso del merchant_code_group

transaction_amount*

number

Monto de la transacción.

Importe mínimo: 1000 ($10)

IMPORTANTE:

El monto debe escribirse sin puntos ni coma. Los últimos dos dígitos siempre representan la parte decimal.

Ejemplo:

Si quiere realizar una transacción por $12.34 (doce pesos con treinta y cuatro centavos) debe enviar 1234

installments_plan*

number

Valor permitido: 0

installments*

number

Cantidad de Cuotas.

Valor Mínimo: 1 Valor Máximo: 99 IMPORTANTE: ver los valores especiales usados en el "Programa Ahora"

transaction_currency_code*

str

Valor Permitido: 032

El Valor 032 corresponde a la moneda local de la República Argentina (ARS)

seller_descriptor*

str

Datos del Vendedor.

Esta descripción aparecerá en el resumen de cuenta del tarjeta-habiente.

Longitud máxima 25 caracteres. Caracteres aceptados: [A-Z];[0-9];[*]

El campo es de texto libre pero debe construirse bajo las siguientes condiciones:

Código asignado por EntradaUno * Nombre de Fantasía del Vendedor

is_scoring_required

boolean

Valores permitidos: true, false

max_risk_score

number

Valor Mínimo: 0 Valor Máximo: 99

is_payment_guaranteeable

boolean

Valores permitidos: true, false

{
    "status": 200,
    "message": "",
    "data": [
        {
            "request_id": "1022665110-f6167c62-ccb4-4dd9-a16a-17d45a5c9c00",
            "success": true,
            "pending": false,
            "message": null,
            "cycle": 3,
            "response": {
                "id": "85A9A047-A42B-43E3-9B6A-DEEFF28F0000",
                "approved": true,
                "seller_descriptor": "",
                "message": "APROBADA",
                "merchant_code": "00000001",
                "merchant_code_terminal": "00000001",
                "authorization": "002539",
                "ticket_number": "4193",
                "batch_number": "243",
                "transaction_amount": 1000,
                "capture_date": "0112",
                "account_number": "000000000060",
                "bin": "493715",
                "last_4_digits": "0000",
                "primary_account_token": "12000000-A082-4044-A082-00FFDEBB0000",
                "primary_account_token_auth": "6D0B61AB621960E77419E888XXXXXXXX",
                "validation_raw": "VTE0010",
                "validation": null
            },
            "fraud_detection": {
                "card_first_six": null,
                "card_last_four": null,
                "card_type_cd": null,
                "fraud_indicator": null,
                "is_payment_guaranteeable": null,
                "is_shadow_payment": null,
                "payment_guarantee_status": null,
                "paymentID": null,
                "payment_status": null,
                "permanent_token": null,
                "response_code": null,
                "response_text": null,
                "risk_decision_code": null,
                "risk_decision_dode_text": null,
                "risk_probability_index": null,
                "risk_score": null,
                "risk_system_decision": [
                    {
                        "description": null,
                        "risk_system_decision_cd": null
                    }
                ]
            }
        }
    ]
}

Ejemplo con Token V3

{ 
    "customer_transaction_identificator": "xxxxx_v3", 
    "oWEB": 
        { 
            "primary_account_number_first_six": "454545", 
            "primary_account_token": "12000000-A082-4044-A082-00FFDEBB0000", 
            "primary_account_token_auth": "6D0B61AB621960E77419E888XXXXXXXX" 
        }, 
    "card_holder": 
        { 
            "front_name": "Juan Lopez", 
            "birth_date": "01011990", 
            "email": "desa@midominio.com", 
            "telephone": 1132840000, 
            "document_type": "DNI", 
            "document_number": "99999", 
            "notification": false 
        }, 
    "purchase_list": [ 
        { 
            "merchant_code_group": "grupo", 
            "access_key_merchant_code_group": "xxxxxxx-xxxx-x-xxxxx", 
            "transaction_amount": 1000, 
            "installments_plan": 0, 
            "installments": 1, 
            "transaction_currency_code": "032", 
            "seller_descriptor": "TEST_V3" 
        } 
    ], 
    "is_scoring_required": false, 
    "max_risk_score": 0, 
    "is_payment_guaranteeable": false
}

Última actualización