jlcd/api-cielo30

Cielo 3.0 API客户端

0.1.0 2017-04-15 02:50 UTC

This package is not auto-updated.

Last update: 2024-09-15 01:58:48 UTC


README

安装

通过composer: composer require jlcd/api-cielo30

如果您正在使用Laravel (5+),建议使用为此客户端专门创建的Provider: jlcd/api-cielo30-laravel

最小PHP版本: 5.6

配置

商户ID商户密钥环境应直接在Cielo类构造函数中传递。

例如:

<?php

use jlcd\Cielo\Cielo;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

CIELO_ENVIRONMENT可接受以下值

  • sandbox
  • production

使用方法

目前在此客户端中开发的方法有:

  • payment: 执行支付(仅限信用卡或信用卡令牌)
  • cancelPayment: 取消已执行的支付
  • capturePayment: 捕获已执行的支付
  • tokenizeCreditCard: 信用卡令牌化

执行支付

<?php

use jlcd\Cielo\Cielo;
use jlcd\Cielo\Resources\CieloPayment;
use jlcd\Cielo\Resources\CieloCreditCard;
use jlcd\Cielo\Resources\CieloCustomer;
use jlcd\Cielo\Resources\CieloOrder;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

$payment = new CieloPayment();
$payment->setValue(1541);

$creditCard = new CieloCreditCard();
$creditCard->setCardNumber('1234432112344321');
$creditCard->setExpirationDate('12/2018');
$creditCard->setBrand('visa');
$creditCard->setSecurityCode('888');
$creditCard->setHolder('Fulano');
$payment->setCreditCard($creditCard);

$order = new CieloOrder();
$order->setId('123'); // Numero de identificacao personalizado

$customer = new CieloCustomer();
$customer->setName('Fulano');

$payment = $cielo->payment($payment, $order, $customer);

var_dump($payment);

取消支付

<?php

use jlcd\Cielo\Cielo;
use jlcd\Cielo\Resources\CieloPayment;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

$payment = new CieloPayment();
$payment->setId('PAYMENT_ID'); // Id retornado de um pagamento realizado na Cielo
$payment->setValue(1541);

$payment = $cielo->cancelPayment($payment);

var_dump($payment);

捕获支付

<?php

use jlcd\Cielo\Cielo;
use jlcd\Cielo\Resources\CieloPayment;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

$payment = new CieloPayment();
$payment->setId('PAYMENT_ID'); // Id retornado de um pagamento realizado na Cielo
$payment->setValue(1541);

$payment = $cielo->capturePayment($payment);

var_dump($payment);

令牌化信用卡

<?php

use jlcd\Cielo\Cielo;
use jlcd\Cielo\Resources\CieloCreditCard;
use jlcd\Cielo\Resources\CieloCustomer;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

$creditCard = new CieloCreditCard();
$creditCard->setCardNumber("1234432112344321");
$creditCard->setHolder("Comprador T Cielo");
$creditCard->setExpirationDate("12/2018");
$creditCard->setBrand("Visa");

$customer = new CieloCustomer();
$customer->setName('Fulano');

$token = $cielo->tokenizeCreditCard($creditCard, $customer);

var_dump($token);

通过信用卡令牌执行支付

<?php

use jlcd\Cielo\Cielo;
use jlcd\Cielo\Resources\CieloPayment;
use jlcd\Cielo\Resources\CieloCreditCard;
use jlcd\Cielo\Resources\CieloCustomer;
use jlcd\Cielo\Resources\CieloOrder;

$cielo = new Cielo(CIELO_ID, CIELO_KEY, CIELO_ENVIRONMENT);

$payment = new CieloPayment();
$payment->setValue(1541);

$creditCard = new CieloCreditCard();
$creditCard->setBrand('visa');
$creditCard->setToken('TOKEN_DO_CARTAO'); // Gerado via tokenizeCreditCard
$creditCard->setSecurityCode('888');
$payment->setCreditCard($creditCard);

$order = new CieloOrder();
$order->setId('123'); // Numero de identificacao personalizado

$customer = new CieloCustomer();
$customer->setName('Fulano');

$payment = $cielo->payment($payment, $order, $customer);

var_dump($payment);

限制

最小PHP版本: 5.6

CieloCreditCard::brand可接受值如https://developercielo.github.io/Webservice-3.0/?json#criando-uma-transação-simples中的CreditCard.Brand字段所示。

对于建议或报告错误,请使用jlcd/api-cielo30/issues