Skip to content
E Webhook Package Documentation

Stripe Like Provider

Stripe-like provider example

This example shows a fictional payment provider that signs requests with an HMAC signature.

Provider

class StripeLikeProvider extends Provider
{
    public function eventName(IncomingWebhook $webhook): string
    {
        return $webhook->payload('type');
    }

    public function signatureHeader(): string
    {
        return 'X-Stripe-Like-Signature';
    }
}

Handler

class InvoicePaidHandler implements WebhookHandler
{
    public function handle(WebhookEvent $event): void
    {
        $invoiceId = $event->data('invoice.id');

        Invoice::whereProviderId($invoiceId)->markAsPaid();
    }
}

Event mapping

'events' => [
    'payments.invoice.paid' => App\Webhooks\Handlers\InvoicePaidHandler::class,
],

© Webhook Package Documentation