soneritics/buckaroo 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

soneritics/buckaroo

Composer 安装命令:

composer require soneritics/buckaroo

包简介

Buckaroo Payment Services implementation

README 文档

README

Buckaroo payment provider implementation classes

Example

You can see a working example of the code in the Soneritics/Buckaroo-Example repository.

Sneak preview of the code example :-)

TransactionRequest (Start of the payment)

$gateway = new \Buckaroo\Gateways\Test;
$transactionRequest = new \Buckaroo\ServiceOperations\TransactionRequest;
$buckaroo = new \Buckaroo\Buckaroo($gateway, $websiteKey, $secretKey);

$transactionRequest
    ->setCurrency(new \Buckaroo\Currency\EUR)
    ->setPaymentMethod(new \Buckaroo\PaymentMethods\iDeal)
    ->setAmount(12.5)
    ->setInvoiceNumber('Test-' . time())
    ->setReturnURL($returnURL)
    ->setCancelURL($returnURL)
    ->setRejectURL($returnURL)
    ->setErrorURL($returnURL);

$response = $buckaroo->performServiceOperation($transactionRequest);

try {
    $redirectURL = $response->getField('BRQ_REDIRECTURL');
    header("Location: {$redirectURL}");
} catch (Exception $ex) {
    echo 'ERROR: Something went wrong: ' . $ex->getMessage();
}

TransactionStatus (return page)

try {
    $transactionStatusResponse = new \Buckaroo\Response\TransactionStatusResponse($_POST, $secretKey);

    if ($transactionStatusResponse->getStatus() === \Buckaroo\Status::SUCCESS) {
        $order = $transactionStatusResponse->getInvoiceNumber();
        $currency = $transactionStatusResponse->getCurrency();
        $amount = $transactionStatusResponse->getAmount();
        echo "The order {$order} with amount {$currency} {$amount} has been paid.";
    } elseif ($transactionStatusResponse->getStatus() === \Buckaroo\Status::PENDING_PROCESSING) {
        $paymentCode = $transactionStatusResponse->getPaymentCode();
        echo "The order is pending. Fetch transaction details later for order with payment code {$paymentCode}.";
    } else {
        echo 'Order has not been paid for.';
    }
} catch (\Buckaroo\Exceptions\InvalidSignatureException $e) {
    echo 'Signature does not match, possible break in attempt.';
}

统计信息

  • 总下载量: 22
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-06-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固