Saltar al contenido principal
En esta página

Integra Mercado Pago en tu aplicación vía API.

1. Crea y ordena#

Para realizar una compra, crea un pedido en DEUNA.

Realizar una solicitud al Crear un pedido endpoint.

La API devuelve un order_token que se utiliza durante todo el flujo.

Ejemplo de solicitud

JSON
{
    "order_type": "AIRLINE_ORDER",
    "order": {
        ....
        "statement_descriptor": "DEUNA_TICKET",
        "store_code": "all",
        "airline_information": {
            "booking_items": [
                {
                    "passenger": {
                        "first_name": "Jhon",
                        "middle_name": "Paul",
                        "last_name": "Smith",
                        "date_of_birth": "2000-06-27"
                    },
                    "legs": [
                        {
                            "carrier_name": "Aeromexico",
                            "sub_total_amount": 900,
                            "tax_amount": 600,
                            "total_amount": 1500,
                            "origin": {
                                "date": "2020-02-15",
                                "time": "15:30",
                                "iata_code": "SFO"
                            },
                            "destination": {
                                "iata_code": "DBX",
                                "date": "2020-02-15",
                                "time": "15:30"
                            }
                        }
                    ]
                }
            ]
        }
    }
}

Descripción del campo

Conoce cómo se deben llenar todos los campos en el pedido de Mercado Pago vía API.

Campos comunes en todos los pedidos:

Ruta de campoDescripciónValor de ejemplo
order_typeTipo de pedido (debe ser AIRLINE_ORDER si la información de la aerolínea está presente)AIRLINE_ORDER
order.statement_descriptorDescripción del estado de cuenta para el pago. Longitud máxima aceptada por Mercado Pago: 13 caracteres.DEUNA*TIENDA123

Campos obligatorios para pasajeros

Para cada pasajero, complete los datos personales y de cada uno de los tramos comprados.

Ruta de campoDescripciónValor de ejemploRequerido
order.airline_information.booking_items[0].passenger.first_nameNombre del pasajeroJuan
order.airline_information.booking_items[0].passenger.middle_nameSegundo nombre del pasajero (si corresponde)PabloOpcional
order.airline_information.booking_items[0].passenger.last_nameApellido del pasajeroherrero
order.airline_information.booking_items[0].passenger.date_of_birthFecha de nacimiento del pasajero2000-06-27Opcional
order.airline_information.booking_items[0].legs[0].carrier_nameCódigo de compañía aéreaAeroméxicoValor predeterminado "Desconocido"
order.airline_information.booking_items[0].legs[0].total_amountImporte total de la pierna1000
order.airline_information.booking_items[0].legs[0].sub_total_amountSubtotal del tramo sin impuestos1000
order.airline_information.booking_items[0].legs[0].tax_amountMonto del impuesto0Opcional
order.airline_information.booking_items[0].legs[0].origin.datefecha de origen2020-02-15
order.airline_information.booking_items[0].legs[0].origin.timehora de origen15:30
order.airline_information.booking_items[0].legs[0].origin.iata_codeCódigo IATA del aeropuerto de origenSFOValor predeterminado "N/A”
order.airline_information.booking_items[0].legs[0].destination.iata_codeCódigo IATA del aeropuerto de destinoDBXValor predeterminado "N/A”
order.airline_information.booking_items[0].legs[0].destination.datefecha de destino2020-02-15
order.airline_information.booking_items[0].legs[0].destination.timeHora de destino15:30

Campos de orden

CampoDescripciónValor de ejemploRequerido
order.store_codeCódigo de tienda único (valor "todos")all
order.itemsColección de artículos. comprobarCrear un pedido Requerido por este flujo de Mercado Pago si no se incluye información de la aerolínea.
order.statement_descriptorDescripción del estado de cuenta para el pago. Longitud máxima aceptada por Mercado Pago: 13 caracteres.DEUNA\SHOP123

Consideraciones generales:

  • Acerca de order.items:
    • total_amount.original_amount debe ser unit_price.amount * quantity.
    • total_amount.amount debe ser ((unit_price.amount + tax_amount.amount) * quantity) - total_amount.total_discount.
    • total_amount.total_discount es el valor total de los descuentos por la cantidad de artículos.
  • order.items_total_amount es la suma de los precios unitarios de los artículos. Esta cantidad, más order.total_tax_amount y menos order.discount_amount, debe coincidir order.total_amount.
  • order.sub_total es la suma del precio unitario de los artículos menos los descuentos. Esta cantidad, más order.total_tax_amount, debe coincidir order.total_amount.

Cuando Mercado Pago se abre en la superficie de un navegador nativo (SafariViewController en iOS o Custom Tabs en Android), debes configurar enlaces profundos para que el usuario regrese a tu aplicación después del resultado del pago.

JSON
{
    "order_type": "AIRLINE_ORDER",
    "order": {
		.
		.
		.
        "callback_urls": {
            "on_success": "yourapp://success",
            "on_pending": "yourapp://pending",
            "on_failed": "yourapp://failed"
        }
    }
}

3. Procesar el pedido#

Realizar una solicitud al Compra V2 punto final y procesar el pago.