Inicio
Documentação
Recursos
Parcerias
Comunidade

Parcerias

Conheça nosso programa para agências ou desenvolvedores que oferecem serviços de integração e vendedores que desejam contratá-los.

Comunidade

Fique por dentro das últimas novidades, peça ajuda a outros integradores e compartilhe seu conhecimento.

Criar pagamento - Pagamentos - Mercado Pago Developers

Busca inteligente powered by OpenAI 

Criar pagamento

POST

https://api.mercadopago.com/v1/payments
Este endpoint permite a criação de um pagamento, possibilitando a inclusão de todas as informações necessárias. Certifique-se de adicionar os detalhes do pagamento e as informações do cliente. Em caso de sucesso, a requisição retornará uma resposta com o status 201.
Parâmetros de requisição
HEADER
X-Idempotency-Key
string

OBRIGATÓRIO

Esta função permite repetir solicitações de forma segura, sem o risco de realizar a mesma ação mais de uma vez por engano. Isso é útil para evitar erros, como a criação de dois pagamentos idênticos, por exemplo. Para gar...Ver mais
BODY
additional_info
object
No nível de Pagamentos, são apenas dados e apenas encaminhamos essas informações para outras APIS, como Risco, para realizar pontuação e prevenir fraudes, para Impostos para determiná-los para pagamentos internacionais.
application_fee
number
Comissão (taxa) que terceiros (integradores) cobram de seus clientes, neste caso, vendedores, pelo uso da plataforma do marketplace e de outros serviços. Esse é um valor em reais a ser definido pelo integrador ao vendedo...Ver mais
binary_mode
boolean
Quando definido como TRUE, os pagamentos só podem ser aprovados ou rejeitados. Caso contrário, eles também podem resultar in_process.
callback_url
string
URL para a qual o Mercado Pago faz o redirecionamento final (apenas para transferência bancária).
Parâmetros de resposta
id
number
Identificador único de pagamento, gerado automaticamente pelo Mercado Pago.
date_created
string
Data de criação do pagamento.
date_approved
string
Data de aprovação do pagamento. Um pagamento pode ser gerado em um estado intermediário e depois aprovado, portanto, a data de criação nem sempre coincidirá com a Data de Aprovação.
date_last_updated
string
Data em que o último evento de pagamento foi registrado.
Erros

400Erro

1

Params Error. - Caso esse erro apareça, verifique os parâmetros enviados na solicitação.

3

Token must be for test. - Caso esse erro ocorra, certifique-se de que está usando um token de teste.

8

The name of the following parameters is wrong [additional_info.payer.test] - Este erro é exibido quando o nome de determinado parâmetro é inserido incorretamente. Neste exemplo, o campo `additional_info.payer`. Revise o parâmetro retornado no erro e garanta que a informação inserida esteja correta.

23

The following parameters must be valid date and format (yyyy-MM-dd'T'HH:mm:ssz) date_of_expiration. - Se esse erro surgir, certifique-se de que a data de expiração está no formato correto.

1000

Number of rows exceeded the limits. - Se encontrar esse erro, reduza o número de linhas na sua solicitação.

2002

Customer not found. - Verifique os detalhes do cliente e tente novamente se encontrar esse erro.

2004

POST to Gateway Transactions API fail. - Caso esse erro ocorra, verifique o endpoint da API e tente novamente.

2006

Card Token not found. - Caso veja esse erro, certifique-se de que o token do cartão está correto e válido.

2007

Connection to Card Token API fail. - Verifique sua conexão de rede e tente novamente se esse erro aparecer.

2009

Card token issuer can't be null. - Certifique-se de que o emissor do token do cartão seja fornecido se esse erro ocorrer.

2034

Invalid users involved. - Se esse erro aparecer, certifique-se de que os usuários envolvidos são todos produtivos ou todos de teste. Além disso, verifique se o sponsor_id (se aplicável) está correto e tente novamente.

2059

You cannot use `application_fee` with this payment. - Este erro ocorre porque o Access Token que está sendo utilizado não foi obtido através do OAuth. Certifique-se de utilizar um Access Token gerado via OAuth.

2062

Invalid card token. - Certifique-se de que o token do cartão fornecido é válido e correto se esse erro ocorrer.

2067

Invalid user identification number. - Verifique o número de identificação do usuário e tente novamente se encontrar esse erro.

2072

Invalid value for transaction_amount. - Certifique-se de que o transaction_amount seja válido se esse erro aparecer.

2077

Deferred capture not supported. - Se esse erro ocorrer, observe que a captura diferida não é suportada e ajuste sua solicitação conforme necessário.

2123

Invalid operators users involved. - Caso veja esse erro, verifique os operadores envolvidos na transação.

2131

Cannot infer Payment Method. - Verifique se o campo `payment_method` está preenchido corretamente e está de acordo com o meio de pagamento utilizado, assim como o número de parcelas (`installments`).

2198

Invalid test user email. - esse erro ocorre quando o atributo payer.email é enviado usando um e-mail que não é de teste enquanto você está em um ambiente de teste (por exemplo, usando um e-mail @testuser.com). Se você encontrar esse erro, verifique se você está realmente em um ambiente de teste e, se estiver, use um e-mail conforme especificado.

3000

You must provide your cardholder_name with your card data. - Se esse erro ocorrer, inclua o cardholder_name na sua solicitação.

3001

You must provide your cardissuer_id with your card data. - Se encontrar esse erro, certifique-se de que o cardissuer_id está incluído na sua solicitação.

3003

Invalid card_token_id. - Certifique-se de que o card_token_id está correto e não foi utilizado anteriormente. Tente novamente.

3004

Invalid parameter site_id. - Se esse erro ocorrer, certifique-se de que o site_id é válido e está corretamente formatado.

3005

Not valid action, the resource is in a state that does not allow this operation. For more information see the state that has the resource. - Caso veja esse erro, verifique o estado do recurso e ajuste sua solicitação conforme necessário.

3006

Invalid parameter cardtoken_id. - Certifique-se de que o cardtoken_id está correto e tente novamente se esse erro aparecer.

3007

The parameter client_id cannot be null or empty. - Se esse erro ocorrer, forneça um client_id válido.

3008

Not found Cardtoken. - Verifique as informações do cardtoken e tente novamente se esse erro aparecer.

3009

Unauthorized client_id. - Se esse erro ocorrer, verifique as permissões do client_id e tente novamente.

3010

Not found card on whitelist. - Certifique-se de que o cartão está na lista branca se esse erro aparecer.

3011

Not found payment_method. - Verifique as informações do payment_method e tente novamente se esse erro ocorrer.

3012

Invalid parameter security_code_length. - Certifique-se de que o parâmetro security_code_length está correto se esse erro aparecer.

3013

The parameter security_code is a required field and cannot be null or empty. - Se esse erro ocorrer, forneça o parâmetro security_code.

3014

Invalid parameter payment_method. - Certifique-se de que o parâmetro payment_method está correto se esse erro aparecer.

3015

Invalid parameter card_number_length. - Se esse erro ocorrer, certifique-se de que o parâmetro card_number_length está correto.

3016

Invalid parameter card_number. - Verifique o parâmetro card_number e tente novamente se esse erro aparecer.

3017

The parameter card_number_id cannot be null or empty. - Certifique-se de que o parâmetro card_number_id é fornecido se esse erro ocorrer.

3018

The parameter expiration_month cannot be null or empty. - Forneça o parâmetro expiration_month se esse erro ocorrer.

3019

The parameter expiration_year cannot be null or empty. - Certifique-se de que o parâmetro expiration_year é fornecido se esse erro aparecer.

3020

The parameter cardholder.name cannot be null or empty. - Forneça o parâmetro cardholder.name se esse erro ocorrer.

3021

The parameter cardholder.document.number cannot be null or empty. - Certifique-se de que o parâmetro cardholder.document.number é fornecido se esse erro aparecer.

3022

The parameter cardholder.document.type cannot be null or empty. - Forneça o parâmetro cardholder.document.type se esse erro ocorrer.

3023

The parameter cardholder.document.subtype cannot be null or empty. - Certifique-se de que o parâmetro cardholder.document.subtype é fornecido se esse erro aparecer.

3024

Not valid action - partial refund unsupported for this transaction. - Se esse erro ocorrer, observe que reembolsos parciais não são suportados para esta transação.

3025

Invalid Auth Code. - Verifique o código de autenticação e tente novamente se esse erro aparecer.

3026

Invalid card_id for this payment_method_id. - Certifique-se de que o card_id corresponde ao payment_method_id se esse erro ocorrer.

3027

Invalid payment_type_id. - Se esse erro aparecer, verifique o payment_type_id e tente novamente.

3028

Invalid payment_method_id. - Verifique o payment_method_id e tente novamente se esse erro ocorrer.

3029

Invalid card expiration month. - Certifique-se de que o mês de expiração do cartão é válido se esse erro aparecer.

3030

Invalid card expiration year. - Se esse erro ocorrer, verifique o ano de expiração do cartão e tente novamente.

3031

Secure_code_id can't be null. - Certifique-se de que o secure_code_id é fornecido se esse erro aparecer.

3032

Invalid security_code_length 3033 3034 - Invalid card_number_validation. - Se esse erro ocorrer, verifique o comprimento do código de segurança e a validação do número do cartão.

4000

Token attribute can't be null. - Certifique-se de que o atributo token é fornecido se esse erro aparecer.

4001

Payment_method_id attribute can't be null. - Se esse erro ocorrer, forneça o atributo payment_method_id.

4002

Transaction_amount attribute can't be null. - Certifique-se de que o atributo transaction_amount é fornecido se esse erro aparecer.

4003

Transaction_amount attribute must be numeric. - Verifique se o transaction_amount é numérico se esse erro ocorrer.

4004

Installments attribute can't be null. - Se esse erro aparecer, certifique-se de que o atributo installments é fornecido.

4005

Installments attribute must be numeric. - Certifique-se de que o atributo installments é numérico se esse erro ocorrer.

4006

Payer attribute is malformed. - Verifique se o atributo payer está corretamente formatado se esse erro aparecer.

4012

Payer.id attribute can't be null. - Se esse erro aparecer, certifique-se de que o atributo payer.id é fornecido.

4013

Payer.type attribute can't be null. - Certifique-se de que o atributo payer.type é fornecido se esse erro ocorrer.

4015

Payment_method_reference_id attribute can't be null. - Forneça o atributo payment_method_reference_id se esse erro aparecer.

4016

Payment_method_reference_id attribute must be numeric. - Certifique-se de que o atributo payment_method_reference_id é numérico se esse erro ocorrer.

4017

Status attribute can't be null. - Se esse erro aparecer, certifique-se de que o atributo status é fornecido.

4018

Payment_id attribute can't be null. - Forneça o atributo payment_id se esse erro ocorrer.

4019

Payment_id attribute must be numeric. - Certifique-se de que o atributo payment_id é numérico se esse erro aparecer.

4020

Notification_url attribute must be a valid URL. - Se esse erro ocorrer, forneça uma URL válida para o atributo `notification_url` que comece com `https://`.

4021

Notification_url attribute must be shorter than 500 characters. - Certifique-se de que o atributo notification_url está dentro do limite de caracteres se esse erro aparecer.

4022

Metadata attribute must be a valid JSON. - Se esse erro ocorrer, certifique-se de que o atributo metadata é um JSON válido.

4023

Transaction_amount attribute can't be null. - Forneça o atributo transaction_amount se esse erro aparecer.

4024

Transaction_amount attribute must be numeric. - Certifique-se de que o atributo transaction_amount é numérico se esse erro ocorrer.

4025

Refund_id can't be null. - Forneça o refund_id se esse erro aparecer.

4026

Invalid coupon_amount. - Verifique se a quantidade do cupom está correta se esse erro ocorrer.

4027

Campaign_id attribute must be numeric. - Certifique-se de que o atributo campaign_id é numérico se esse erro aparecer.

4028

Coupon_amount attribute must be numeric. - Verifique se o atributo coupon_amount é numérico se esse erro ocorrer.

4029

Invalid payer type. - Certifique-se de que o tipo de pagador é válido se esse erro aparecer.

4033

Invalid installments. - Verifique se o parâmetro de parcelas está correto se esse erro ocorrer.

4037

Invalid transaction_amount. - Certifique-se de que o valor da transação é válido se esse erro aparecer.

4038

Application_fee cannot be bigger than transaction_amount. - Se esse erro ocorrer, certifique-se de que a taxa de aplicação seja menor ou igual ao valor da transação.

4039

Application_fee cannot be a negative value. - Certifique-se de que a taxa de aplicação é um valor positivo se esse erro aparecer.

4050

Payer.email must be a valid email. - Se esse erro ocorrer, certifique-se de que o payer.email é um endereço de email válido.

4051

Payer.email must be shorter than 254 characters. - Certifique-se de que o payer.email está dentro do limite de caracteres se esse erro aparecer.

4292

Header X-Idempotency-Key can’t be null. - Forneça um cabeçalho X-Idempotency-Key válido se esse erro ocorrer.

6033

User unavailable. - Se esse erro aparecer, verifique o status do usuário e tente novamente.

7523

Invalid expiration date. - Certifique-se de que a data de expiração é válida se esse erro ocorrer.

401Erro

Unauthorized use of live credentials

Esse erro ocorre quando o token de acesso não tem o escopo 'payment' necessário. Verifique se as credenciais estão corretas e se possuem as permissões adequadas.

403Erro

4

O caller não está autorizado a acessar este recurso. - Se esse erro ocorrer, verifique suas permissões de acesso.

3002

O caller não está autorizado a realizar esta ação. - Caso veja esse erro, certifique-se de que tem as permissões necessárias para realizar essa ação.

pa_unauthorized_result_from_policies

blocked_by PolicyAgent - At least one policy returned unauthorized - Este erro ocorre quando pelo menos uma política retorna 'unauthorized'. Isso pode acontecer se o header de `authorization` for removido durante a requisição ou se o Access Token não for enviado. Verifique o envio dessas informações e tente fazer uma nova requisição.

Requisição
curl -X POST \
    'https://api.mercadopago.com/v1/payments'\
    -H 'Content-Type: application/json' \
       -H 'X-Idempotency-Key: 0d5020ed-1af6-469c-ae06-c3bec19954bb' \
       -H 'Authorization: Bearer TEST-7434*********159-03141*********cee51edf8*********f94f589-1*********' \
    -d '{
  "additional_info": {
    "items": [
      {
        "id": "MLB2907679857",
        "title": "Point Mini",
        "description": "Point product for card payments via Bluetooth.",
        "picture_url": "https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium2x.png",
        "category_id": "electronics",
        "quantity": 1,
        "unit_price": 58,
        "type": "electronics",
        "event_date": "2023-12-31T09:37:52.000-04:00",
        "warranty": false,
        "category_descriptor": {
          "passenger": {},
          "route": {}
        }
      }
    ],
    "payer": {
      "first_name": "Test",
      "last_name": "Test",
      "phone": {
        "area_code": 11,
        "number": "987654321"
      },
      "address": {
        "street_number": null
      }
    },
    "shipments": {
      "receiver_address": {
        "zip_code": "12312-123",
        "state_name": "Rio de Janeiro",
        "city_name": "Buzios",
        "street_name": "Av das Nacoes Unidas",
        "street_number": 3003
      },
      "width": null,
      "height": null
    }
  },
  "application_fee": null,
  "binary_mode": false,
  "campaign_id": null,
  "capture": false,
  "coupon_amount": null,
  "description": "Payment for product",
  "differential_pricing_id": null,
  "external_reference": "MP0001",
  "installments": 1,
  "metadata": {},
  "payer": {
    "entity_type": "individual",
    "type": "customer",
    "id": null,
    "email": "test_user_123@testuser.com",
    "identification": {
      "type": "CPF",
      "number": "95749019047"
    }
  },
  "payment_method_id": "master",
  "token": "ff8080814c11e237014c1ff593b57b4d",
  "transaction_amount": 58
}'
Resposta de exemplo
{
  "id": 20359978,
  "date_created": "2019-07-10T14:47:58.000Z",
  "date_approved": "2019-07-10T14:47:58.000Z",
  "date_last_updated": "2019-07-10T14:47:58.000Z",
  "money_release_date": "2019-07-24T14:47:58.000Z",
  "issuer_id": 25,
  "payment_method_id": "visa",
  "payment_type_id": "credit_card",
  "status": "approved",
  "status_detail": "accredited",
  "currency_id": "BRL",
  "description": "Point Mini a maquininha que dá o dinheiro de suas vendas na hora.",
  "taxes_amount": 0,
  "shipping_amount": 0,
  "collector_id": 448876418,
  "payer": {
    "id": 123,
    "email": "test_user_80507629@testuser.com",
    "identification": {
      "number": 19119119100,
      "type": "CPF"
    },
    "type": "customer"
  },
  "metadata": {},
  "additional_info": {
    "items": [
      {
        "id": "PR0001",
        "title": "Point Mini",
        "description": "Producto Point para cobros con tarjetas mediante bluetooth",
        "picture_url": "https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium2x.png",
        "category_id": "electronics",
        "quantity": 1,
        "unit_price": 58
      }
    ],
    "payer": {
      "registration_date": "2019-01-01T15:01:01.000Z"
    },
    "shipments": {
      "receiver_address": {
        "street_name": "Av das Nacoes Unidas",
        "street_number": 3003,
        "zip_code": 6233200,
        "city_name": "Buzios",
        "state_name": "Rio de Janeiro"
      }
    }
  },
  "external_reference": "MP0001",
  "transaction_amount": 58,
  "transaction_amount_refunded": 50,
  "coupon_amount": 15,
  "transaction_details": {
    "net_received_amount": 56,
    "total_paid_amount": 58,
    "overpaid_amount": 0,
    "installment_amount": 58
  },
  "fee_details": [
    {
      "type": "coupon_fee",
      "amount": 2,
      "fee_payer": "payer"
    }
  ],
  "statement_descriptor": "MercadoPago",
  "installments": 1,
  "card": {
    "first_six_digits": 423564,
    "last_four_digits": 5682,
    "expiration_month": 6,
    "expiration_year": 2023,
    "date_created": "2019-07-10T14:47:58.000Z",
    "date_last_updated": "2019-07-10T14:47:58.000Z",
    "cardholder": {
      "name": "APRO",
      "identification": {
        "number": 19119119100,
        "type": "CPF"
      }
    }
  },
  "notification_url": "https://www.suaurl.com/notificacoes/",
  "processing_mode": "aggregator",
  "point_of_interaction": {
    "type": "PIX",
    "application_data": {
      "name": "NAME_SDK",
      "version": "VERSION_NUMBER"
    },
    "transaction_data": {
      "qr_code_base64": "iVBORw0KGgoAAAANSUhEUgAABRQAAAUUCAYAAACu5p7oAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAIABJREFUeJzs2luO3LiWQNFmI+Y/Zd6vRt36KGNXi7ZOBtcagHD4kNLeiLX33v8DAAAAABD879sDAAAAAAA/h6AIAAAAAGSCIgAAAACQCYoAAAAAQCYoAgAAAACZoAgAAAAAZIIiAAAAAJAJigAAAABAJigCAAAAAJmgCAAAAABkgiIAAAAAkAmKAAAAAEAmKAIAAAAAmaAIAAAAAGSCIgAAAACQCYoAAAAAQCYoAgAAAACZoAgAAAAAZIIiAAAAAJAJigAAAABAJigCA...",
      "qr_code": "00020126600014br.gov.bcb.pix0117test@testuser.com0217dados adicionais520400005303986540510.005802BR5913Maria Silva6008Brasilia62070503***6304E2CA",
      "ticket_url": "https://www.mercadopago.com.br/payments/123456789/ticket?caller_id=123456&hash=123e4567-e89b-12d3-a456-426655440000"
    }
  }
}