Recursos para IA

Criar loja e caixa

Após criar a aplicação e obter as credenciais, é necessário configurar a loja e caixa, que estarão associados às transações.

As lojas representam estabelecimentos físicos cadastrados no Mercado Pago e podem ter um ou mais caixas vinculados. Já os caixas correspondem aos pontos de venda (PDVs) e devem sempre estar associados a uma loja, garantindo a conciliação de pagamentos por Código QR em estabelecimentos físicos.

Stores and POS

É possível criar lojas e caixas a partir do seu sistema através das nossas APIs para pagamentos presenciais. Para isso, siga os passos a seguir.

Criar loja

Para criar uma loja via API, envie um POST incluindo seu Access Token de testeChave privada da aplicação criada no Mercado Pago, utilizada no backend. Você pode acessá-la em Suas integrações > Dados da integração > Testes > Credenciais de teste. Durante o processo de integração, utilize o Access Token de teste. Ao concluir a integração, substitua-o pelo Access Token de produção caso seja uma integração própria, ou pelo Access Token obtido via OAuth em integrações para terceiros. O Access Token de teste começa com o prefixo `APP_USR`.Acessar as credenciais de teste ao endpoint Criar lojaAPI. Você deverá adicionar o user_id da conta de testeDurante o desenvolvimento da integração, utilize o User ID da sua conta de teste, disponível em Suas integrações > Dados da integração > Credenciais de teste > Dados das credenciais de teste. Ao subir em produção, substitua-o pelo User ID da conta real do Mercado Pago que receberá os pagamentos. no path da sua requisição e completar os parâmetros requeridos com os detalhes do negócio conforme se indica a seguir.

É fundamental preencher corretamente todas as informações de localização da loja (city_name, state_name, latitude e longitude). Dados incorretos podem causar erros nos cálculos de impostos, impactando diretamente o faturamento e a regularização fiscal da sua empresa.
curl
curl -X POST \
    'https://api.mercadopago.com/users/USER_ID/stores'\
    -H 'Content-Type: application/json' \
       -H 'Authorization: Bearer ACCESS_TOKEN' \
    -d '{
  "name": "Loja Instore",
  "business_hours": {
    "monday": [
      {
        "open": "08:00",
        "close": "12:00"
      }
    ],
    "tuesday": [
      {
        "open": "09:00",
        "close": "18:00"
      }
    ]
  },
  "external_id": "LOJ001",
  "location": {
    "street_number": "0123",
    "street_name": "Nome da rua de exemplo.",
    "city_name": "Nome da cidade.",
    "state_name": "Nome do estado.",
    "latitude": 27.175193925922862,
    "longitude": 78.04213533235064,
    "reference": "Perto do Mercado Pago."
  }
}'
ParâmetroDescrição e exemplosObrigatoriedade
user_idIdentificador da conta do Mercado Pago que recebe o dinheiro pelas vendas realizadas na loja.

Durante o desenvolvimento, utilize o user_id da conta de teste, disponível em Suas integrações > Dados da integração > Credenciais de teste > Dados das credenciais de teste.

Ao subir em produção, substitua pelo user_id da conta real que receberá os pagamentos: Se você está realizando uma integração própriaIntegrações de QR Code ao seu sistema para uso próprio e configuradas a partir das credenciais da sua aplicação., encontrará este valor nos Dados da integração. Se, ao contrário, está realizando uma integração para terceirosIntegrações de QR Code ao seu sistema em nome de um vendedor e configuradas a partir de credenciais obtidas por meio do protocolo de segurança OAuth., obterá o valor na resposta à vinculação por meio de OAuthChave privada gerada mediante o protocolo de segurança OAuth, que permite gerenciar integrações em nome de terceiros. Para mais informações, dirija-se à documentação.OAuth.
Obrigatório
nameNome da loja criada.Obrigatório
business_hoursHorário comercial. Os horários de funcionamento são divididos por dia da semana e são permitidos até quatro horários de abertura e fechamento por dia. Informe esses dados para que sua loja seja exibida no aplicativo do Mercado Pago com o horário correto de funcionamento.Opcional
external_idIdentificador externo da loja para o sistema integrador. Pode conter qualquer valor alfanumérico de até 60 caracteres e deve ser único para cada loja. Por exemplo, LOJ001.Obligatorio
locationEste objeto deve conter todas as informações da localização da loja. É importante preencher tudo corretamente , especialmente os campos latitude e longitude com as coordenadas geográficas, usando o formato decimal simples e os dados reais do local. Por exemplo, "latitude": 27.175193925922862 e "longitude": 78.04213533235064, que correspondem à localização exata do Taj Mahal, na Índia. Ao inserir esses dados corretamente, a loja aparecerá no mapa na localização indicada.Obrigatório

Se a solicitação foi enviada corretamente, a resposta será como o exemplo a seguir:

json
{
  "id": 1234567,
  "name": "Loja Instore",
  "date_created": "2019-08-08T19:29:45.019Z",
  "business_hours": {
    "monday": [
      {
        "open": "08:00",
        "close": "12:00"
      }
    ],
    "tuesday": [
      {
        "open": "09:00",
        "close": "18:00"
      }
    ]
  },
  "location": {
    "address_line": "Nome da rua de exemplo, 0123, Nome da cidade, Nome do estado.",
    "latitude": 27.175193925922862,
    "longitude": 78.04213533235064,
    "reference": "Perto do Mercado Pago"
  },
  "external_id": "LOJ001"
}

Além dos dados enviados na solicitação, o endpoint retornará o identificador atribuído à loja pelo Mercado Pago sob o parâmetro id.

Criar caixa

Para habilitar vendas com Mercado Pago, é indispensável que cada loja registrada tenha pelo menos um caixa vinculado. Para criar um caixa e associá-lo à loja previamente criada, envie um POST incluindo seu Access Token de testeChave privada da aplicação criada no Mercado Pago, utilizada no backend. Você pode acessá-la em Suas integrações > Dados da integração > Testes > Credenciais de teste. Durante o processo de integração, utilize o Access Token de teste. Ao concluir a integração, substitua-o pelo Access Token de produção caso seja uma integração própria, ou pelo Access Token obtido via OAuth em integrações para terceiros. O Access Token de teste começa com o prefixo `APP_USR`.Acessar as credenciais de teste ao endpoint Criar caixaAPI como mostrado a seguir.

curl
curl -X POST \
    'https://api.mercadopago.com/v2/pos'\
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer ACCESS_TOKEN' \
    -H 'X-Idempotency-Key: CHAVE_UNICA' \
    -d '{
  "name": "POS-001",
  "store_id": "1234567",
  "external_id": "LOJ001POS001",
  "config": {
    "qr": {
      "operating_mode": "pdv"
    }
  }
}'
ParâmetroDescrição e exemplosObrigatoriedade
nameNome do caixa, definido pelo integrador no momento da criação. São permitidos apenas caracteres alfanuméricos, hífens, underscores e espaços internos. O valor não pode começar nem terminar com espaço. O limite máximo permitido é de 45 caracteres. Se não informado, a API define automaticamente o valor de external_id como nome.Opcional
store_idIdentificador da loja à qual o caixa pertence, atribuído pelo Mercado Pago no momento de criação da loja (retornado no campo id). Obrigatório caso external_store_id não seja informado. Se ambos forem enviados, devem referenciar a mesma loja.Condicional
external_store_idIdentificador externo da loja, definido pelo integrador ao criá-la, sob o parâmetro external_id. Obrigatório se store_id não for enviado. Se ambos forem enviados, devem se referir à mesma loja.Condicional
external_idIdentificador único do caixa definido pelo sistema integrador. Deve ser um valor alfanumérico único para cada caixa e pode conter até 40 caracteres. Embora seja um campo opcional na API, recomenda-se sempre enviá-lo: é obrigatório para criar orders de Código QR associadas a este caixa. Sem este campo, não será possível processar pagamentos.Opcional
config.qr.operating_modeModo de operação do caixa para pagamentos com Código QR. Valores possíveis:
pdv: modo atendido. Um operador de caixa conduz a transação manualmente. config.qr.url deve estar ausente.
standalone: Código QR não integrado. O QR é estático e não está vinculado a nenhum sistema externo. O cliente escaneia e paga diretamente pelo app do Mercado Pago, sem que o integrador gerencie orders. config.qr.url deve estar ausente.
Opcional
config.qr.categoryCódigo MCC que indica a categoria do caixa. O código varia de acordo com o país de operação. Se não especificado, permanece como categoria genérica. Para mais informações sobre os códigos, consulte a Referência de APIAPI.Opcional
config.qr.urlURL para obter a order do sistema integrador quando um pagamento é iniciado. O campo config.qr.url deve estar ausente se operating_mode for pdv ou standalone.Condicional

Se a solicitação foi enviada corretamente, a resposta será como o exemplo a seguir.

json
{
  "id": 1234567,
  "name": "POS-001",
  "status": "active",
  "date_created": "2024-01-15T10:30:00Z",
  "date_last_updated": "2024-01-15T10:30:00Z",
  "user_id": 123456,
  "store_id": "1234567",
  "external_store_id": "LOJ001",
  "external_id": "LOJ001POS001",
  "config": {
    "qr": {
      "operating_mode": "pdv"
    }
  },
  "qr_response": {
    "uuid": "0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1",
    "image": "https://www.mercadopago.com/instore/merchant/qr/1234567/abc123.png",
    "template_document": "https://www.mercadopago.com/instore/merchant/qr/1234567/template_abc123.pdf",
    "template_image": "https://www.mercadopago.com/instore/merchant/qr/1234567/template_abc123.png",
    "qr_code": "00020101021226940014BR.GOV.BCB.PIX2572pix-qr-h.mercadopago.com/instore/h/p/v2/abc123"
  }
}

Veja na tabela abaixo a descrição de alguns dos parâmetros retornados que podem ser úteis para continuar com sua integração mais adiante.

ParâmetroDescrição
idID de criação do ponto de venda. Ao registrar um ponto de venda, você receberá um ID correspondente. Esse ID pode ser utilizado para várias operações, incluindo consultar, atualizar ou excluir seus dados.
configObjeto de configuração do ponto de venda. Contém o nó de configuração qr com o operating_mode e, quando aplicável, category e url.
qr_responseCódigo QR estático associado ao caixa criado automaticamente para processar as transações do ponto de venda. Este código QR é necessário quando as orders são criadas em modo estático (static) ou híbrido (hybrid). O objeto qr_response contém os seguintes atributos:
uuid: Identificador único do Código QR associado a este ponto de venda, representado como uma string hexadecimal de 64 caracteres (hash SHA-256).
image: URL da imagem do código QR a ser utilizado para realizar as transações.
template_document: URL do arquivo (em formato PDF) do template com o código QR a ser utilizado para realizar as transações.
template_image: URL do arquivo (em formato de imagem) do template com o código QR a ser utilizado para processar as transações.
qr_code: string bruta do Código QR que pode ser codificada em uma imagem pelo sistema integrador.
statusStatus atual do ponto de venda. Valores possíveis: active (ativo e disponível para receber pagamentos) e inactive (inativo, não pode receber pagamentos).
user_idIdentificador da conta do Mercado Pago que recebe o dinheiro pelas vendas realizadas no caixa.
nameNome atribuído ao caixa no momento da sua criação.
store_idIdentificador da loja à qual pertence o ponto de venda, atribuído a essa loja pelo Mercado Pago.
external_store_idIdentificador externo da loja, que foi atribuído pelo sistema integrador no momento da sua criação sob o parâmetro external_id.
external_idIdentificador único do caixa definido pelo sistema integrador.

Se ambas as solicitações foram bem-sucedidas, você terá criado e configurado a loja e o caixa necessários para a integração com Código QR.

As lojas são exibidas automaticamente no mapa das aplicações do Mercado Pago e Mercado Livre, ampliando a visibilidade do estabelecimento à medida que os pagamentos são processados.

Com a loja e o caixa criados, você poderá integrar o processamento de pagamentos.