kjellberg/laravel-jvzoo

There is no license information available for the latest version (1.0.2) of this package.

JVZoo IPN for Laravel 5

This package's canonical repository appears to be gone and the package has been frozen as a result.

1.0.2 2016-05-11 02:47 UTC

This package is not auto-updated.

Last update: 2022-01-14 06:35:40 UTC


README

Installation

1. Include laravel-jvzoo as a dependency in composer.json:

$ composer require kjellberg/laravel-jvzoo

2. Add the ServiceProvider to your provider array within config/app.php

'providers' => [
	...
	Kjellberg\Jvzoo\JvzooServiceProvider::class,
	...
]

3. Add your JVZoo API secret key to .env

JVZOO_KEY=*************

Usage

Add your IPN url to your JVZoo product

http://yourdomain.com/jvzoo-ipn

Listen to JVZoo events by adding event listeners to routes.php

Event::listen('jvzoo', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.sale', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.bill', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.rfnd', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.cgbk', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.insf', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.cancel.rebill', function( $data ) { /* INSERT CODE HERE */ });
Event::listen('jvzoo.uncancel.rebill', function( $data ) { /* INSERT CODE HERE */ });

Example

Event::listen('jvzoo.sale', function( $data ) { 

	$password = str_random(12);

	\App\User::create([
        'name' => $data['ccustname'],
        'email' => $data['ccustemail'],
        'password' => bcrypt($password),
    ]);

});

Event::listen('jvzoo.cancel.rebill', function( $data ) { 

	if ($user = \App\User::where('email', '=', $data['ccustemail'])->first())
		$user->delete();

});

That's it!

Happy selling!