naviocean/laravel-braintree

Braintree Service Provider for Laravel 5

dev-master 2015-12-07 13:39 UTC

This package is not auto-updated.

Last update: 2024-11-09 19:16:14 UTC


README

Installation

1. Setup vendor

Enter command

"composer required naviocean/laravel-braintree:dev-master"
Other way

In your Laravel project's composer.json file, add naviocean/laravel-braintree as a dependency in the require object:

"naviocean/laravel5-braintree": "dev-master"

You do not need to add any other dependencies, as naviocean/laravel-braintree loads in the other dependencies automatically.

Finally, do a composer update.

2. Config App

Once installed, add the ServiceProvider to your provider array within config/app.php:

'providers' => [
	....
	/*
	 * Braintree Service Provider
	 */
    'NaviOcean\Laravel\BraintreeServiceProvider',
]

Configuration

To publish a the package configuration file, run:

php artisan vendor:publish

Then open config/braintree.php to setup your environment and keys:

Usage

Once setup, you can use the Braintree PHP classes as spelled out in the documentation.

braintree.js (v2)

If you are using braintree.js (v2), then you can easily output a generated client token using '@braintreeClientToken'.

Below is an example:

<script src="https://js.braintreegateway.com/v2/braintree.js"></script>
<script>
	braintree.setup("@braintreeClientToken", "<integration>", options);
</script>

braintree.js (v1)

If you are using the lagacy version braintree.js (v1), you can output your client side encryption key into your blade views.

The service provider extends the blade view to allow you to use the '@braintreeClientSideEncryptionKey' to output the CSE Key from your config file.

Below is an example.

<script type="text/javascript" src="https://js.braintreegateway.com/v1/braintree.js"></script>
<script type="text/javascript">
    var braintree = Braintree.create("@braintreeClientSideEncryptionKey");
    ...
</script>

Credits

Thanks to the bradleyboy/laravel-braintree package. I used it as a base and converted it into Laravel 5.