trexology/xero-laravel

Xero Service Provider for Laravel 5

v3.0.4 2016-04-01 06:54 UTC

This package is auto-updated.

Last update: 2024-12-09 21:04:44 UTC


README

A simple Laravel 5 service provider for including the PHP Xero API.

No longer maintained

Please note the PHP-Xero wrapper library used by this service provider is no longer under active development. All development effort is going into the XeroOAuth-PHP library.

We will review this after Laravel 5 has been released and likely leave this active (but unsupported) for anyone still using it for their Laravel 4 apps.

Installation

The Xero Service Provider can be installed via Composer by requiring the Trexology/xero-laravel package in your project's composer.json.

{
    "require": {
        "trexology/xero-laravel": "^3.0",
    },
}

Usage

To use the Xero Service Provider, you must register the provider when bootstrapping your Laravel application.

Use Laravel Configuration

Create a new config/xero.php configuration file with the following options:

return [
    'key'           => '<your-xero-key>',
    'secret'        => '<your-xero-secret>',
    'publicPath'    => '../config/xero/publickey.cer',
    'privatePath'   => '../config/xero/privatekey.pem',
    'format'        => 'json'
];

Find the providers key in config/app.php and register the Xero Service Provider.

    'providers' => [
        // ...
        'Trexology\XeroLaravel\XeroLaravelServiceProvider',
    ]

Find the aliases key in config/app.php and add in our Xero alias.

    'aliases' => [
        // ...
        'XeroLaravel'     => 'Trexology\XeroLaravel\Facades\XeroLaravel',
    ]

Setting up the application

Create public and private keys, and save them in /config/xero/ as publickey.cer and privatekey.pem.

For more info on setting up your keys, check out the Xero documentation

Example Usage

$contact = [
    [
        "Name"        => $user['company']['name'],
        "FirstName"   => $user['firstname'],
        "LastName"    => $user['surname'],
    ]
];

$xero_contact = XeroLaravel::Contacts($contact);

Reference