nikjaysix / laravel-chargify
Laravel service provider for the chargify API using the chargley chargify SDK v0.1.3.
Installs: 12 296
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 1
Open Issues: 0
Type:package
Requires
- php: >=5.4.0
- chargely/chargify-sdk-php: >=0.1.3
- illuminate/support: 4.*|5.*
This package is auto-updated.
Last update: 2024-11-21 21:24:45 UTC
README
This is a wrapper using the chargley chargify SDK v0.1.4. It creates a service provider and facade for autoloading into laravel.
How to Install
Laravel 5.+
-
Install the
nikjaysix/laravel-chargify
package$ composer require nikjaysix/laravel-chargify
-
Update
config/app.php
to activate the LaravelChargify package# Add `LaravelChargifyServiceProvider` to the `providers` array 'providers' => array( ... NikJaySix\LaravelChargify\LaravelChargifyServiceProvider::class, ) # Add the `LaravelChargifyFacade` to the `aliases` array 'aliases' => array( ... 'Chargify' => NikJaySix\LaravelChargify\LaravelChargifyFacade::class )
-
Generate a Chargify config file
$ php artisan vendor:publish
-
Update
app/config/chargify.php
with your chargify API credentialsreturn array( 'hostname' => '****.chargify.com', 'api_key' => 'chargify api key', 'shared_key' => 'chargify shared key' );
Example Usage
Creating subscriptions with v1 of the API
$chargify = App::make('chargify'); // $handle is the subscription handle created in chargify $new_subscription = $chargify->subscription() ->setProductHandle($handle) ->setCustomerAttributes([ 'first_name' => $user->first_name, 'last_name' => $user->last_name, 'email' => $user->email, 'reference' => $user->id ]) ->create(); if($new_subscription->isError()) { $errors = $new_subscription->getErrors(); // handle errors }
Retrieve a user's subscription
$chargify = App::make('chargify'); $subscription = $chargify->subscription(); // $user_subscription->subscription_id is the subscription ID generated by chargify $subscription->read($user_subscription->subscription_id); if($subscription->isError()) { $errors = $subscription->getErrors(); // handle errors } // store subscription data in session foreach ($subscription as $key => $value) { session(['subscription_' . $key => $value]); }