mrjeanp/azul-php

该软件包已被弃用,不再维护。没有建议的替代软件包。

AZUL Web Services PHP库

dev-master 2019-12-17 05:57 UTC

This package is auto-updated.

Last update: 2023-07-17 14:12:13 UTC


README

任何使用过AZUL API的人都知道这个服务存在不一致性,这在开发过程中会带来很大的挫折。这个库可以帮助您避免大多数挫折。

文档也与AZUL的原始PDF文档进行了改进,文本组织得更好,API有交互式参考。

请参阅这个wiki以了解更多关于AZUL Webservices的信息。

安装

  1. 安装composer
  2. $ composer require mrjeanp/azul-php
  3. $ composer install

如何使用

<?php
require_once __DIR__."/vendor/autoload.php";

use Azul\Azul;
use Azul\AzulException;

try {
  $azul = new Azul;
  $azul->set('auth1', 'test'); // Auth1 otorgado por AZUL.
  $azul->set('auth2', 'test'); // Auth2 otorgado por AZUL.
  $azul->set('domain', 'pruebas'); // Entorno (pruebas|pagos)
  $azul->set('certificate_path', '/absolute/path/to/azul.crt');
  $azul->set('key_path', '/absolute/path/to/azul.key');
  
  $azul->Store = /* Merchant ID (MID) otorgado por AZUL */;
  
  // Ejecutar transacción
  $sale = $azul->sale([
    'CardNumber' => ...,
    'Expiration' => ...,
    'CVC' => ...,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
    'CustomOrderId' => 'SALE-1',
  ]);
  
  // Resultado de la transacción
  var_dump($sale);
}
catch (AzulException $e) {
  // Detalles del error
  var_dump($e->getDetails());
}

销售

使用卡或DataVault令牌的信息创建一个销售交易。

 $sale = $azul->sale([
    'CardNumber' => $cc_number,
    'Expiration' => $cc_exp,
    'CVC' => $cc_cvc,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
    'CustomOrderId' => 'SALE-1',
  ]);
  
  $sale = $azul->sale([
    'DataVaultToken' => $data_vault_token,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
    'CustomOrderId' => 'SALE-2',
  ]);

保留

使用卡或DataVault令牌的信息创建一个保留(待处理)交易。

 $hold = $azul->hold([
    'CardNumber' => $cc_number,
    'Expiration' => $cc_exp,
    'CVC' => $cc_cvc,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
    'CustomOrderId' => 'HOLD-1',
  ]);
  
  $hold = $azul->hold([
    'DataVaultToken' => $data_vault_token,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
    'CustomOrderId' => 'HOLD-2',
  ]);

取消

取消一个保留交易。

 $cancel = $azul->cancel([
   'CustomOrderId' => $hold->CustomOrderId
 ]);

发布

确认一个保留交易。

 $post = $azul->post([
    'AzulOrderId' => $hold->AzulOrderId,
    'OriginalDate' => $hold->DateTime,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
  ]);

验证

验证先前的交易(保留或销售)。

 $verify = $azul->verify([
    'CustomOrderId' => $sale->CustomOrderId
  ]);

退款

创建一个退款交易。

 $refund = $azul->refund([
    'AzulOrderId' => $sale->AzulOrderId
    'OriginalDate' => $sale->DateTime,
    'Amount' => 2000.00,
    'Itbis' => 1000.00,
  ]);

创建令牌

创建一个DataVault令牌。

 $created = $azul->createToken([
    'CardNumber' => $cc_number,
    'Expiration' => $cc_exp,
    'CVC' => $cc_cvc,
  ]);

删除令牌

删除一个DataVault令牌。

 $deleted = $azul->deleteToken([
    'DataVaultToken' => $created->DataVaultToken
  ]);

测试

为了运行测试,创建一个名为test.env的文件,并将test.env.example的内容复制到该文件中,然后使用你自己的环境值替换相应的值。

执行

$ ./vendor/bin/phpunit

© MIT许可证