Braintree Service Provider for Laravel 5
"composer required naviocean/laravel-braintree:dev-master"
In your Laravel project's composer.json file, add
naviocean/laravel-braintree as a dependency in the require object:
You do not need to add any other dependencies, as
naviocean/laravel-braintree loads in the other dependencies automatically.
Finally, do a
Once installed, add the ServiceProvider to your provider array within
'providers' => [ .... /* * Braintree Service Provider */ 'NaviOcean\Laravel\BraintreeServiceProvider', ]
To publish a the package configuration file, run:
php artisan vendor:publish
config/braintree.php to setup your environment and keys:
Once setup, you can use the Braintree PHP classes as spelled out in the documentation.
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>
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.
Thanks to the bradleyboy/laravel-braintree package. I used it as a base and converted it into Laravel 5.