Skip to content

Webhooks de entrada — /webhook e /sicrediv2 (descontinuado)

DESCONTINUADO

Endpoints ligados aos módulos fora da API v1. Continuam funcionando, mas não devem ser usados como base de integrações novas.

Estes endpoints são chamados pelos bancos e gateways (Sicredi, Sicoob, Stripe, Pagmaxx, Ioniq e o gateway de link de pagamento), não pelo integrador. Servem para notificar a FastGivr de que um Pix foi recebido, um boleto foi liquidado, um Pix de saída foi confirmado, etc.

  • Auth: nenhuma no roteamento (🌐). A validação de origem/assinatura, quando existe, é feita dentro de cada controlador. A maioria aceita qualquer verbo (Route::any), embora o provedor use POST.
  • Corpo: definido pelo provedor externo — não há um contrato próprio da FastGivr.
  • Resposta: curta e sempre rápida (2xx) para o provedor não re-tentar. Corpo típico "ok", "true" ou { "success": true }.
  • Para os webhooks que a FastGivr envia para o seu sistema, veja Webhooks recebidos.

POST /webhook/payment 🌐

Notificação de pagamento de um Payment de link de pagamento. Entrada (corpo JSON): reference_id (obrigatório), status (paid/failed/canceled), transaction_id. Saída: 200 { "message": "Webhook processado" } ou { "message": "Pagamento já processado" } (idempotente por reference_id + status). 422 { "message": "Payload inválido" }; 404 { "message": "Pagamento não encontrado" }; 500 { "message": "Erro interno" }.

POST /webhook/fast-givr 🌐

Concilia uma transação de cartão pelo NSU (nsu-id do payload = json->rrn da cobrança). Entrada (corpo JSON): nsu-id (obrigatório) + dados do adquirente. Saída: 200 { "status": "success", ... }. 400 se nsu-id ausente; 404 se a cobrança não for encontrada (registrado em log).


Sicredi

ANY /webhook/sicredi 🌐

Callback legado de Pix in do Sicredi (ProcessPaymentWebhookController@sicredi). Entrada: payload do Sicredi. Saída: 200 com JSON de status.

ANY /webhook/sicredi/pix · /sicrediv2/pix-in 🌐

Pix recebido (Pix in) no Sicredi. Cria/atualiza o Pix, a transação e a cobrança; dispara os webhooks do cliente. Entrada: payload do Sicredi. Saída: 200 { "success": true } (ou equivalente).

ANY /webhook/sicredi/out · /sicrediv2/pix-out 🌐

Confirmação de Pix enviado (Pix out) pelo Sicredi. Atualiza o status do saque/transação. Entrada: payload do Sicredi. Saída: 200.

ANY /webhook/sicredi/boleto · /sicrediv2/boleto 🌐

Liquidação/baixa de boleto no Sicredi. Atualiza boleto, transação e cobrança. Entrada: payload do Sicredi. Saída: 200 com JSON de status.

ANY /sicrediv2/boletos 🌐

Processamento em lote de boletos retornados pelo Sicredi (processBoletos). Entrada: payload do Sicredi (lista). Saída: 200 com JSON de status.

ANY /sicrediv2/boleto-payment · /sicrediv2/boleto-receipt 🌐

Indisponível

As rotas estão registradas, mas os métodos sicrediBoletoPayment / sicrediBoletoReceiptnão existem no controlador — a chamada resulta em erro. Não use.


Sicoob

ANY /webhook/sicoob/pix-in/{type?} 🌐

Pix recebido no Sicoob. type (opcional no path) diferencia variações de payload. Idempotente por bank_id + txid. Enfileira ProcessSicoobPixInJob. Entrada: payload do Sicoob (pix[].txid, valor, e2e, ...). Saída: 200 "ok".

ANY /webhook/sicoob/boleto 🌐

Liquidação de boleto no Sicoob. Entrada: payload do Sicoob. Saída: 200 "ok".

ANY /webhook/sicoob/pix-out 🌐

Confirmação de Pix enviado pelo Sicoob. Entrada: payload do Sicoob. Saída: 200 "ok".


Outros provedores

ANY /webhook/stripe 🌐

Recebe eventos do Stripe (ProcessWebhookStripe@index). Entrada: evento do Stripe. Saída: 201 "true".

ANY /webhook/pagmaxx 🌐

Recebe eventos do Pagmaxx (ProcessWebhookPagmaxx@index). Entrada: evento do Pagmaxx. Saída: 201 "true".

ANY /webhook/ioniq 🌐

Registra um webhook Pix do provedor Ioniq (grava um Webhook PENDING com o payload e o IP de origem). Entrada: payload do Ioniq. Saída: 201 { "success": true }.


Rotas inativas

Registradas em routes/api.php, mas apontam para métodos que não existem mais — a chamada retorna erro:

RotaMotivo
ANY /webhook/sandboxProcessPaymentWebhookController@sandbox está comentado
POST /webhook/justaProcessPaymentWebhookController@linkPagamentoJusta não existe
ANY /sicrediv2/boleto-paymentSicrediController@sicrediBoletoPayment não existe
ANY /sicrediv2/boleto-receiptSicrediController@sicrediBoletoReceipt não existe