pineplechainDocs

Guias

Acompanhar pagamentos

Como saber que o dinheiro chegou: status, consulta periódica e a prova na XRPL.

Ainda não há webhooks. Para saber que um link foi pago, consulte GET /invoices/{id}: cada consulta relê a XRPL, e a plataforma também confere tudo sozinha a cada 15 segundos.

Status de um link

StatusO que significa
openAguardando pagamento.
paidPago direto na sua carteira. É definitivo.
lockedPago com escrow; o valor está travado na XRPL.
releasing › releasedQuem pagou liberou o escrow; o XRP está na sua carteira.
refunding › refundedO prazo do escrow passou sem liberação; o valor voltou para quem pagou.
expiredPassou de expires_at sem pagamento.
cancelledVocê cancelou antes do pagamento.

Consultar até pagar

const API = "https://api.pineplechain.com/v1"
const headers = { "x-api-key": process.env.PINEPLECHAIN_API_KEY }

async function waitUntilPaid(id) {
  for (;;) {
    const link = await fetch(`${API}/invoices/${id}`, { headers }).then((r) => r.json())
    if (link.status === "paid" || link.status === "released") return link // pago
    if (["expired", "cancelled", "refunded"].includes(link.status)) throw new Error(link.status)
    await new Promise((r) => setTimeout(r, 3000))
  }
}

Intervalo

Consultar a cada 3 a 5 segundos acompanha o ritmo da XRPL e fica bem abaixo do limite de 120 chamadas por minuto.

A prova na XRPL

Quando o link é pago, o campo paid traz o hash da transação e o link do explorador. O valor em delivered é o que de fato chegou, conferido no ledger validado.

"paid": {
  "tx_hash": "9C1F…E4A2",
  "ledger_index": 91234567,
  "payer": "rH4kPz…9tQe",
  "delivered": { "value": "250", "asset": { "type": "XRP" } },
  "at": "2026-10-30T14:02:11.000Z",
  "explorer_url": "https://livenet.xrpl.org/transactions/9C1F…E4A2"
}

Algo errado nesta página? Fale com a gente.