Braintree PHP Client Library
The Braintree PHP library provides integration access to the Braintree Gateway.
Dependencies
PHP version >= 5.4.0 is required.
The following PHP extensions are required:
- curl
- dom
- hash
- openssl
- xmlwriter
Quick Start Example
<?php
require_once 'PATH_TO_BRAINTREE/lib/Braintree.php';
Braintree_Configuration::environment('sandbox');
Braintree_Configuration::merchantId('your_merchant_id');
Braintree_Configuration::publicKey('your_public_key');
Braintree_Configuration::privateKey('your_private_key');
$result = Braintree_Transaction::sale([
'amount' => '1000.00',
'paymentMethodNonce' => 'nonceFromTheClient',
'options' => [ 'submitForSettlement' => true ]
]);
if ($result->success) {
print_r("success!: " . $result->transaction->id);
} else if ($result->transaction) {
print_r("Error processing transaction:");
print_r("\n code: " . $result->transaction->processorResponseCode);
print_r("\n text: " . $result->transaction->processorResponseText);
} else {
print_r("Validation errors: \n");
print_r($result->errors->deepAll());
}
HHVM Support
The Braintree PHP library will run on HHVM >= 3.4.2.
Legacy PHP Support
Version 2.40.0 is compatible with PHP 5.2 and 5.3. You can find it on our releases page.
Documentation
Testing
The unit specs can be run by anyone on any system, but the integration specs are meant to be run against a local development server of our gateway code. These integration specs are not meant for public consumption and will likely fail if run on your system. To run unit tests use rake: rake test:unit
.
The benefit of the rake
tasks is that testing covers default hhvm
and php
interpreters. However, if you want to run tests manually simply use the following command:
phpunit tests/unit/
Open Source Attribution
A list of open source projects that help power Braintree can be found here.
License
See the LICENSE file.