• Francia
Back Office Vendedor
asistencia
FAQcontacte el soporte tecnico
Buscar
Categoria
Tags
Argentina
Argentina
Página principal
Casos de uso
Crear un pago
Crear un pago en cuotas
Crear un pago por token
Crear un enlace de pago
Crear una suscripción
Gestione sus suscripciones
Gestione sus transacciones
Analizar los diarios
Docs API
Formulario incrustado
API REST
API REST PCI-DSS
Formulario en redirección
Pago móvil
Intercambio de ficheros
Ejemplo de código
Módulos de pago
Guías Back Office

Casos de uso

Esta es una lista no exhaustiva de los casos de uso en los que se crea un formToken (al llamar al Web Service Charge/createPayment ).

Descripción
Transmitir el número de pedido
Transmitir los datos del comprador
Transmitir los datos de entrega
Transmisión del contenido del carrito
Modificar el monto en función del código BIN
Transmitir los datos del subvendedor
Ofrecer el registro del medio de pago
Utilizar un medio de pago registrado
Utilizar un medio de pago registrado sin mostrar el formulario incrustado
Transmitir la preferencia del vendedor
Aumentar la probabilidad de frictionless en 3DS2
Sobrecargar la URL de notificación instantánea
Transmitir datos personalizados
Cambiar el tipo de captura

Transmitir el número de pedido

Para transmitir el número de pedido, utilice el campo orderId :

{
    "orderId" : "CX-1254"
}

Transmitir los datos del comprador

El vendedor puede transmitir la dirección de facturación y los datos del comprador (dirección de e-mail, tratamiento, número de teléfono, etc.).

Estos datos son:

  • se muestran en el Back Office Vendedor, en la información de la transacción (pestaña Comprador ),
  • devueltos en la IPN, sin cambios.

Para ello, utilice el campo customer :

Ejemplo

{
    "customer": {
        "reference":"C2383333540",
        "email" : " <sample@example.net>",
        "billingDetails" : {
            "category" : "PRIVATE",
            "title" : "M",
            "firstName" : "Laurent",
            "lastName" : "DURANT",
            "streetNumber" : "109",
            "address" : "rue de l'innovation",
            "zipCode" : "31670",
            "city" : "LABEGE",
            "country" : "FR",
            "phoneNumber" : "0123456789",
            "cellPhoneNumber" :"0623456789"
        }
    }
}

Transmitir los datos de entrega

El vendedor puede transmitir los datos de entrega del comprador (dirección, civilidad, número de teléfono, etc.).

Estos datos son:

  • se muestran en el Back Office Vendedor, en la información de la transacción (pestaña Envío ),
  • devueltos en la IPN, sin cambios.

Ejemplo para una entrega de tipo “Retiro en tienda”

La dirección de envío corresponde a la de la tienda.

La dirección de facturación es distinta a la dirección de envío.

El nombre del destinatario es el mismo que el de la dirección de facturación.

{
    "customer": {
        "shippingDetails": {
            "shippingMethod": "RECLAIM_IN_SHOP",
            "shippingSpeed": "STANDARD",
            "streetNumber": "230",
            "address": "avenue des Champs Elysées",
            "zipCode": "59170",
            "city": "CROIX",
            "country": "FR",
            "firstName": "Marie-Charlotte",
            "lastName": "GRIMALDI",
            "phoneNumber": "0328386789"
        }
    }
}

Ejemplo para una entrega de tipo “punto de retiro”

La dirección de envío corresponde a la del punto de retiro.

El nombre del punto de retiro se indica en la segunda línea de la dirección de entrega.

Se transmite la dirección del punto de retiro en la primera línea de dirección de envío.

El nombre del destinatario es el mismo que el de la dirección de facturación.

La dirección de facturación es distinta a la dirección de envío.

{
    "customer": {
        "shippingDetails": {
            "shippingMethod": "RELAY_POINT",
            "shippingSpeed": "STANDARD",
            "streetNumber": "100",
            "address": "avenue du parc Barbieux",
      "address2": "Pressing du Parc",
            "zipCode": "59170",
            "city": "CROIX",
            "country": "FR",
            "firstName": "Martine",
            "lastName": "DURAND",
            "phoneNumber": "0328386789",
      "deliveryCompanyName":"Chronospost"
        }
    }
}

Transmisión del contenido del carrito

Al crear un pago, el vendedor puede transmitir el contenido del carrito del comprador.

Estos datos se muestran en el Back Office Vendedor, en la información de la transacción (pestaña Carrito ).

Para ello, utilice el campo cartItemInfo (tabla de objetos json) durante la llamada al Web Service Charge/CreatePayment.

Ejemplo para definir 2 artículos en el carrito

{
"customer": {

     "shoppingCart": {
       "cartItemInfo": [
       {
        "productRef": "myRef1",
        "productAmount": "1200",
        "productLabel": "myLabel1",
        "productQty" : "1"
       },
       {
        "productRef": "myRef2",
        "productAmount": "2400",
        "productLabel": "myLabel2",
        "productQty" : "1"
       }
       ]
     }
    }

}

Observaciones:

  • El campo cartItemInfo siempre se devuelve vacío en la respuesta.
  • Para que la pestaña Carrito se muestre correctamente en el Back Office Vendedor, debe trasmitir por lo menos el campo productAmount de cada producto.

Modificar el monto en función del código BIN

Vous pouvez modifier un montant à la baisse en fonction du code BIN.

Implémentez dans votre formulaire de paiement cette fonction KR.setBinUpdateNotificationUrl.

Cette fonction appelle un endpoint : V4/Charge/UpdatePaymentAmount pour modifier un montant.

Consulte el código en Github : Amount Update

Solicitud

Llame al endpoint: V4/Charge/UpdatePaymentAmount con los siguientes parámetros:

  • updatedAmount: Nuevo monto
  • cardBin: Código BIN
  • formToken:formTokencon el monto inicial
Ejemplo de solicitud

Campos obligatorios:

  • updatedAmount: $ 45,00.
  • cardBin:"59701003" pour une MASTERCARD
  • formToken:"00H7BP(...)ItbHlyYSJ9b802"
/doc/es-AR/rest/V4.0/api/kb/authentication.html
https://api.cobroinmediato.tech/api-payment/V4/Charge/UpdatePaymentAmount
  
      {
        "updatedAmount":"4500",
        "cardBin":"59701003",
        "formToken":"00H7BP(...)ItbHlyYSJ9b802"
      }

Respuesta

La plateforme crée un nouveau formToken avec le nouveau montant. Récupèrez le nouveau formToken pour afficher le formulaire de paiement (Plus d'infos : Afficher le formulaire).

{
    "answer": {
        "formToken": "00H7BPcbxFR(...)002",
        "_type": "V4/Charge/PaymentForm"
    }
}

Casos de uso

Utilice el código en Github modificando la variable $newPrice del archivo AmountUpdateCallback.php. (enlace de Github : Amount Update ).

  1. Disminución del monto con un valor fijo.

Ejemplo: Desea una disminución de 10,00 PEN para las tarjetas Mastercard (código BIN: 59701003) y una disminución de 5,00 PEN para las tarjetas AMEX (código BIN: 37828200).
Modifique el archivoAmountUpdateCallback.php.

/*Define new price*/
$newPrice = null;
switch($request['bin']) {
    // BIN MASTERCARD
    case '59701003':
        $newPrice = $request['amount']-1000;
        break;
     // BIN AMEX
    case '37828200':
        $newPrice = $request['amount']-500;
        break;
}
Ilustración para Mastercard
  1. Disminución del monto con un porcentaje.

Ejemplo: Desea un descuento del 50 % para una tarjeta Mastercard (código BIN: 59701003) y un descuento del 30 % para una tarjeta AMEX (código BIN: 37828200).
Modifique el archivoAmountUpdateCallback.php.

/*Define new price*/
$newPrice = null;
switch($request['bin']) {
    // BIN MASTERCARD
    case '59701003':
         $newPrice = $request['amount']*0.5;
        break;
    // BIN AMEX
    case '37828200':
         $newPrice = $request['amount']*0.3;
        break;
}
Ilustración para AMEX

  1. Pour un montant fixe. Valorisez la variable$newPricedu fichierAmountUpdateCallback.phpavec un montant fixe.

Transmitir los datos del subvendedor

El facilitador de pago puede transmitir los datos del subvendedor concernido por la transacción.

Estos datos serán:

  • se muestran en el Back Office Vendedor, en la información de la transacción (pestaña Subvendedor ),
  • devueltos en la IPN, sin cambios.

Los campos son obligatorios a partir de que al menos un campo del sub-comercio está presente en el formulario de pago (los campos subMerchantDetails" ).

Para los pagos en Argentina, los siguientes campos de datos del subvendedor (los campos subMerchantDetails) son obligatorios.

La tabla describe los campos comunes disponibles con la información del subvendedor.

Nombre del campo Formato Descripción
subMerchantDetails.address1 ans..255 Dirección del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.address2 ans..255 Complemento de la dirección del subvendedor. Transmitido por el facilitador de pagos.
subMerchantDetails.city an..128 Ciudad del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.companyType ans..60 Tipo de empresa del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.country a2 Código del país de la dirección del subvendedor (norma ISO 3166 alpha-2). Transmitido por el facilitador de pago.
subMerchantDetails.facilitatorId ans..128 Identificador del facilitador de pago. Transmitido por el facilitador de pago.
subMerchantDetails.legalNumber ans..24 Número legal del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.mcc n4 Código MCC del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.mid n..64 Número de afiliación (MID) del subvendedor.Transmitido por el facilitador de pago.
subMerchantDetails.name ans..255 Razón social del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.phoneNumber an..32 Número de teléfono del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.softDescriptor ans..255 Descripción (soft descriptor) del subvendedor que aparece en el extracto bancario del comprador. Transmitido por el facilitador del pago.
subMerchantDetails.state ans..128 Región de la dirección del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.url ans..128 URL del subvendedor. Transmitido por el facilitador de pago.
subMerchantDetails.zip an..64 Código postal del subvendedor. Transmitido por el facilitador de pago.

Ofrecer el registro del medio de pago

El vendedor puede ofrecer al comprador la posibilidad de facilitar sus compras solicitando el registro de sus datos bancarios en la plataforma de pago.

Gracias a esta operación, la plataforma de pago asigna un token único al medio de pago y lo devuelve al sitio web comercial en el campo paymentMethodToken.

De esta manera, el comprador ya no necesitará ingresar su medio de pago en sus futuras compras.

Esta solución brinda un nivel adicional de seguridad a los pagos, ya que transita únicamente el token que solo puede ser utilizado por la plataforma de pago.

Para ofrecer al comprador que registre su modo de pago al momento del pago, utilice el campo formAction con el valor ASK_REGISTER_PAY

{
    "formAction" : "ASK_REGISTER_PAY",
    "customer": {
        "email": " <sample@example.net>"
    }
}

Nota

El campo email se vuelve obligatorio al registrar el medio de pago.

Cuando se muestre el formulario, aparecerá una casilla de control.

De forma predeterminada, esta casilla no está marcada.

Si el comprador acepta el registro de su medio de pago, debe marcar la casilla.

Si el pago es rechazado, no se registrará el medio de pago.

Forzar el registro del medio de pago

Si el vendedor ha notificado al comprador en un paso previo del proceso de compra, puede "forzar" el registro del medio de pago sin mostrar una casilla adicional.

Para hacerlo, utilice el campo formAction con el valor REGISTER_PAY :

{
    "formAction" : "REGISTER_PAY",
    "customer": {
  "email": " <sample@example.net>"
    }
}

Utilizar un medio de pago registrado

El vendedor puede transmitir el token que se debitará al inicializarse el pago.

Cuando se muestra el formulario, los campos kr-pan y kr-expiry se rellenan automáticamente. El comprador solo debe introducir su código de seguridad (CVV) para finalizar la compra.

Para ello, simplemente transmita el token a debitar en el campo paymentMethodToken y asigne al campo formAction el valor PAYMENT.

Dado que este valor es el valor predeterminado, el campo formAction ya no es necesario.

{
    "formAction" : "PAYMENT",
    "paymentMethodToken":"d3d9cc0d24a4400e9d123e9e1b8f1793",
}

Utilizar un medio de pago registrado sin mostrar el formulario incrustado

Este modo permite crear una transacción sin mostrar el formulario de pago y sin autentificación (llamada de servidor a servidor).

{
    "formAction" : "SILENT",
    "paymentMethodToken":"d3d9cc0d24a4400e9d123e9e1b8f1793",
}

Sin autentificación, el vendedor no está protegido ante el riesgo de fraude ni en caso de disputa del titular de la tarjeta.

Nota

  • Este caso de uso no utiliza el cliente JavaScript, sino solo una llamada de servidor a servidor. No hay redirección hacia la URL de retorno indicada en kr-post-url-success.
  • La respuesta no contiene un formToken , sino directamente un objeto Transaction.
  • Utilice la referencia de encadenamiento en el campoinitialIssuerTransactionIdentifier, si esta está ausente, los emisores pueden rechazar la transacción.("Soft Decline").
  • Ver: Paiement 0 clic

Transmitir la preferencia del vendedor

Utilisez le champ strongAuthentication (lien vers le playground : strongAuthentication).

Ce champ indique la préférence du marchand au sujet de l'authentification de l'acheteur.

  • Sin interacción del titular ( frictionless ).
  • Con interacción del titular (autentificación fuerte o challenge ).
  • Sin preferencia del vendedor.

Siempre es el emisor quien decide el modo de autentificación del comprador.

Casos de uso Valores posibles
CHALLENGE : Con interacción del titular
  • ENABLED : Valor obsoleto
  • CHALLENGE_REQUESTED : Permite solicitar una autenticación fuerte para la transacción.
  • CHALLENGE_MANDATE : Permite solicitar una autenticación fuerte para la transacción por razones reglamentarias.
FRICTIONLESSSin interacción del titular

Opción "Frictionless 3DS2" obligatoria

  • DISABLED: Permite solicitaruna exenciónde autenticación fuerte.

    Si la tienda no dispone de la opción "Frictionless 3DS2", la elección de preferencia se delega al emisor de la tarjeta (No Preference).

    Si el emisor acepta la solicitud de frictionless, la transacción no está cubierta por la transferencia de responsabilidad en caso de disputa del titular de de tarjeta.

    Sin preferencia del vendedor
    • NO_PREFERENCE : Indica al DS que el vendedor no tiene preferencia. El pago quedará garantizado si el emisor decide realizar una autenticación sin interacción (frictionless).
    • AUTO : Se delega la elección de la preferencia al emisor de la tarjeta (No Preference).

    Aumentar la probabilidad de frictionless en 3DS2

    Transmita estos datos para aumentar la probabilidad de frictionless durante el pago.

    El uso de estos campos es opcional. En todos los casos, el banco emisor es quien decide si se debe realizar una autentificación fuerte.

    Lista de campos a enviar

    CARACTERÍSTICAS Descripción
    customer.email E-mail del comprador.
    customer.billingDetails.identityCode Identificación nacional. Identifica de manera única a cada ciudadano en un país. CPF o CNPJ en Brasil.
    customer.billingDetails.streetNumber Número de calle de la dirección de facturación
    customer.billingDetails.address Dirección postal
    customer.billingDetails.address2 Segunda línea de dirección
    customer.billingDetails.zipCode Código Postal
    customer.billingDetails.city Ciudad
    customer.billingDetails.state Estado / región
    customer.billingDetails.country Código del país según ISO 3166 alpha-2
    customer.billingDetails.phoneNumber Número de teléfono
    customer.billingDetails.cellPhoneNumber Número de teléfono móvil
    customer.shippingDetails.address Dirección postal
    customer.shippingDetails.address2 Segunda línea de dirección
    customer.shippingDetails.zipCode Código Postal
    customer.shippingDetails.city Ciudad
    customer.shippingDetails.state Estado / región
    customer.shippingDetails.country Código del país según ISO 3166
    customer.shippingDetails.shippingMethod Modo de entrega.
    customer.shippingDetails.shippingSpeed Plazo de entrega.

    Transmitir datos personalizados

    Al crear un pago, el vendedor puede enviar información específica a la plataforma de pago para atender necesidades específicas de su negocio.

    Por ejemplo, transmitir un número de archivo, un número de contrato, etc.

    Esta información será:

    • se muestran en el Back Office Vendedor, en la información de la transacción (pestaña Extras ),
    • visibles en el e-mail de confirmación de pago destinado al vendedor,
    • devueltas en la URL de notificación, sin cambios.

    Para ello, utilice los campos metadata (en formato json) durante la llamada al Web Service Charge/CreatePayment :

    Ejemplo para transmitir un elemento de datos llamado “contract” y su valor:

    {
    "metadata": {
    "contract": "1245KL-78/ZE"
    }
    }

    Sobrecargar la URL de notificación instantánea (desaconsejado)

    Puede sobrescribir la URL de notificación instantánea (también llamada IPN) en el formulario si utiliza una única tienda para diferentes canales de venta, diferentes tipos de pago, diferentes idiomas, etc.

    Esta función es incompatible con la ejecución desde el Back Office Vendedor de la solicitud enviada a la URL de notificación instantánea.

    Se llamará a la URL definida en la regla de notificación (consulte el capítulo Configurar las notificaciones).

    Utilice el campo ipnTargetUrl al inicializar el pago para sobrescribir la URL de la página que se notifica.

    Si el valor del campo vads_shop_url es incorrecto, el formulario no será rechazado.

    {
        "ipnTargetUrl" : "<https://my.site/my-ipn>",
    }

    Cambiar el tipo de captura

    Esta característica no se puede usar en Colombia.

    La plataforma de pago asocia un modo de captura predeterminado con el contrato del adquirente (MID): captura inmediata o captura diferida.

    Si el adquirente lo autoriza, el sitio web vendedoro tiene la posibilidad de forzar el tipo de captura a utilizar.

    Para ello, utilice el campo overridePaymentCinematic de la siguiente manera:

    Captura inmediata

    {
       "overridePaymentCinematic": "IMMEDIATE_CAPTURE"
    }

    Captura diferida

    {
       "overridePaymentCinematic": "DELAYED_CAPTURE"
    }

    Por defecto se aplica el valor configurado en el contrato.

    © 2025 Todos los derechos reservados de Cobro Inmediato
    25.17-1.11