CyberSource

Credenciales requeridas#

Como se menciona en el capítulo sobre ["Descripción general: credenciales requeridas"] (integracao-solucoes-antifraude-fluxo#credenciais-necessarias), cada institución tiene un conjunto de credenciales que deben obtenerse para la integración. Los servicios de CyberSource requieren las siguientes credenciales:

  • Merchant ID (Merchant Code) - Clave de usuario del comerciante en el portal CyberSource
  • Shared Secret - Clave de comerciante en CyberSource Portal. Si no se informa la clave de registro, el Portal Carat no realizará una consulta de estado en CyberSource. Esto significa que si hay algún análisis de riesgo pendiente, se activará la decisión registrada por el comerciante en el Portal, confirmando o deshaciendo la transacción.
  • Key ID: ID que identifica el Shared Secret.
  • Org ID: clave utilizada para recopilar datos de fingerprint do browser del comprador.
  • Certificado p12: certificado de seguridad necesario para del análisis del pedido. Este archivo debe tener el nombre de Merchant ID / integrador en el sistema CyberSource.
  • p12 Contraseña del certificado - Contraseña del certificado p12. Definido en el portal CyberSource.

IMPORTANTE: Las credenciales anteriores deben obtenerse de CyberSource. El comerciante debe comunicarse con CyberSource y recibir la orientación adecuada sobre cómo obtener cada una de estas credenciales. Después de obtener las credenciales, el comerciante debe comunicarse con el soporte del Portal Carat y pasar las credenciales para registrarse en Portal Carat.

Para obtener el Shared Secret y la Key ID siga las instrucciones en:

https://developer.cybersource.com/api/developer-guides/dita-gettingstarted/authentication/createSharedKey.html

Para obtener el Certificado .p12, siga las pautas en:

https://support.cybersource.com/s/article/How-to-Generate-a-Simple-Order-API-Security-Key

Configuración de URL de webhook#

Para que podamos recibir actualizaciones de estado para las transacciones de análisis de riesgo que están en análisis manual, es necesario configurar la URL de Webhook en el entorno de configuración de Cybersource.

URL de producción:

https://prod.api.fiservapps.com/esitef-cybersource/processarPost.se?src=cybersource

URL de aprobación:

https://prod.api.fiservapps.com/esitef-hml-cybersource/processarPost.se?src=cybersource

Esta URL debe configurarse para cualquier intercambio de estado. Para realizar esta configuración, comuníquese con el Soporte de Cybersource.

Funciones compatibles#

marcas de tarjetas permitidas#

A continuación se muestran las marcas de tarjetas admitidas en los análisis de CyberSource:

  • Visa
  • MasterCard
  • American Express
  • Discover
  • Diners Club
  • Carte Blanche
  • JCB
  • EnRoute
  • JAL
  • Delta
  • Dankort
  • Laser
  • Carte Bleue
  • Carta Si
  • Encoded account number
  • UATP
  • GE Money UK card
  • Style
  • Hipercard
  • Aura
  • Elo
  • Elo Débito (Auxílio Emergencial)

Aviso de cancelación por fraude#

Al cancelar un pago por fraude, es posible notificar a CyberSource sobre lo sucedido y marcar la transacción como fraudulenta, mejorando consecuentemente el análisis de riesgos.

Actualmente, solo la interfaz Cancelar REST puede enviar los datos complementarios a CyberSource. Para ello es necesario enviar los siguientes campos:

CampoDescripción
anti_fraud Objeto con campos antifraude.
chargebackInforma si el aviso a CyberSource se dará o no.
Valores permitidos: true o false
Valor default: false
marked_dataInforma qué campos serán relevantes para notificar a CyberSource que esta transacción fue un intento de fraude.

Este campo recibe una lista de valores. Por ejemplo: "marked_data": ["ship_address","customer_phone","customer_email"].

Campos que podem ser informados:
  • account_key_hash
  • customer_account_id
  • customer_email
  • customer_idaddress
  • customer_phone
  • device_fingerprint
  • ship_address
Si no se informa ningún valor, los siguientes campos asumidos por el CyberSource: account_key_hash, customer_email y ship_address.

Ejemplo:

curl
--request PUT "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/cancellations/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"security_code":"123",
"number":"5555555555555555",
"expiry_date":"1222"
},
"amount":"1000",
"anti_fraud":{
"chargeback":"true",
"marked_data":[
"account_key_hash",
"customer_account_id",
"customer_email"
]
}
}
--verbose

Parámetros antifraude de CyberSource#

A continuación se muestra la lista de parámetros antifraude procesados ​​por CyberSource. Algunos parámetros tienen diferentes tratamientos según la institución y la columna "Detalles adicionales" especifica el tratamiento especial de CyberSource. Para obtener detalles de cada parámetro, consulte la [lista de parámetros antifraude] (integracao-solucoes-antifraude-servico-analise-risco-interface-html.md#parametros-de-anti-fraude)

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
currencyPurchaseTotals_currency-
itemsArrays de objeto json (Saiba mais)
payerArrays de objeto json (Saiba mais)
Solo presente en llamadas REST
shipmentArray de objeto json (Saiba mais)
billing_dataArray de objeto json (Saiba mais)
Si se informa, tendrá prioridad sobre los datos que también se informan en el payer
browserObjeto json (Saiba mais)
travelObjeto json (Saiba mais). Obrigatório si el íten es una pasaje aérea
passengersArray de objeto json (Saiba mais)
connectionsArray de objeto json (Saiba mais)
mddArray de objeto json (Saiba mais). Los valores permitidos se pueden encontrar aqui.

Objeto items#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adiccional
idItem_#_IDString con contenido numérico
skuItem _ # _ productSKUcompletar obligatoriamente
titleItem_#_productName-
quantityItem_#_Quantity-
unit_priceItem_#_unitPricecompletar obligatoriamente
category_idItem_#_productCodePude recibir los siguintes valores:
  • adult_content
  • default
  • electronic_good
  • electronic_software
  • gift_certificate
  • handling_only
  • service
  • shipping_and_handling
  • shipping_only
  • stored_value
  • subscription
. completar obligatoriamente.

Cuando el valor enviado es diferente de default, los campositem_#_quantity; item_#_productName y item_#_productSKU se vuelven obligatorios;
tax_amountItem_#_taxAmount-

Objeto payer#

Nota: Sólo presente en llamadas REST

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
namebillTo_firstName-
surnamebillTo_lastName-
emailbillTo_email-
addressObjeto json (Más información)
phonesArray de objeto json (Más información)
documentsArray de objeto json (Más información)

Objeto address del payer#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
street_name + street_numberstreet1-
complementbillTo_street2-
citybillTo_city-
statebillTo_state-
zip_codebillTo_postalCode-
countrybillTo_country-

Objeto phones del payer#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
ddi + ddd + numberphoneNumber-

Objeto documents del payer#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
numberbillTo_customerID-
numberbillTo_personalID-

Objeto shipment#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
nameshipTo_firstName-
surnameshipTo_lastName-
addressObjeto json (Más información)
phonesArrays de objeto json (Más información)

Objeto address do shipment#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
street_nameshipto_street1Envíe el número y el complemento. Recuerda poner AP, APTO, LOTE, CASA ou BLOQUE.
street_name2shipto_street2Envíe el número y el complemento. Recuerda poner AP, APTO, LOTE, CASA ou BLOQUE.
street_numbershipto_street1-
apartmentSerá concatenado en shipto_street2-
complementSerá concatenado en shipto_street2-
cityshipto_city-
stateshipto_state-
countryshipto_countryEnviar la sigla en el padrão ISO
zip_codeshipto_postalCode-
building_numbershipto_building_number-

Objeto phones del shipment#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
ddishipTo_phoneNumber-
dddshipTo_phoneNumber-
numbershipTo_phoneNumber-

Objeto billing_data#

Nota: Si se informa, prevalecerá sobre los datos que también se informan en el payer.

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
addressObjeto json (Saiba mais)
phonesArrays de objeto json (Saiba mais)

Objeto address del billing_data#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
street_namebillTo_street1Envíe el número y el complemento. Recuerda poner AP, APTO, LOTE, CASA ou BLOQUE.
street_name2billTo_street2Envíe el número y el complemento. Recuerda poner AP, APTO, LOTE, CASA ou BLOQUE.
street_numberbillTo_street1-
apartmentSerá concatenado en billTo_street2-
complementSerá concatenado en billTo_street2-
citybillTo_city-
statebillTo_state-
countrybillTo_countryEnviar la sigla en el padrão ISO
zip_codebillTo_postalCode-

Objeto phones del#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
ddibillTo_phoneNumber-
dddbillTo_phoneNumber-
numberbillTo_phoneNumber-

Objeto browser#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
ip_addressbillTo_ipAddressSi este campo no fue enviado, será enviado o IP del cliente

Objeto travel#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
routedecisionManager_travelData_completeRoute-
journey_typedecisionManager_travelData_journeyType-
departure_date_timedecisionManager_travelData_journeyType-

Objeto passengers#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
iditem_#_passengerId-
nameitem_#_passengerFirstNameCompletar sólo con el primer nombre
last_nameitem_#_passengerLastNameCompletar obligatoriamente
frequente_flyer_carditem_#_passengerIDEl campo billTocustomerID puede contener la misma información
emailitem_#_passengerEmailSi no es único entre los pasajeros, la transacción será rechazada por CyberSource, con el código 102.
statusitem_#_passengerStatus-
typeitem_#_passengerType-
unit_priceitem_#_unitPrice-
phonesArrays de objeto json (Saiba mais)

Objeto phones del passengers#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
ddiitem_#_passengerPhone-
ddditem_#_passengerPhone-
numberitem_#_passengerPhone-

Objeto connections#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
flight_datedecisionManager_travelData_departureDateTimeSe aceptan los siguientes formatos:
  • yyyy-MM-dd HH:mm z
  • yyyy-MM-dd hh:mm a z
  • yyyy-MM-dd hh:mma z
Sendo:
  • HH = hora en formato de 24 horas
  • hh = hora en 24- formato de hora 12 horas
  • a = am ou pm (case insensitive)
  • z = timezone del vuelo de salida (en caso de compensación con respecto a GMT, siga este formato: GMT- 03:00
fromdecisionManager_travelData_leg _ # _ originEl valor debe respetar los códigos de este aeropuerto, [de esta referencia] (http://www.iata.org/publications/Pages/code-search.aspx).
todecisionManager_travelData_leg _ # _ destinationEl valor debe respetar los códigos de este aeropuerto, [de esta referencia] (http://www.iata.org/publications/Pages/code-search.aspx). También es posible considerar la ruta completa con el campo decisionManager_travelData_completeRoute. Si se envían todos estos campos, el valor de completeRoute tendrá prioridad.
salida_fechadecisionManager_travelData_departureDateTime-

Objeto mdd#

Propiedades
Portal Carat
Propiedades
CyberSource
Detalle adicional
idmerchantDefinedData_mddField_idPode variar de 1 a 100 definidos pelo comércio em acordo com a Cybersource
valuemerchantDefinedData_mddField_valueValor dos campos definidos pelo comércio em acordo com a Cybersource

Valores de mdd#

Los MDD's são dados adicionais que ajudam na acertividade da análise antifraude da Cybersource e o envio deles é altamente recomendado. Existem três intervalos de ID de MDD's:

  • Entre 1 hasta 4, son "MDD" que se completarán mediante el Portal Carat
  • Entre 5 hasta 20 son "MDD" independientes de la actividad de la tienda.
  • Entre 21 hasta 1000, son "MDD" dependientes de la actividad de la tienda y el llenado debe seguir las pautas de Cybersource. Los valores permitidos de id y la descripción del contenido del value son:
IDResumenDescripción
5Canal de ventasCanal de venta de productos / servicios. Ejemplo de valor: Web, App, Guiche, etc.)
6SOSistema operativo utilizado por el cliente final. Ejemplo de valor: Android, iOS, Windows, etc.
7Versión de la aplicaciónVersión de la aplicación cliente. Ejemplo de valor: 1.0.12
8Aprovisionado para datos futurosAprovisionado para datos futuros.
9Aprovisionado para datos futurosAprovisionado para datos futuros.
10Aprovisionado para datos futurosAprovisionado para datos futuros.
11Nombre utilizado en el registroNombre registrado en el registro (Nota: en caso de compra de guest, no enviar valor)
12CPF utilizado en el registroCPF inscrito en el registro.
13Tiempo de registro del cliente en díasTiempo de registro del cliente en días. Formato: NNNNN
14Días desde el primer pedidoNúmero de días transcurridos desde el primer pedido. Formato: NNNNN
15Días desde el último pedidoNúmero de días transcurridos desde el último pedido. Formato: NNNNN
16Cantidad total de pedidosNúmero total de pedidos realizados por el CPF registrado. Formato: NNNNN
17Días desde el último cambio de registroNúmero de días transcurridos desde el último cambio de registro. Formato: NNNNN
18Aprovisionado para datos futurosAprovisionado para datos futuros.
19Aprovisionado para datos futurosAprovisionado para datos futuros.
20Aprovisionado para datos futurosAprovisionado para datos futuros.

ATENCIÓN: Los parámetros que existan en payer, billing y shipping cuando no se pasen en el servicio de creación de transacciones a través de additional_data, serán solicitados en la pantalla de pago. Si los parámetros se pasan en el servicio de creación de transacciones, no se le pedirá que complete los campos en la pantalla de pago.

Ejemplo#

Ejemplo de pago request HTML con análisis de riesgo en CyberSource:

{
"merchant_id": "CYBERSRCPERMI1",
"order_id": "1629744599356",
"amount": "1000",
"transaction_type": "payment",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "21800",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"items": [
{
"id": "1",
"title": "bola 1",
"quantity": "1",
"unit_price": "50000",
"category_id": "others",
"sku": "123"
},
{
"id": "2",
"title": "bola 2",
"quantity": "2",
"unit_price": "25000",
"category_id": "others",
"sku": "124"
}
],
"payer": {
"name": "Joaquim",
"surname": "Severino",
"email": "allison@confiavel.com",
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
],
"documents": [
{
"type": "CPF",
"number": "09719224703"
}
],
"address": {
"zip_code": "02932900",
"street_number": "123",
"street_name": "rua bill",
"city": "sao paulo",
"state": "SP",
"country": "BR",
"complement": "complemento"
}
},
"shipment": {
"name": "Joao",
"surname": "Silva Ship",
"address": {
"zip_code": "12345678",
"street_number": "Rua do Exemplo",
"street_name": "123",
"apartment": "901",
"city": "São Paulo",
"complement": "Sobreloja 3",
"country": "BR",
"state": "SP"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"browser": {
"ip_address": "200.162.232.200"
},
"mdd": [
{
"id": "5",
"value": "Gichê"
},
{
"id": "6",
"value": "Linux"
}
]
}
}

Ejemplos REST#

Ejemplo 1#

Ejemplo de request de pago con análisis de riesgo en CyberSource destacando "Items":

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/transactions' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_usn": "11063843776",
"order_id": "1629828190786",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "9700",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"items": [
{
"id": "1",
"title": "bola 1",
"quantity": "1",
"unit_price": "50000",
"category_id": "others",
"sku": "123"
},
{
"id": "2",
"title": "bola 2",
"quantity": "2",
"unit_price": "25000",
"category_id": "others",
"sku": "124"
}
],
"payer": {
"name": "Joaquim",
"surname": "Severino",
"email": "allison@confiavel.com",
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
],
"documents": [
{
"type": "CPF",
"number": "09719224703"
}
],
"address": {
"zip_code": "02932900",
"street_number": "123",
"street_name": "rua bill",
"city": "sao paulo",
"state": "SP",
"country": "BR",
"complement": "complemento"
}
},
"shipment": {
"name": "Joao",
"surname": "Silva Ship",
"address": {
"zip_code": "12345678",
"street_number": "Rua do Exemplo",
"street_name": "123",
"apartment": "901",
"city": "São Paulo",
"complement": "Sobreloja 3",
"country": "BR",
"state": "SP"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"browser": {
"ip_address": "200.162.232.200"
}
}
}'

Ejemplo de Response de pago con análisis de riesgo en CyberSource destacando "Items":

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"status": "NOV",
"nit": "<nit>",
"order_id": "1629828190786",
"merchant_usn": "11063843776",
"amount": "9700"
}
}

Ejemplo de la request de ejecución del pago REST con análisis de riesgo en CyberSource destacando "Items":

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/<nit>' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"card": {
"number": "455182001234512345",
"expiry_date": "1122",
"security_code": "123",
"holder": "Abdul Natchos"
}
}'

Ejemplo de response del pago REST con análisis de riesgo en CyberSource destacando el "Items":

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"authorizer_code": "000",
"authorizer_message": "Transacao OK!",
"status": "CON",
"nit": "<nit>",
"order_id": "1629828190786",
"customer_receipt": "...",
"merchant_receipt": "...",
"authorizer_id": "2",
"acquirer_id": "125",
"acquirer_name": "Cielo",
"authorizer_date": "14/07/2021T12:33",
"authorization_number": "145622",
"merchant_usn": "11063843776",
"esitef_usn": "210714076044700",
"sitef_usn": "145622",
"host_usn": "000145622 ",
"amount": "9700",
"payment_type": "C",
"issuer": "1",
"authorizer_merchant_id": "020000080750001",
"terminal_id": "ES000045",
"payment_date": "14/07/2021T12:33",
"analysis": {
"status": "ACC",
"code": "100",
"message": "ACCEPT | Score: 88"
}
}
}

Ejemplo 2#

Ejemplo de request sistema de pago con análisis de riesgo en CyberSource destacando el "Items" e "passenger":

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/transactions' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_usn": "11063843776",
"order_id": "1629828190787",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "52912",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"anti_fraud_criteria": "ON_SUCCESS",
"items": [
{
"title": "bola 1",
"quantity": "1",
"unit_price": "50000",
"tax_amount": "25",
"category_id": "default",
"id": "1",
"sku": "1234"
},
{
"title": "bola 2",
"quantity": "1",
"unit_price": "50000",
"tax_amount": "25",
"category_id": "default",
"id": "0",
"sku": "2552"
}
],
"payer": {
"name": "Joaquim",
"surname": "Silva Severino",
"email": "joaquin@exemplo.com",
"address": {
"zip_code": "01107001",
"street_number": "123",
"street_name": "Rua Augusta",
"apartment": "69",
"complement": "Ao lado do hotel",
"city": "São Paulo",
"state": "SP",
"country": "br"
},
"phones": [
{
"number": "998844551",
"ddd": "11",
"ddi": "55"
}
],
"documents": [
{
"type": "cpf",
"number": "68408639307"
}
]
},
"shipment": {
"type": "1",
"cost": "2000",
"name": "Joaquim",
"surname": "Silva",
"address": {
"zip_code": "12345678",
"street_number": "123",
"street_name": "Rua do Exemplo",
"complement": "CASA",
"city": "São Paulo",
"state": "SP",
"country": "br",
"county": "jardins"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"passengers": [
{
"id": "3354688841",
"name": "Joaquim",
"last_name": "Severino",
"email": "allison@confiavel.com",
"customer_class": "standard",
"unit_price": "100000",
"type": "ADT",
"phone": {
"number": "998844551",
"ddd": "11",
"ddi": "55"
}
}
],
"mdd": [
{
"id": "5",
"value": "Gichê"
},
{
"id": "6",
"value": "Linux"
}
],
"travel": {
"route": "GIG-SFO:SFO-LAX",
"departure_date_time": "2019-12-19T09:00:00",
"journey_type": "Round_Trip"
},
"browser": {
"ip_address": "200.162.232.200"
}
}
}'

Ejemplo de response de pago REST con análisis de riesgo en CyberSource destacando el "Items" e "passenger":

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"status": "NOV",
"nit": "<nit>",
"order_id": "1629828190787",
"merchant_usn": "11063843776",
"amount": "33012"
}
}

Ejemplo de request de ejecución del pago REST con análisis de riesgo en CyberSource destacando el "Items" e "passenger":

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/<nit>' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"card": {
"number": "455182001234512345",
"expiry_date": "1122",
"security_code": "123",
"holder": "Joaquim S Severino"
}
}'

Ejemplo de response de ejecución del pago REST con análisis de riesgo en CyberSource destacando el "Items" e "passenger":

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"authorizer_code": "000",
"authorizer_message": "Transacao OK!",
"status": "CON",
"nit": "<nit>",
"order_id": "1629828190787",
"customer_receipt": "...",
"merchant_receipt": "...",
"authorizer_id": "2",
"acquirer_id": "125",
"acquirer_name": "Cielo",
"authorizer_date": "14/07/2021T12:00",
"authorization_number": "145487",
"merchant_usn": "11063843776",
"esitef_usn": "210714076041520",
"sitef_usn": "145487",
"host_usn": "000145487 ",
"amount": "33012",
"payment_type": "C",
"issuer": "1",
"authorizer_merchant_id": "020000080750001",
"terminal_id": "ES000085",
"payment_date": "14/07/2021T12:00",
"analysis": {
"status": "ACC",
"code": "100",
"message": "ACCEPT | Score: 90"
}
}
}

Ejemplo 3#

Ejemplo de Request Review usando simulador

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/transactions' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_usn": "11063843776",
"order_id": "1627061279316",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "19612",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"payer": {
"name": "Joaquim",
"surname": "Severino",
"email": "allison@confiavel.com",
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
],
"documents": [
{
"type": "CPF",
"number": "09719224703"
}
],
"address": {
"zip_code": "02932900",
"street_number": "123",
"street_name": "rua bill",
"city": "sao paulo",
"state": "SP",
"country": "BR",
"complement": "complemento"
}
},
"shipment": {
"name": "Joao",
"surname": "Silva Ship",
"address": {
"zip_code": "12345678",
"street_number": "Rua do Exemplo",
"street_name": "123",
"apartment": "901",
"city": "São Paulo",
"complement": "Sobreloja 3",
"country": "BR",
"state": "SP"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"browser": {
"ip_address": "200.162.232.200"
}
}
}'

Ejemplo de response da Review usando simulador

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"status": "NOV",
"nit": "<nit>",
"order_id": "1627061274344",
"merchant_usn": "11063843776",
"amount": "26312"
}
}

Ejemplo de Request Para ejecutar el pago de la Review usando simulador

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/<nit>' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"card": {
"number": "455182001234512345",
"expiry_date": "1122",
"security_code": "123"
}
}'

Ejemplo de Response de la acción de ejecutar el pago de la Review usando simulador

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"authorizer_code": "000",
"authorizer_message": "Transacao OK!",
"status": "PPC",
"nit": "<nit>",
"order_id": "1627061274344",
"customer_receipt": "...",
"merchant_receipt": "...",
"authorizer_id": "2",
"acquirer_id": "125",
"acquirer_name": "Cielo",
"authorizer_date": "23/07/2021T14:28",
"authorization_number": "235179",
"merchant_usn": "11063843776",
"esitef_usn": "210723076775210",
"sitef_usn": "235179",
"host_usn": "000235179 ",
"amount": "26312",
"payment_type": "C",
"issuer": "1",
"authorizer_merchant_id": "020000080750001",
"terminal_id": "ES000011",
"payment_date": "23/07/2021T14:28",
"analysis": {
"status": "REV",
"code": "100",
"message": "REVIEW | Score: 0"
}
}
}

Ejemplo 4#

Ejemplo de Request para Reject usando simulador

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/transactions' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_usn": "11063843776",
"order_id": "1627061470845",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "82513",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"payer": {
"name": "Joaquim",
"surname": "Severino",
"email": "allison@confiavel.com",
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
],
"documents": [
{
"type": "CPF",
"number": "09719224703"
}
],
"address": {
"zip_code": "02932900",
"street_number": "123",
"street_name": "rua bill",
"city": "sao paulo",
"state": "SP",
"country": "BR",
"complement": "complemento"
}
},
"shipment": {
"name": "Joao",
"surname": "Silva Ship",
"address": {
"zip_code": "12345678",
"street_number": "Rua do Exemplo",
"street_name": "123",
"apartment": "901",
"city": "São Paulo",
"complement": "Sobreloja 3",
"country": "BR",
"state": "SP"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"browser": {
"ip_address": "200.162.232.200"
}
}
}'

Ejemplo de Response para Reject usando simulador

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"status": "NOV",
"nit": "<nit>",
"order_id": "1627061470845",
"merchant_usn": "11063843776",
"amount": "82513"
}
}

Ejemplo de Request de ejecución de pago para Reject usando simulador

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/<nit>' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"card": {
"number": "455182001234512345",
"expiry_date": "1122",
"security_code": "123"
}
}'

Ejemplo de response de ejecución de pago para Reject usando simulador

{
"code": "998",
"message": "Denied by antifraud",
"payment": {
"authorizer_code": "100",
"status": "NEG",
"nit": "<nit>",
"analysis": {
"status": "REJ",
"code": "100",
"message": "REJECT | Score: 0"
}
}
}

Ejemplo 5#

Ejemplo de Request con Item Id inválido

curl --location --request POST 'https://esitef-homologacao.softwareexpress.com.br/api/v1/transactions' \
--header 'merchant_id: xxxxxxxxxxxxxxxxx' \
--header 'merchant_key: xxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_usn": "11063843776",
"order_id": "1627062021650",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2",
"amount": "21800",
"additional_data": {
"anti_fraud": "enabled_before_auth",
"items": [
{
"id": "1",
"title": "bola 1",
"quantity": "1",
"unit_price": "50000",
"category_id": "others",
"sku": "123"
},
{
"id": "2A",
"title": "bola 2",
"quantity": "2",
"unit_price": "25000",
"category_id": "others",
"sku": "124"
}
],
"payer": {
"name": "Joaquim",
"surname": "Severino",
"email": "allison@confiavel.com",
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
],
"documents": [
{
"type": "CPF",
"number": "09719224703"
}
],
"address": {
"zip_code": "02932900",
"street_number": "123",
"street_name": "rua bill",
"city": "sao paulo",
"state": "SP",
"country": "BR",
"complement": "complemento"
}
},
"shipment": {
"name": "Joao",
"surname": "Silva Ship",
"address": {
"zip_code": "12345678",
"street_number": "Rua do Exemplo",
"street_name": "123",
"apartment": "901",
"city": "São Paulo",
"complement": "Sobreloja 3",
"country": "BR",
"state": "SP"
},
"phones": [
{
"number": "123123123",
"ddd": "11",
"ddi": "34"
}
]
},
"browser": {
"ip_address": "200.162.232.200"
}
}
}'

Ejemplo de Response con Item Id inválido

{
"code": "350",
"message": "invalid item id value",
"payment": {
"status": "INV",
"nit": "<nit>",
"order_id": "1627062021650",
"merchant_usn": "11063843776",
"amount": "21800"
}
}

Lista de códigos de retorno#

Como se explica en el capítulo ["Retorno del análisis de riesgos"] (integracao-solucoes-antifraude-retorno-analise-risco.md), los códigos siguientes son respuestas específicas de CyberSource.

CódigoDescripción
100Transacción exitosa y aprobada por Decision Manager
101Falta uno o más de los campos obligatorios en la solicitud
102Uno o más de los campos obligatorios contienen datos inválidos
150Error: falla general del sistema
151Error: se recibió la solicitud pero se agotó el tiempo de espera. Este error no incluye el tiempo de espera entre el cliente y el servidor
152Error: se recibió la solicitud, pero un servicio no terminó en tiempo de carrera
202tarjeta expirada