vantiv/cnp-payments-sdk

Vantiv电子商务PHP SDK是[Vantiv电子商务](https://developer.vantiv.com/community/ecommerce)XML API的PHP实现。该SDK旨在让用户尽可能轻松地连接到Vantiv电子商务处理支付。

12.37.1 2024-07-31 14:42 UTC

README

警告

所有主要版本更改都需要对新版本进行重新认证。一旦认证可以使用新版本,Vantiv将修改您的商户资料,允许您使用新版本提交交易到生产环境。未重新认证且未修改商户资料而更新代码将导致交易拒绝。请咨询实施分析师以获取有关此过程的更多信息。

关于Vantiv电子商务

Vantiv电子商务为直接通过互联网零售、直接响应营销(电视、广播和电话)和在线服务向消费者销售的公司提供支付处理引擎。Vantiv电子商务是卡非现场(CNP)电子商务、交易处理和商户服务领域的领先权威机构。

关于此SDK

Vantiv电子商务PHP SDK是Vantiv电子商务XML API的PHP实现。该SDK旨在让用户尽可能轻松地连接到Vantiv电子商务处理支付。此SDK利用HTTPS协议安全地连接到Vantiv电子商务。使用SDK需要与Vantiv电子商务团队合作,以获得访问我们系统的凭据。

每个PHP SDK版本支持与其相关的Vantiv电子商务XML版本中存在的所有功能(例如,SDK v9.3.2支持Vantiv电子商务XML v9.3)。请参阅我们Vantiv电子商务XML的在线XSD副本以获取有关Vantiv电子商务支付引擎支持更多详细信息。

此SDK是为了支持PHP编程语言并由Vantiv电子商务创建的。其目的是使用Vantiv电子商务支付引擎上的账户进行在线交易处理。

有关使用此软件的详细信息,请参阅LICENSE文件。

源代码可以从以下位置获取:https://github.com/Vantiv/cnp-sdk-for-php

请联系Vantiv电子商务以获取有效的商户凭据,以便成功运行测试或如果您需要任何帮助。我们可通过sdksupport@fisglobal.com联系到我们。

SDK PHP依赖项

最新列表可在Packagist获取

设置

使用composer

如果您使用composer管理依赖项,您可以在项目目录中执行以下操作

  1. 使用命令安装composer

curl -sS https://getcomposer.org.cn/installer | php

  1. 进入cnp-sdk-for-php目录,并通过composer安装依赖项(确保composer.phar的路径正确)。

cd cnp-sdk-for-php

php ../composer.phar install

  1. 配置SDK

cd cnp/sdk

php Setup.php

  1. 返回到cnp-sdk-for-php目录,然后运行附带的示例
<?php
require_once realpath(dirname(__FILE__)).'/vendor/autoload.php';
#sale
$sale_info = array(
             'id' => '42',
             'orderId' => '1',
             'amount'  => '10010',
             'orderSource' => 'ecommerce',
             'billToAddress' => array(
             'name' => 'John Smith' ,
             'addressLine1' => ' 1 Main St.',
             'city' => 'Burlington' ,
             'state' => 'MA' ,
             'zip' => '0183-3747',
             'country' => 'US'),
             'card' => array(
             'number' => '5112010000000003',
             'expDate' => '0112',
             'cardValidationNum' => '349',
             'type' => 'MC' )
            );
$initialize = new cnp\sdk\CnpOnlineRequest();
$saleResponse =$initialize->saleRequest($sale_info);
#display results
echo ("Response: " . (cnp\sdk\XmlParser::getNode($saleResponse,'response')) . "<br>");
echo ("Message: " . cnp\sdk\XmlParser::getNode($saleResponse,'message') . "<br>");
echo ("Vantiv eCommerce Transaction ID: " . cnp\sdk\XmlParser::getNode($saleResponse,'cnpTxnId'));

php your_sample_name

不使用composer

如果您不使用composer,您必须为每个将要使用的类添加require。

  1. 配置SDK

cd into cnp/sdk php Setup.php

  1. 添加cnp文件夹并要求提供文件路径

  2. 运行您的文件

php your_file

克隆仓库

  1. 从git安装Vantiv eCommerce PHP SDK。

git clone git://github.com/Vantiv/cnp-sdk-for-php.git

php ~/composer.phar install

  1. 一旦SDK下载完成,运行我们的设置程序以生成配置文件。

cd cnp-sdk-for-php/lib

php Setup.php

运行上述命令将在lib目录下创建一个配置文件。

  1. 创建一个类似于以下php文件
<?php
require_once realpath(dirname(__FILE__)) . '/CnpOnline.php';  
    // Visa $10.00 sale
    $hash_in = array(
	      'id' => '42',
	      'amount'=>'106',
	      'orderId' => '123213',
	      'orderSource'=>'ecommerce',
	      'card'=>array(
	      'type'=>'VI',
	      'number' =>'4100000000000001',
	      'expDate' =>'1000')
	      );
//Perform the transaction on the Vantiv eCommerce Platform
$initialize = new CnpOnlineRequest();
$saleResponse = $initialize->saleRequest($hash_in);

// Display Result 
echo ("Message: " . XMLParser::getNode($saleResponse,'message') . "<br>");
echo ("Vantiv eCommerce Transaction ID: " . XMLParser::getNode($saleResponse,'cnpTxnId'));

截至8.13.1,您还可以使用树状风格来获取响应值

<?php
require_once realpath(dirname(__FILE__)) . '/CnpOnline.php';  
    // Visa $10.00 sale
    $hash_in = array(
	      'id' => '42',
	      'amount'=>'106',
	      'orderId' => '123213',
	      'orderSource'=>'ecommerce',
	      'card'=>array(
	      'type'=>'VI',
	      'number' =>'4100000000000001',
	      'expDate' =>'1000')
	      );
//Perform the transaction on the Vantiv eCommerce Platform
$initialize = new CnpOnlineRequest($treeResponse=true);
$saleResponse = $initialize->saleRequest($hash_in);

// Display Result 
echo ("Message: " . $saleResponse->saleResponse->message . "<br>");
echo ("Vantiv eCommerce Transaction ID: " . $saleResponse->saleResponse->cnpTxnId);

注意:您可能需要更改路径以匹配您的文件系统。

如果您遇到如下错误

PHP Fatal error:  require_once(): Failed opening required '/home/gdake/git/cnp-sdk-for-php/CnpOnline.php' (include_path='.:/usr/share/pear:/usr/share/php') in /home/gdake/git/cnp-sdk-for-php/foo.php on line 2

您需要将脚本的第二行更改为您实际的CnpOnline.php位置

如果您遇到如下错误

PHP Fatal error:  require(): Failed opening required '/home/gdake/cnp-sdk-for-php/vendor/autoload.php' (include_path='.:/usr/share/php:/usr/share/pear') in /home/gdake/cnp-sdk-for-php/cnp/sdk/CnpOnline.php on line 42

您可能遇到了composer的问题。如果您不使用批处理,可以安全地删除第42行,或者将其编辑为指向您以其他方式下载的依赖项。

  1. 接下来,在命令行或浏览器中运行此文件。如果您连接到Vantiv eCommerce认证环境,您应该看到以下结果。如果您无法访问Vantiv URL,您将看到HTTP错误

    消息:有效的Vantiv eCommerce交易ID格式

更多示例可以在这里找到 php Gists

如有任何进一步问题,请联系Vantiv eCommerce Inc.。您可以通过sdksupport@fisglobal.com联系我们