Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.malga.io/llms.txt

Use this file to discover all available pages before exploring further.

Para criar um Link de Pagamento via API, você deve criar uma sessão com paymentLink. A URL retornada na criação e na consulta da sessão é o endereço em que o ambiente de pagamento ficará disponível para você. Veja mais detalhes na especificação de criação de sessão.
Para dividir valores entre recebedores neste fluxo, configure splitRules no corpo de criação da sessão. O pagamento do link não recebe novo split no corpo. Veja Split em sessão ou link de pagamento.
Para criar um Link de Pagamento via API, acesse o endpoint de criação de sessões. O retorno será uma sessão com paymentLink preenchido. Ao acessar essa URL, o comprador poderá pagar o link conforme a configuração de pagamentos da sessão.
Você pode configurar o paymentLink com domínio próprio alterando o companyUrl na API de configurações do link. Saiba mais em configurar tema e domínio do link.Para tornar o link sem limite de pagamentos, defina maxPayments como -1. Para links sem data de validade, não envie o campo dueDate.

Entradas e saídas principais

Na criação da sessão, os campos abaixo controlam o comportamento do Link de Pagamento:
CampoUso
amountValor cobrado em cada pagamento do link.
paymentMethodsMétodos de pagamento disponíveis para o comprador.
paymentLinkURL retornada pela API para compartilhar o link com o comprador.
maxPaymentsDefine se o link opera como 1:1 ou 1:N. Quando omitido, o link segue o fluxo 1:1. Quando enviado com um número positivo, limita a quantidade de pagamentos. Quando enviado como -1, permite pagamentos sem limite de quantidade.
multiplePaymentsObjeto retornado nas respostas completas de sessão para indicar disponibilidade agregada, quantidade de pagamentos e status do link 1:N.
Para consultar o contrato completo de request e response, use a referência da API de sessões.
curl --location 'https://api.malga.io/v1/sessions' \
--header 'X-Client-Id: <YOUR_CLIENT_ID>' \
--header 'X-Api-Key: <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
   "amount": 1000,
   "name": "Loja 1",
   "merchantId": "<YOUR_MERCHANT_ID>",
   "dueDate": "2030-10-25T09:28:45.000Z",
   "statementDescriptor": "<YOUR_STATEMENT_DESCRIPTOR>",
   "paymentMethods": [
      {
         "paymentType": "credit",
         "installments": 10
      },
      {
         "paymentType": "pix",
         "expiresIn": 10000
      },
      {
         "paymentType": "boleto",
         "expiresDate": "2026-01-01"
      }
   ],
   "maxPayments": 36,
   "items": [
      {
         "name": "Fone de Ouvido Bluetooth TWS-X1",
         "description": "Fone sem fio com cancelamento de ruído ativo, case de carregamento e 8h de bateria. Cor: Preto Fosco.",
         "unitPrice": 35000,
         "quantity": 1,
         "tangible": false
      },
      {
         "name": "Caneca \"Code & Coffee\"",
         "description": "Caneca de cerâmica para café, com estampa personalizada.",
         "unitPrice": 4500,
         "quantity": 1,
         "tangible": false
      },
      {
         "name": "Kit de Anotações \"Inspire\"",
         "description": "1 caderno A5 pautado (capa dura), 1 bloco de notas adesivas e 2 canetas esferográficas.",
         "unitPrice": 8990,
         "quantity": 1,
         "tangible": false
      }
   ]
}'
O exemplo acima cria um link 1:N com limite de 36 pagamentos. O valor cobrado em cada pagamento é o valor da sessão enviado em amount, e não a soma dos valores dos itens. Para pagar um Link de Pagamento, utilize o endpoint de pagamento de uma sessão. Cada chamada aceita nesse endpoint cria uma cobrança para a sessão. Leia mais na especificação de pagamento de sessão.
Links criados sem maxPayments seguem o fluxo 1:1: após o pagamento aprovado, o link não fica disponível para novo pagamento. Links criados com maxPayments seguem o fluxo 1:N: cada pagamento aprovado conta para o limite configurado, e o link permanece disponível enquanto houver capacidade, estiver ativo e não tiver expirado.
Em links 1:N, acompanhe a disponibilidade agregada pelo objeto multiplePayments na consulta da sessão. A resposta do endpoint de pagamento representa a cobrança criada; para ver o status atualizado do link, consulte recuperar detalhes de uma sessão.