josmarh/jvzoo-ipn

A Laravel package for handling JVZoo Instant Payment Notifications (IPN) with clean event-driven architecture.

Maintainers

Package info

github.com/josmarh/jvzoo-ipn

pkg:composer/josmarh/jvzoo-ipn

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0 2026-05-16 12:20 UTC

This package is auto-updated.

Last update: 2026-05-16 12:30:34 UTC


README

A Laravel package for handling JVZoo Instant Payment Notifications (IPN) with clean event-driven architecture.

Features

  • JVZoo IPN webhook handling
  • Signature verification
  • Duplicate transaction protection (idempotent processing)
  • Event-driven architecture
  • Transaction logging
  • Configurable routes
  • Laravel auto-discovery support

Installation

composer require josmarh/jvzoo-ipn

Publish Config

php artisan vendor:publish --tag=jvzoo-ipn-config

How It Works

  1. JVZoo sends IPN request
  2. Package verifies signature
  3. Transaction is stored
  4. Event is dispatched
  5. Your application handles user logic

Events

SaleReceived

Triggered when a successful payment occurs.

RefundReceived

Triggered when a refund occurs.

Example Listener

Event::listen(SaleReceived::class, function ($event) {
    // Create user, assign plan, etc.
});

Configuration

return [
    'secret_key' => env('JVZOO_SECRET'),
    'route_prefix' => 'jvzoo',
];

Webhook URL

POST https://your-domain.com/jvzoo/ipn

Security

This package verifies JVZoo IPN signatures before processing any request to ensure data integrity and prevent unauthorized requests.