Skip to content

Eventos e Listeners

Vinicius Silva edited this page Oct 6, 2022 · 2 revisions

Utilizar Eventos e Listeners foi a forma de comunicação escolhida no pacote para notificar sua aplicação quando uma alteração de status de pagamento acontece na API do PagTesouro.

O fluxo de comunicação segue a seguinte ordem:

  1. PagTesouro API faz POST para sua aplicação com ID do pagamento
  2. Sua aplicação recebe o POST valida token Bearer, dispara evento WebHookReceived
  3. Listener CheckPaymentStatus recebe o evento com id do pagamento e consulta status e dispara o evento PaymentStatusChanged com dados atualizados
  4. Você deve implementar um listener para o evento PaymentStatusChanged e seguir com a regra de negócio da sua aplicação

O pacote implementa todo o fluxo até o passo 3.

Seguindo a premissa de flexibilidade, você pode customizar os eventos que desejar.

    'events' => [
        'webhook_received'  => Vsilva472\PagTesouro\Events\WebHookReceived::class,
        'status_changed'    => Vsilva472\PagTesouro\Events\PaymentStatusChanged::class,
    ],

    'listeners' => [
        'check_payment_status' => Vsilva472\PagTesouro\Listeners\CheckPaymentStatus::class
    ],

IMPORTANTE Nenhum evento será acionado caso você desative a funcionalidade de notificação deixando a env PAGTESOURO_URL_NOTIFICACAO vazia

Veja como configurar o Retorno Automático em sua respectiva seção.

Clone this wiki locally