Criar transação para conta bancária - Transações - Mercado Pago Developers
O que você está buscando?

Não sabe como começar a integrar? 

Acesse os primeiros passos
Criar transação para conta bancária

POST

https://api.mercadopago.com/v1/transaction-intents/process
Gera operações de saída de dinheiro desde uma conta do Mercado Pago a outras contas (internas ou externas), desde que a conta de retirada tenha fundos.
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 transações idênticas, por exemplo. Para gar...Ver mais
x-Signature
boolean

OBRIGATÓRIO

Assinatura da requisição com o body criptografado na base 64 com as chaves pública e privada do integrador. É obrigatório apenas no ambiente de produção.
x-enforce-signature
boolean
Booleano para indicar se o integrador irá ou não enviar a assinatura. Deve ser "false" para ambiente de teste, "true" para ambiente produtivo, que é quando é obrigatório o envio da assinatura.
BODY
external_reference
string
Referência para identificar a transação. É gerada pelo integrador e pode ser qualquer valor que permita o rastreamento das transações, desde que não possua caracteres especiais (“”, [ ], (), @) e não exceda 64 caracteres...Ver mais
point_of_interaction
object

OBRIGATÓRIO

Valor fixo. Deve sempre ser preenchido como {"type":"PSP_TRANSFER"}
seller_configuration
object
Objeto contendo configurações do usuário que realiza a transação.
transaction
object
Objeto que contém informações sobre a transação.
Parâmetros de resposta
created_date
string
Data de criação da transação.
external_reference
string
Referência externa da transação, gerada pelo integrador na hora da criação.
id
string
Identificador único da transação, gerado automaticamente
last_updated_date
string
Data de atualização do status da transação.
Erros

400Bad Request

Invalid external_reference

Valor inválido para o campo "external_reference". Verifique os valores permitidos para esse campo.

Invalid type point_of_interaction

Valor inválido para o campo "point_of_interaction.type". Lembre-se que é um um valor fixo, sempre {"type":"PSP_TRANSFER"}.

Invalid amount

Valor inválido para o campo "transaction.from.accounts[0].amount". Verifique os valores permitidos para a transação.

Invalid identification number

Valor inválido para o campo "transaction.to.accounts[0].identification.number". Verifique os valores permitidos.

Invalid identification type

Valor inválido para o campo "transaction.to.accounts[0].owner.identification.type". Verifique os valores permitidos.

Account is disabled

A conta do Mercado Pago está desativada

Participant is not available

O participante não está habilitado para o fluxo transacional.

Invalid identity source

O header X-Identity-Source suporta apenas "dict" ou "ted".

Flow not specified

O header X-Flow-id suporta apenas "transfer" ou "management"

Compliance not processed

A verificação de conformidade não foi concluída para o usuário.

Key PSP error

Tentativa de consultar uma chave PSP externa que já está cadastrada no MercadoPago

Invalid Body

O body da requisição tem um formato inválido

Client not allowed

O client ID associado às credenciais não tem permissão para fazer a requisição.

Financial identity not found

A instituição financeira não foi localizada. Verifique o campo "to.accounts.bank_id"

Many Requests

Muitas requisições foram feitas. Espere e tente novamente.

Rate Limit

O serviço de consulta atingiu o limite de rpm para não ultrapassar o limite permitido pelo Bacen e não receber multas.

Unauthorized

A requisição não está autorizada.

Invalid Payload

Payload inválido.

424Failed Dependency

Resource locked

O serviço de rate limit está processando o consumo de nossa API pelo integrador.

500Erro interno do servidor.

internal_server_error

Houve um erro na comunicação com transaction_intent

502Bad Gateway

bad_gateway

Erro de processamento na requisição

Requisição
curl -X POST \
    'https://api.mercadopago.com/v1/transaction-intents/process'\
    -H 'Content-Type: application/json' \
       -H 'X-Idempotency-Key: 0d5020ed-1af6-469c-ae06-c3bec19954bb' \
       -H 'x-Signature: true' \
       -H 'x-enforce-signature: false' \
       -H 'Authorization: Bearer TEST-7719*********832-03141*********ec9309854*********f1e54b5-1*********' \
    -d '{
  "external_reference": "MP0001",
  "point_of_interaction": {},
  "seller_configuration": {
    "notification_info": {
      "notification_url": "http://example.cl/notification"
    }
  },
  "transaction": {
    "from": {
      "accounts": [
        {
          "amount": 100
        }
      ]
    },
    "to": {
      "accounts": [
        {
          "amount": 100,
          "bank_id": "99999004",
          "type": "current",
          "number": "10266732",
          "owner": {
            "identification": {
              "type": "RUT",
              "number": "111111111111"
            }
          }
        }
      ]
    },
    "total_amount": 100
  }
}'
Resposta de exemplo
{
  "created_date": "2021-01-01T00:00:00.000Z",
  "external_reference": "123456",
  "id": "0d5020ed",
  "last_updated_date": "2021-01-01T00:00:00.000Z",
  "point_of_interaction": {
    "type": "{\"type\":\"PSP_TRANSFER\"}"
  },
  "seller_configuration": {
    "notification_info": {
      "notification_url": "http://example.cl/notification"
    }
  },
  "status": "approved",
  "transaction": {
    "from": {
      "accounts": [
        {
          "amount": "100,00"
        }
      ]
    },
    "paid_amount": 100,
    "payer": {
      "id": 123456543
    },
    "refunded_amount": 1,
    "to": {
      "accounts": [
        {
          "amount": "100,00",
          "origin_id": "01AAAM001A1AY43FBR8WCM9CES",
          "status_details": [
            {}
          ],
          "owner": {
            "identification": {
              "number": "1234567890",
              "type": "RUT"
            }
          },
          "bank_id": "0000014",
          "type": "checking_account",
          "number": "123456"
        }
      ]
    },
    "total_amount": 100,
    "statement_descriptor": "test"
  }
}