Confianca no webhook

Verifique o evento antes de atualizar o pedido.

A XPayr assina os payloads de webhook com o seu segredo. Guarde o corpo bruto, verifique X-XPayr-Signature e processe o evento de forma idempotente.

Cabecalhos a ler

  • X-XPayr-Signature: Assinatura HMAC SHA-256 com o prefixo sha256=.
  • X-XPayr-Event: tipo de evento como payment.completed.
  • X-XPayr-Delivery: identificador de entrega/evento quando disponivel.

Trechos de Verificação Multilíngues

import crypto from "node:crypto";

export function verifyXPayrWebhook(rawBody, signatureHeader, secret) {
  const received = String(signatureHeader || "").replace(/^sha256=/, "");
  const expected = crypto
    .createHmac("sha256", secret)
    .update(rawBody)
    .digest("hex");

  return crypto.timingSafeEqual(
    Buffer.from(received, "hex"),
    Buffer.from(expected, "hex")
  );
}

Eventos a tratar

No minimo, trate payment.completed, payment.failed, payment.expired, test.webhook. Use o ID da sessao e o seu proprio ID de pedido nos metadados para reconciliar.

SDKs Oficiais no NPM (v0.2.0) e Servidor MCP Remoto

Integre Mais Rápido com Pacotes Oficiais da XPayr e MCP sem Instalação

Instale @xpayr/node-sdk (v0.2.0), @xpayr/payment-evidence (v0.2.0), @xpayr/extension-kit (v0.2.0)ou @xpayr/mcp-server (v1.0.0) pelo NPM, ou execute chamadas de ferramentas JSON-RPC 2.0 ao vivo via POST https://xpayr.com/api/mcp.

Playground MCP ao Vivo (/tools/mcp-playground) Verificador de Licenças ES256 Simulador de Políticas para Agentes de IA Testador de Webhook HMAC-SHA256 mcp.xpayr.com docs.xpayr.com api-docs.xpayr.com