tustin/laravel-whmcs

Laravel WHMCS API interface

0.2.6 2020-09-07 22:38 UTC

This package is not auto-updated.

Last update: 2024-11-03 13:36:44 UTC


README

Latest Stable Version Total Downloads License

An interface for interaction with the WHMCS API in Laravel.

Installation

Install the package through Composer.

Run the Composer require command from the Terminal:

composer require darthsoup/laravel-whmcs

Run composer update to pull in the files.

After Laravel 5.5

You don't have to do anything else here.

Before Laravel 5.5

Now all you have to do is add the service provider of the package and alias the package. To do this, open your config/app.php file.

Add a new line to the providers array:

DarthSoup\Whmcs\WhmcsServiceProvider::class

And optionally add a new line to the aliases array:

'Whmcs' => DarthSoup\Whmcs\Facades\Whmcs::class,

From the command-line run:

php artisan vendor:publish --provider=DarthSoup\Whmcs\WhmcsServiceProvider

Then open config\whmcs.php to insert your WHMCS api credentials.

Now you can use the WHMCS API in your Laravel project.

Lumen

Copy the config file from the package to in your config directory:

cp vendor/darthsoup/laravel-whmcs/config/whmcs.php config/whmcs.php

Then open config\whmcs.php to insert your WHMCS api credentials.

To finish this, register the config file and the service provider in bootstrap/app.php:

$app->configure('whmcs');
$app->register(DarthSoup\Whmcs\WhmcsServiceProvider::class);

Now you can use the WHMCS API in your Lumen project.

Usage

You can call your WHMCS API directly by calling the \WHMCS::{WHMCSAPIFUNCTION} facade. This also works with custom API functions contained in your WHMCS API folder.

Examples

Obtain a list of client purchased products

\Whmcs::GetClientsProducts([
    'clientid' => '12345'
])

Retrieve a specific invoice

\Whmcs::GetInvoice([
    'invoiceid' => '1337'
])

If you dont use the Facade, you can call it with the app() helper.

$whmcs = app('whmcs');
$whmcs->execute('GetInvoice', [
    'invoiceid' => '1337'
]);

Support

Please open an issue in github

License

This package is released under the MIT License. See the bundled LICENSE file for details.