Esta documentação apresenta a API de pagamentos da plataforma e descreve como integrá-la aos seus sistemas. Aqui estão detalhados os endpoints, formatos de requisição e respostas necessárias para o uso da API.
A API utiliza o padrão REST e comunicação em JSON. As chamadas são organizadas para facilitar a implementação e manter consistência entre as operações disponíveis.
Todas as requisições à API devem ser autenticadas utilizando um token de acesso no padrão Bearer Token.
Para obter as suas credenciais de API, acesse a página Financeiro → Integrações no painel da plataforma.
Na página Financeiro → Integrações, a chave para a utilização das rotas de pagamento fica na seção Credenciais de API.
Após encontrar sua chave, informe-a no cabeçalho Authorization da requisição HTTP, seguindo o padrão Bearer <sua_chave_de_api>.
const routeUrl = "https://api.diasmarketplace.com.br/v1/payment";
const apiToken = "Bearer " + "SUA_CHAVE_DE_API";
const payload = {
amount: 25990,
currency: "BRL",
method: "PIX",
description: "Pagamento de assinatura",
externalRef: "order_98765",
notificationUrl: "https://example.com/webhook/payment",
payer: {
name: "John Doe",
taxId: "12345678901",
email: "john.doe@example.com",
phone: "11999999999",
},
"items": [
{
"quantity": 1,
"name": "Produto Teste",
"price": 1000,
"type": "PHYSICAL"
}
],
};
const response = await fetch(routeUrl, {
method: "POST",
headers: {
Authorization: apiToken,
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
const data = await response.json();
console.log(data);
Para maior segurança, as rotas de transferência utilizam uma chave de API diferente.
Na página Financeiro → Integrações, a chave para a utilização das rotas de transferência fica na seção Credenciais de Saque via API.
Após encontrar sua chave, informe-a no cabeçalho Authorization da requisição HTTP, seguindo o padrão Bearer <sua_chave_de_api>.
const routeUrl = "https://api.diasmarketplace.com.br/v1/transfer";
const apiToken = "Bearer " + "SUA_CHAVE_DE_API_DE_SAQUE";
const payload = {
"amount": 1000,
"method": "PIX",
"externalRef": "transfer_123",
"notificationUrl": "https://example.com/webhook/transfer"
"pix": {
"pixKeyType": "EMAIL",
"pixKey": "email@gmail.com"
},
};
const response = await fetch(routeUrl, {
method: "POST",
headers: {
Authorization: apiToken,
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
const data = await response.json();
console.log(data);