Transacciones

Overview

Genera la información de un pago con los parámetros de la solicitud.

Ejemplo

Nombre del campo Descripción Reglas
payment Requerido required
payment.description Requerido. Debe ser una cadena y debe tener entre 4 y 191 caracteres required, min:4, max:191, string
payment.amount Requerido. Debe ser un valor numérico, al menos 1, máximo de 2 decimales y entre 1 y 10 dígitos required, numeric, min:1, decimal:0,2, regex:/^\d{1,10}(.\d{0,2})?\$/i
payment.selected_taxes Opcional, puede ser una matriz nullable, array
payment.selected_taxes. Requerido, su valor es 19 y debe existir en la tabla de impuestos con estado activo required, el ID existe en la tabla de impuestos activos
payment.currency_type Requerido. Debe ser una cadena y uno de los valores de la enumeración (COP, USD, EUR) required, string, en enumeración (COP, USD, EUR)
payment.checkout_type Requerido. Debe ser una cadena y uno de los valores de la enumeración (redirect, api) required, string, en enumeración (redirect, api)
office Hace referencia al ID de tus sucursales required, el ID existe en la tabla de Sucursales, filtra los resultados según usuario autenticado

Descripción: Genera la información de un pago con los parámetros adicionales a la solicitud.

Nombre del campo Descripción Reglas
advanced_options.picture El campo picture dentro de advanced_options puede ser nulo, debe ser una imagen y su tamaño máximo es de 5120 kilobytes. nullable, image, max:5120
advanced_options.limit_date Puede ser nulo, debe ser una fecha y debe ser igual o posterior al día actual. nullable, date, after_or_equal:today
advanced_options.references Puede ser nulo, debe ser un array y su longitud máxima es de 3 elementos. nullable, array, max:3
advanced_options.references.* Todos los elementos dentro de references son requeridos, deben ser una string y tener una longitud máxima de 50 caracteres. required, string, max:50
advanced_options.result_urls El campo result_urls dentro de advanced_options puede ser nulo. nullable
advanced_options.result_urls.approved Dentro de result_urls es requerido si result_urls está presente, debe ser una URL activa. required_with:result_urls, url, active_url
advanced_options.result_urls.rejected rejected dentro de result_urls es requerido si result_urls está presente, debe ser una URL activa. required_with:result_urls, url, active_url
advanced_options.result_urls.pending Pending dentro de result_urls es requerido si result_urls está presente, debe ser una URL activa. required_with:result_urls, url, active_url
advanced_options.result_urls.webhook Webhook dentro de result_urls es requerido si result_urls está presente, debe ser una URL activa. y de tipo post, sera usada para enviar via webhook el cambio del estado de la transaccion required_with:result_urls, url, active_url, tipo post
advanced_options.delivery_service El campo delivery_service dentro de advanced_options puede ser nulo. nullable
advanced_options.delivery_service.type Puede ser nulo y debe ser un valor permitido según la enumeración (gratis, con valor). nullable, en enumeración (gratis, con valor)
advanced_options.delivery_service.value Puede ser nulo, pero si type es 'Value', entonces es requerido; debe ser un número decimal con un máximo de 2 decimales. nullable, required_if:advanced_options.delivery_service.type,Value, numeric, decimal:0,2
advanced_options.request_address_delivery Puede ser nulo y debe ser un booleano. nullable, boolean
advanced_options.payment_methods El campo payment_methods dentro de advanced_options puede ser nulo. nullable, métodos de pago disponibles
advanced_options.payment_methods.credit A veces es requerido si payment_methods está presente y debe ser un array. sometimes, required_with:advanced_options.payment_methods, array
advanced_options.payment_methods.pse A veces es requerido si payment_methods está presente y debe ser un array. sometimes, required_with:advanced_options.payment_methods, array
advanced_options.payment_methods.cash A veces es requerido si payment_methods está presente y debe ser un array. sometimes, required_with:advanced_options.payment_methods, array
advanced_options.discount.before_on Puede ser nulo, debe ser una fecha y debe ser igual o posterior al día actual. nullable, date, after_or_equal:today
advanced_options.discount.type Puede ser nulo y debe ser un valor permitido según la enumeración (Value, Percentage). nullable, en enumeración (value, percentage)
advanced_options.discount.value Puede ser nulo, debe ser un número decimal con un máximo de 2 decimales. nullable, numeric, decimal:0,2
advanced_options.has_comments Dentro de advanced_options es requerido si advanced_options está presente y debe ser un booleano.
advanced_options.credibanco_gateway Si deseas que la transacción sea agregadora y tienes tu propia terminal para Credibanco puedes poner tus codigos aquí nullable, array
advanced_options.credibanco_gateway.code Aquí debes poner el código único correspondiente a Credibanco. required_with:advanced_options.credibanco_gateway, string, min:3, max:15
advanced_options.credibanco_gateway.terminal Aquí debes poner el código de terminal correspondiente a Credibanco. required_with:advanced_options.credibanco_gateway, string, min:3, max:15
advanced_options.redeban_gateway Si deseas que la transacción sea agregadora y tienes tu propia terminal para Redeban puedes poner tus codigos aquí. nullable, array
advanced_options.redeban_gateway.code Aquí debes poner el código único correspondiente a Redeban. required_with:advanced_options.redeban_gateway, string, min:3, max:15
advanced_options.redeban_gateway.terminal Aquí debes poner el código de terminal correspondiente a Redeban. required_with:advanced_options.redeban_gateway, string, min:3, max:15
advanced_options.pse_gateway Si deseas que la transacción sea agregadora y tienes tu propia terminal para Pse puedes poner tus codigos aquí. nullable, array
advanced_options.pse_gateway.code Aquí debes poner el código único correspondiente a Pse. required_with:advanced_options.pse_gateway, string, min:3, max:15
advanced_options.pse_gateway.nit Aquí debes poner el número Nit de tu comercio. required_with:advanced_options.pse_gateway, string, min:8, max:11

Ejemplo de solicitud por redirect:

curl -X POST\
'{{ URL::to('/api/v1/payment/generate-payment') }}'\
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H "Content-type: application/json" \
-d '{
    "payment" : {
        "description": "Prueba alltruismo 2",
        "amount": 20000,
        "currency_type": "COP",
        "checkout_type": "redirect"
    },
    "advanced_options": {
        "picture": "https://learn.g2.com/hubfs/G2CM_GI041_Checkout_process_V1b.png",
        "limit_date": "2023-12-24",
        "references": [
            "123455678",
            "1234556789",
            "1234556780"
        ],
        "result_urls": {
            "approved": "https://www.ted.com/",
            "rejected": "https://www.ted.com/",
            "pending": "https://www.ted.com/"
        },
        "delivery_service": {
            "type": "Con Valor",
            "value": 2000
        },
        "request_address_delivery": true,
        "discount": {
            "before_on": "2023-12-07",
            "type": "Valor",
            "value": "2000"
        },
        "has_comments": true,
        "comments_label": "Aqui tu comentario",
        "redeban_gateway": {
            "code": "12349876",
            "terminal": "DRA12335"
        }
    },
    "office": 1
}'

Ejemplo de solicitud por api:

curl -X POST\
'{{ URL::to('/api/v1/payment/generate-payment') }}'\
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H "Content-type: application/json" \
-d '{
    "payment" : {
        "description": "Prueba alltruismo 2",
        "amount": 20000,
        "currency_type": "COP",
        "checkout_type": "api"
    },
    "advanced_options": {
        "picture": "https://learn.g2.com/hubfs/G2CM_GI041_Checkout_process_V1b.png",
        "limit_date": "2023-12-24",
        "references": [
            "123455678",
            "1234556789",
            "1234556780"
        ],
        "result_urls": {
            "approved": "https://www.ted.com/",
            "rejected": "https://www.ted.com/",
            "pending": "https://www.ted.com/"
        },
        "delivery_service": {
            "type": "Con Valor",
            "value": 2000
        },
        "request_address_delivery": true,
        "discount": {
            "before_on": "2023-12-07",
            "type": "Valor",
            "value": "2000"
        },
        "has_comments": true,
        "comments_label": "Aqui tu comentario",
        "redeban_gateway": {
            "code": "12349876",
            "terminal": "DRA12335"
        }
    },
    "office": 1
}'