Pular para o conteúdo principal
Nesta página

Integre o Mercado Pago na sua aplicação via API.

1. Crie e encomende#

Para efetuar uma compra, crie um pedido na DEUNA.

Faça uma solicitação ao Crie um pedido endpoint.

A API retorna um order_token que é usado em todo o fluxo.

Exemplo de solicitação

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"
                            }
                        }
                    ]
                }
            ]
        }
    }
}

Descrição do campo

Saiba como todos os campos devem ser preenchidos no pedido do Mercado Pago via API.

Campos comuns em todos os pedidos:

Caminho do campoDescriçãoValor de exemplo
order_typeTipo de pedido (deve ser AIRLINE_ORDER se houver informações da companhia aérea)AIRLINE_ORDER
order.statement_descriptorDescrição do extrato para pagamento. Comprimento máximo aceito pelo Mercado Pago: 13 caracteres.DEUNA*SHOP123

Campos obrigatórios do passageiro

Para cada passageiro, preencha os dados pessoais e de cada trecho adquirido.

Caminho do campoDescriçãoValor de exemploObrigatório
order.airline_information.booking_items[0].passenger.first_nameNome do passageiroJoão
order.airline_information.booking_items[0].passenger.middle_nameNome do meio do passageiro (se aplicável)PauloOpcional
order.airline_information.booking_items[0].passenger.last_nameSobrenome do passageiroSmith
order.airline_information.booking_items[0].passenger.date_of_birthData de nascimento do passageiro2000-06-27Opcional
order.airline_information.booking_items[0].legs[0].carrier_nameCódigo da companhia aéreaAeroméxicoValor padrão "Desconhecido"
order.airline_information.booking_items[0].legs[0].total_amountValor total da perna1000
order.airline_information.booking_items[0].legs[0].sub_total_amountSubtotal da perna sem impostos1000
order.airline_information.booking_items[0].legs[0].tax_amountValor do imposto0Opcional
order.airline_information.booking_items[0].legs[0].origin.dateData de origem2020-02-15
order.airline_information.booking_items[0].legs[0].origin.timeHora de origem15:30
order.airline_information.booking_items[0].legs[0].origin.iata_codeCódigo IATA do aeroporto de origemSFOValor padrão "N/A”
order.airline_information.booking_items[0].legs[0].destination.iata_codeCódigo IATA do aeroporto de destinoDBXValor padrão "N/A”
order.airline_information.booking_items[0].legs[0].destination.dateData de destino2020-02-15
order.airline_information.booking_items[0].legs[0].destination.timeHora de destino15:30

Campos de pedido

CampoDescriçãoValor de exemploObrigatório
order.store_codeCódigo de loja exclusivo (valor “todos”)all
order.itemsColeção de itens. VerifiqueCrie um pedido Obrigatório por este fluxo do Mercado Pago caso as informações da companhia aérea não estejam incluídas.
order.statement_descriptorDescrição do extrato para pagamento. Comprimento máximo aceito pelo Mercado Pago: 13 caracteres.DEUNA\SHOP123

Considerações gerais:

  • Sobre order.items:
    • total_amount.original_amount deve ser unit_price.amount * quantity.
    • total_amount.amount deve ser ((unit_price.amount + tax_amount.amount) * quantity) - total_amount.total_discount.
    • total_amount.total_discount é o valor total dos descontos pela quantidade de itens.
  • order.items_total_amount é a soma dos preços unitários dos itens. Esse valor, mais order.total_tax_amount e menos order.discount_amount, deve corresponder order.total_amount.
  • order.sub_total é a soma do preço unitário dos itens menos os descontos. Esse valor, mais order.total_tax_amount, deve corresponder order.total_amount.

Quando o Mercado Pago abre em uma superfície nativa do navegador (SafariViewController no iOS ou Custom Tabs no Android), você deve configurar links diretos para que o usuário retorne ao seu aplicativo após o resultado do pagamento.

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

3. Processe o pedido#

Faça uma solicitação ao Compra V2 endpoint e processa o pagamento.