Servicio de edición de autorización previa de origen externa

El enrutamiento GetnetLac permite cambiar el valor de una autorización previa no capturada, incluso si no aparece en los registros de Portal Carat. Consulte nuestro Soporte para ver si existen otras rutas con esta funcionalidad. Para usar esta funcionalidad, simplemente vuelva a llamar a la operación doPreAuthorization con los datos de una transacción de autorización previa con status CON (confirmado) con la adición del campo amount. A continuación se muestran los detalles de esa llamada.

Actualmente, esta funcionalidad solo permite la edición de transacciones de autorización previa realizadas en SiTef.

Esta operación requiere un paso más en el flujo, en comparación con una edición de autorización previa normal. Se debe crear una edición de preautorización mediante la operación beginTransaction, que generará un registro en Portal Carat de una transacción con status = NOV, y devolverá el parámetro nit a la aplicación, que identificará dicha transacción.

Creación de edición de autorización previa con fuente externa#

Detalles de la llamada#

  • Recurso: /v1/transactions
  • Operación HTTP : POST
  • Formato de solicitud : JSON
  • Formato de respuesta : JSON
  • Parámetros de encabezado :
Nombre del parámetroDescripciónTamañoObligatorio
Content-TypeValor fijo "application / json"= 15 ASi
merchant_idCódigo de tienda en el Portal Carat. Los códigos de producción y certificación serán diferentes≤ 15 ASi
merchant_keyClave de autenticación para la tienda de Portal Carat. Las claves de producción y certificación serán diferentes.<80 ASi

Ejemplos#

A continuación, se muestran algunos ejemplos de llamadas al servicio de creación de transacciones mediante la herramienta cURL.

Solicitud:

curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/transactions"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxxxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"order_id":"orderID",
"merchant_usn":"20190101",
"amount":"100",
"transaction_type":"preauthorization",
"is_transaction_origin_external": "true"
}
--verbose

Respuesta:

{
"code": "0",
"message": "OK. Transaction successful.",
"pre_authorization": {
"status": "NOV",
"nit": "1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id": "orderID",
"merchant_usn": "20190101",
"amount": "100"
}
}

Parámetros de solicitud#

Nombre del parámetroDescripciónTamañoObrigatorio
amountMonto total de la compra (en centavos). Ejemplo: 1,00 = 100 o 1.100,00 = 110000 – envíe el valor sin la coma y el punto<12NSi
encrypted_cardEste campo debe enviarse con un valor "true" si el número de tarjeta que se enviará en el siguiente paso del flujo utiliza cifrado SiTef.
La opción de enviar la tarjeta encriptada solo será posible con enrutamiento vía SiTef y es necesaria la configuración previa del SiTef en cuestión.
1. "true"
2. "false" (valor default)
<5 ANNo
merchant_usnNúmero secuencial único para cada pedido, creado por la tienda.
La NSU se utilizará en todas las comunicaciones con la tienda, con el fin de identificar el pedido. Como esta es una clave posible para el acceso desde el lado de la tienda, aunque es opcional para el Portal Carat, se recomienda encarecidamente que la aplicación de la tienda formatee y envíe el campo. <12 N
No
order_idCódigo de pedido que se mostrará al comprador, definido por el comerciante. Se recomienda que sea diferente para cada pedido para facilitar la trazabilidad.
Si la integración de la Tienda con las redes de adquisición / enrutamiento (Cielo, Redecard, etc.) es vía SiTef (TEF), el campo orderId que tiene una longitud máxima de 40 caracteres, se reducirá a 12 caracteres, debido a una restricción de SiTef. Esta reducción se realizará manteniendo los caracteres de izquierda a derecha (ej .: si un código de pedido ingresado es 12345678901234567890 en Portal Carat, en SiTef será solo 123456789012).
< 40 ANNo
transaction_typeValor fijo "preauthorization"= 15 ASi
soft_descriptorTexto adicional que aparecerá con el nombre del establecimiento en el extracto de la tarjeta de crédito del comprador. [Más información] (soft-descriptor.md) < 22 ANNO
is_transaction_origin_externalIndica si la transacción se originó fuera de Pgo Online. Valor fijo "true"= 5 ANSi

Escribe el título del campo "Tamaño":

AN = alfanumérico

N = numérico

N A = no utilizado

Parámetros de respuesta#

Nombre del parámetroDescripciónTamaño
codeCódigo de respuesta de Portal Carat. Cualquier código que no sea ‘0’ significa error. Para obtener más información, consulte [Códigos de respuesta] (codigos-da-api.md#response-codes).<4 N
messageMensaje de respuesta de Portal Carat.<500 A
amountMonto de la transacción especificado por la tienda (en centavos) al momento de la creación de la transacción.<12 N
merchant_usnNúmero secuencial único enviado por la tienda al crear la transacción.<12 N
nitIdentificador de la transacción de autorización previa en Portal Carat.= 64 A
order_idCódigo de pedido enviado por la tienda al momento de la creación de la transacción < 40 AN
statusEstado de la transacción de autorización previa en Portal Carat.= 3 A

Ejecución de la edición pré-auto con origen externa#

La ejecución sigue el mismo flujo de una [edición de preautorización originada en el Portal Carat] (pre-autorizacao-rest-editPreAuthorization.md), pero es necesario enviar algunos parámetros más en la solicitud.

Parámetros de solicitud#

ParámetroDescripciónFormatoObligatorio
acquirerLos campos de este elemento solo deben enviarse en casos de transacciones de origen externo.
routing_idInformación de enrutamiento utilizada para pagos realizados fuera de Portal Carat. Esta información, si se envía, se utiliza para identificar el enrutamiento en SiTef. Esta información solo tiene sentido en transacciones de origen externo. < 5 NNO
authorizer_idCódigo de autorizador en el Portal Carat. Debe ser la misma cantidad enviada en el pago. < 3 NSI
host_usnNSU ddo host/autorizador de la transacción que se cancelará.= 9 NSI
authorization_numberNúmero de autorización de la transacción a cancelar. < 6 NSI
authorizer_dateFecha efectiva de pago de SiTef en formato "DD / MM / AAAA".= 10 DSI
order_idCódigo de pedido utilizado en la autorización previa iniciada fuera del Portal Carat. < 40 ANNO
identification_numberCPF o CNPJ utilizados en la autorización previa iniciada fuera del Portal Carat. < 20 ANSI
terminalTerminal SiTef que desea utilizar. Si no se envía, el Portal Carat generará una terminal aleatoria. = 8 ANNO
company_codeCódigo de la empresa SiTef que desea utilizar. Si no se envía, el Portal Carat enviará el código de empresa registrado en la tienda. = 8 NNO

Escribe el título del campo "Tamaño":

AN = alfanumérico

N = numérico

N A = no utilizado

Nota:#

1 - Cuando se envía información de terminal y company_code, el comportamiento de cardquery cambia ligeramente. En este momento, al ejecutar la cardquery, Portal Carat identificará la red devuelta por SiTef. Una vez identificado, se utilizará en lugar de registrarse en la tienda.

2 - En operaciones de origen externo, no podemos validar la red que se utilizó en la parte externa de la operación, que se realizó fuera de Portal Carat. En estos casos utilizamos la red configurada en SiTef. Debido a esto, los cambios de configuración, si se realizan durante la mitad de la operación, pueden causar solicitudes inválidas o denegadas . Por ejemplo, si se realizó una autorización previa en el medio físico en la red 181 y, antes de finalizar la captura, se cambia la configuración de SiTef a la red 125, las operaciones que se realicen vía Portal Carat asumirán la red 125.

ATENCIÓN: Los parámetros terminal y company_code deben enviarse simultáneamente. También es necesario solicitar permiso al equipo de atendimiento del Portal Carat Permite envio de Empresa y Terminal SiTef vía REST .

Ejemplo#

Solicitud:

curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/preauthorizations/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"amount": "3000",
"installments": "1",
"installment_type": "4",
"card": {
"number": "5555555555555555",
"expiry_date": "1222",
"security_code": "123"
},
"acquirer": {
"authorizer_id": "1",
"authorization_number": 212820,
"identification_number": "11111111555",
"order_id": 1611256811271,
"authorizer_date": "21/01/2021",
"host_usn": 999212820
}
}
--verbose

Respuesta:

{
"code": "0",
"message": "OK. Transaction successful.",
"pre_authorization": {
"authorizer_code": "000",
"authorizer_message": "Transacao OK SDO DISPONIVEL 244,00",
"status": "CON",
"nit": "1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id": "orderID",
"customer_receipt": "=== CUSTOMER RECEIPT ===",
"merchant_receipt": "=== MERCHANT RECEIPT ===",
"authorizer_id": "1",
"acquirer_id": "1181",
"acquirer_name": "GetNet Lac",
"authorizer_date": "30/03/2021T10:03",
"authorization_number": "300016",
"merchant_usn": "30120944339",
"esitef_usn": "210330069186034",
"sitef_usn": "300016",
"host_usn": "003300016 ",
"amount": "3000",
"payment_type": "C",
"authorizer_merchant_id": "000000000000000"
}
}