tuyakhov/yii2-braintree Braintree for Yii2



Integrate a credit card payment form with Braintree's API into Yii2. Inspired by braintreeapi

Latest Stable Version Scrutinizer Code Quality Code Coverage Build Status Total Downloads


The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist tuyakhov/yii2-braintree "*"

or add

"tuyakhov/yii2-braintree": "*"

to the require section of your composer.json file.


You should add Braintree component to your yii config first:

'components' => [
    'braintree' => [
        'class' => 'tuyakhov\braintree\Braintree',
        'merchantId' => 'YOUR_MERCHANT_ID',
        'publicKey' => 'YOUR_PUBLIC_KEY',
        'privateKey' => 'YOUR_PRIVATE_KEY',

Once the extension is installed, simply use it in your code by :

BraintreeForm provide all basic operations for sales and stores customer info. Operation name equals scenario name. Available scenarios:

creditCard - create a credit card doc
address - create an address doc
customer - create a customer doc
sale - create a transaction doc
saleFromVault - create a transaction from your Vault doc

Action example:

public function actionSale() {
    $model = new BraintreeForm();
    if ($model->load(Yii::$app->request->post()) && $model->send()) {
        // do something
    return $this->render('purchase', ['model' => $model]);

Form widget for your view:

    <?php $form = \tuyakhov\braintree\ActiveForm::begin() ?>
    <?= $form->field($model, 'creditCard_number'); ?>
    <?= $form->field($model, 'creditCard_cvv'); ?>
    <?= $form->field($model, 'creditCard_expirationDate')->widget(\yii\widgets\MaskedInput::className(), [
           'mask' => '99/9999',
       ]) ?>
    <?= $form->field($model, 'amount'); ?>
    <?= \yii\helpers\Html::submitButton()?>
    <?php \tuyakhov\braintree\ActiveForm::end(); ?>


GitHub Stars
GitHub Forks



1.0.2 is the latest of 2 releases

MIT license
4 github stars & 9 github forks
0 downloads in the last day
4 downloads in the last 30 days
226 total downloads