jhernandes / ipag-webservice-1.0-php
用于PHP的iPag webservice 1.0集成包
v1.4.1
2018-03-06 12:46 UTC
Requires
- php: >=5.3.0
README
#此SDK已弃用!请访问: iPag SDK PHP
IPAG SDK PHP
PHP与iPag 1.0 Webservice的集成
依赖关系
- PHP >= 5.4
安装
如果已经有一个composer.json文件,只需将以下依赖项添加到您的项目中
"require": { "jhernandes/ipag-webservice-1.0-php" }
添加依赖项到composer.json后,只需执行
composer install
或者,您可以直接在终端中执行
composer require jhernandes/ipag-webservice-1.0-php
##端点
操作
支付方法
字段映射
<?php $ipag = new Ipag(@ID_IPAG, @ENDPOINT); $order = $ipag->order(@OPERACAO, @URL_RETORNO, @NUMERO_PEDIDO, @VALOR, @PARCELAMENTO); //Para adicionar vencimento (BOLETO) // DD/MM/AAAA //$order->setExpiry('21/10/2017'); $card = $ipag->card(@NUMERO_CARTAO, @NOME_NO_CARTAO, @VENCIMENTO_MES, @VENCIMENTO_ANO, @CVV); $payment = $ipag->payment(@METODO, $card); $customer = $ipag->customer(@NOME, @EMAIL, @CPF/CNPJ, @TELEFONE); $address = $ipag->address(@LOGRADOURO, @NUMERO, @BAIRRO, @COMPLEMENTO, @CEP, @CIDADE, @UF, @PAIS); $cart = $ipag->cart()->addProduct($ipag->product(@NOME, @QUANTIDADE, @PRECO_UNITARIO, @SKU/CODIGO)); $customer->setAddress($address); $tx = $ipag->transaction($order, $payment, $customer, $cart);
使用信用卡的交易示例(支付请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','20161109003', 1.00, '1'); $card = $ipag->card('4556657802832607', 'SENHOR TESTE', '10', '21', '123'); $payment = $ipag->payment(Payment::CREDIT_VISA, $card); $customer = $ipag->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627'); //OPCIONAL ENDEREÇO $address = $ipag->address('Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR'); $customer->setAddress($address); //OPCIONAL PRODUTOS // PRODUTO (NOME, QUANTIDADE, PREÇO UNITÁRIO, SKU/CÓDIGO); $cart = $ipag->cart() ->addProduct($ipag->product('DVD Rei Leão', 2, 29.00, 'ART785634')) ->addProduct($ipag->product('DVD MAD MAX', 1, 29.00, 'ART7851234')) ->addProduct($ipag->product('BOX DVDs MATRIX', 3, 29.00, 'ART781000')) ->addProduct($ipag->product('DVD TOY STORY', 1, 29.00, 'ART783333')); $tx = $ipag->transaction($order, $payment, $customer, $cart); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
使用支票的交易示例(支付请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','20161109003', 1.00, '1'); //Para adicionar vencimento (BOLETO) // DD/MM/AAAA //$order->setExpiry('21/10/2017'); $payment = $ipag->payment(Payment::BANKSLIP_BB); $customer = $ipag->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627'); $address = $ipag->address('Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR'); $customer->setAddress($address); $tx = $ipag->transaction($order, $payment, $customer); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
如果成功,支票链接将在 $response->getUrlAuthentication() 中
查询交易示例(查询请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_CONSULT, 'http://minhaurl.dev'); //Caso não tenha o TID e tenha o OrderId (Número do pedido) // $order = $ipag->order(Order::OPERATION_CONSULT, 'http://minhaurl.dev', '20161109003'); $tx = $ipag->transaction($order); $tx->setTid('100699306900087B7BDA'); $response = $ipag->consultRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
捕获交易示例(捕获请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_CAPTURE, 'http://minhaurl.dev'); $tx = $ipag->transaction($order); //Para capturar é necessário ter um TID $tx->setTid('100699306900087B7BDA'); $response = $ipag->captureRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
取消交易示例(取消请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_CANCEL, 'http://minhaurl.dev'); $tx = $ipag->transaction($order); //Para cancelar é necessário informar o TID $tx->setTid('100699306900087B7BDA'); $response = $ipag->cancelRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
订阅交易示例(新功能)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Subscription; use Ipag\Transaction; $ipag = new Ipag('meu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','201700001', 2.00, '1'); $card = $ipag->card('4556657802832607', 'SENHOR TESTE', '10', '21', '123'); $payment = $ipag->payment(Payment::CREDIT_VISA, $card); $customer = $ipag ->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627') ->setAddress( $ipag->address( 'Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR' ) ); $tx = $ipag ->transaction($order, $payment, $customer) ->setSubscription( $ipag //Assinatura mensal com inicio em 5 de janeiro de 2017 ->subscription(Subscription::INTERVAL_MONTH,1,'05/01/2017') //Valor que será cobrado na assinatura após o período trial (promocional) ->setAmount(2.00) //Período trial mensal ->setTrialFrequency(1) ->setTrialCycle(3) //Valor que será cobrado no período trial ->setTrialAmount(1.20) //Primeira cobranca no ato da criação da transação será de R$1,00 apenas autorizado (não irá debitar do cartão de crédito do cliente) ->setTrial(true) ); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
使用分割(信用卡)的交易示例(支付请求)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $ipag->setPartner('id_parceiro'); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','20161109003', 1.00, '1'); $card = $ipag->card('4556657802832607', 'SENHOR TESTE', '10', '21', '123'); $payment = $ipag->payment(Payment::CREDIT_VISA, $card); $customer = $ipag->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627'); $address = $ipag->address('Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR'); $customer->setAddress($address); $tx = $ipag->transaction($order, $payment, $customer); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
使用生成令牌的信用卡的交易示例(一键)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','20161109003', 1.00, '1'); $card = $ipag->card('4556657802832607', 'SENHOR TESTE', '10', '21', '123'); //Adicione esse parametro para que o token do cartão seja gerado para futuras compras utilizando o token. $card->setSave(true); $payment = $ipag->payment(Payment::CREDIT_VISA, $card); $customer = $ipag->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627'); $address = $ipag->address('Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR'); $customer->setAddress($address); $tx = $ipag->transaction($order, $payment, $customer); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;
使用令牌的交易示例(一键支付)
<?php require 'vendor/autoload.php'; use Ipag\Ipag; use Ipag\Order; use Ipag\Payment; use Ipag\Transaction; $ipag = new Ipag('seu_id_ipag', Ipag::TEST); $order = $ipag->order(Order::OPERATION_PAYMENT, 'http://minhaurl.dev','20161109003', 1.00, '1'); $card = $ipag->card('KLJKLA-KUYAT-EBAST-YPLGV'); $payment = $ipag->payment(Payment::CREDIT_VISA, $card); $customer = $ipag->customer('SENHOR TESTE', 'senhor@teste.com.br', '12312312333','1839161627'); $address = $ipag->address('Rua Teste', '123', 'Bairro Teste', '', '20000-000', 'São Paulo', 'SP', 'BR'); $customer->setAddress($address); $tx = $ipag->transaction($order, $payment, $customer); $response = $ipag->paymentRequest($tx); if (!$response->hasError()) { var_dump(print_r($response, true)); exit; } echo $response->getErrorMessage(); exit;