Skip to main content

Transações (Pix In)

Exemplos de uso do client.transactions para operações de cash-in via Pix.

Criar transação Pix In

Para method: "pix", buyer.document é obrigatório e buyer.document.type deve ser em caixa alta:
  • CPF
  • CNPJ
const created = await client.transactions.create({
	amount: 1500,
	currency: "BRL",
	method: "pix",
	buyer: {
		name: "Maria Silva",
		email: "maria@empresa.com",
		document: {
			type: "CNPJ",
			number: "12345678000195",
		},
	},
	products: [{ name: "Pedido #123", price: 1500, quantity: 1 }],
});

console.log(created.data.id, created.meta.requestId);

Recuperar transação

const tx = await client.transactions.retrieve("id-da-transacao");
console.log(tx.data.status);

Listar transações com paginação (page/limit)

const page = await client.transactions.list({ page: 1, limit: 20, status: ["pending", "paid"] });

console.log(page.data.metadata.total);
console.log(page.data.data.length);

Atualizar transação (somente sandbox/teste)

const updated = await client.transactions.update(
	"id-da-transacao",
	{ status: "paid" },
	{ idempotencyKey: "idem-update-001" },
);

console.log(updated.data.status);

Iterar automaticamente por todas as páginas

for await (const tx of client.transactions.listAutoPagingIterator({ limit: 100 })) {
	console.log(tx.id);
}

Reembolsar transação Pix In

const refunded = await client.transactions.refund(
	"id-da-transacao",
	{ amount: 500, reason: "requested_by_customer" },
	{ idempotencyKey: "idem-refund-001" },
);

console.log(refunded.data);