nets/enets2-php-sdk

此软件包最新版本(dev-master)没有可用的许可信息。

此PHP SDK旨在帮助您在PHP项目中集成ENETS 2.0 API。

dev-master 2018-03-11 13:16 UTC

This package is not auto-updated.

Last update: 2024-09-24 17:19:07 UTC


README

此PHP SDK旨在帮助您在PHP项目中集成ENETS 2.0 API。您仍然可以选择不使用此SDK直接集成。

免责声明

本API库的内容仅可用于与NETS eNETS产品提供的服务一起使用。除非适用法律要求或书面同意,否则库的提供和/或分发基于“现状”,不提供任何明示或暗示的保证或条件。NETS不保证库或任何内容的连续可用性或无错误,也不保证缺陷将得到纠正,或者库及其支持系统没有病毒或虫害。

安装

composer require nets/enets2-php-sdk

兼容性

此API库已在PHP 5.6及更高版本上进行了测试,以确保其正常工作。

方法

以下方法可用于设置提交交易请求到ENETS所需的变量。

setUmid($value) 使用此方法设置UMID,根据与您的商户账户关联的UMID。如果您没有UMID,请联系NETS获取详细信息。

setTid($value) 使用此方法设置TID,根据与您的商户账户关联的TID。它是可选的,您在ENETS环境中不太可能需要使用它。

setSecretKey($value) 使用此方法设置用于计算HMAC值以签名字符串请求以及验证NETS响应的密钥。

setKeyId($value) 使用此方法设置Key ID,提交交易请求时需要。

setCurrency($value) 使用此方法设置货币,根据ISO 4217字母代码格式。默认为SGD。

setAmount($value) 使用此方法设置要收取的金额。期望的值为浮点数(例如,15.80)。

setMerchantReference($value) 使用此方法设置可以关联回您自己的交易记录的参考值。每个交易必须是一个唯一的值,并用作交易查询的参考值。

setReturnUrl($value) 使用此方法设置返回URL,无论交易成功或失败,客户都将被重定向到该URL。

setReturnUrlParam($value) 使用此方法将参数传递到您的返回URL。此值将在响应中回显。

setNotifyUrl($value) 使用此方法设置通知URL,无论交易成功或失败,交易完成后,结果将从NETS系统直接推送到该URL。

setNotifyUrlParam($value) 使用此方法将参数传递到您的通知URL。此值将在响应中回显。

setSubmissionMode($value) 使用此方法设置提交方法,可以是S(服务器到服务器)或B(浏览器到服务器)。默认为B。

setPaymentType($value) 使用此方法设置支付类型。可接受的值有SALE、AUTH、CAPT、CRED、RSALE、RAUTH、RCRED。默认为SALE。

setPaymentMode($value) 使用此方法设置支付方式。可接受值有DD(直接借记)、CC(信用卡)、QR(二维码支付)。如果不使用此方法,并且商家账户与多种支付方式相关联,将显示支付选项。

setClientType($value) 使用此方法设置客户端类型。可接受值有S(SDK)、W(Web)、和M(移动Web)。默认为W。

setMobileOs($value) 使用此方法将移动操作系统设置为ANDROID或IOS。对于客户端类型S(SDK)是强制性的。

setLanguage($value) 使用此方法设置语言为en(英语)或zh_cn(中文)。默认为英语。

setIpAddress($value) 使用此方法设置客户端设备的IP地址。

setCardholderName($value) 使用此方法设置持卡人姓名。对于服务器到服务器提交类型是强制性的。

setPan($value, $checkluhn = true) 使用此方法设置PAN(主要账户号码)。对于服务器到服务器提交类型是强制性的。

setExpiryDate($value, $checkexpiry = true) 使用此方法设置卡的到期日期。对于服务器到服务器提交类型是强制性的。

setCvv($value) 使用此方法设置CVV(持卡人验证值),这是您Visa/Mastercard卡背面的3位数字代码,或您的Amexircan Express卡正面的4位数字代码。对于服务器到服务器提交类型是强制性的。

setXid($value) 使用此方法设置XID,如果使用自己的MPI进行3D Secure交易。

setCavv($value) 使用此方法设置CAVV,如果使用自己的MPI进行3D Secure交易。

setEci($value) 使用此方法设置ECI值,如果使用自己的MPI进行3D Secure交易。

setAuthenticationStatus($value) 使用此方法设置认证状态,如果使用自己的MPI进行3D Secure交易。

setEnvironment($value) 使用此方法设置开发环境,是测试环境还是生产环境。

以下方法在收到NETS系统响应后可用于获取数据以进行进一步处理。

getNetsReference() 使用此方法获取NETS返回的参考数据。

getNetsStatus() 使用此方法获取交易的状态。

getNetsMessage() 使用此方法获取交易状态描述。

getAuthorizationDate() 使用此方法获取交易的授权日期和时间。

getAuthorizationAmount() 使用此方法获取从客户扣除的授权金额。

getAuthorizationCode() 使用此方法获取从客户扣除的授权代码。仅适用于信用卡交易。

getStageResponseCode() 使用此方法获取NETS的阶段响应。可能的阶段响应列表可在NETS开发者门户中找到。

getTransactionRandom() 使用此方法获取交易随机数。

getActionCode() 使用此方法获取交易的动作代码。

以下方法用于执行进行交易请求或处理交易响应所需的操作。

getTransactionRequest() 使用此方法以数组格式获取原始交易请求。

getQueryRequest() 使用此方法以数组格式获取原始查询请求。

getPayload($request) 使用此方法将数组格式的原始请求转换为json格式。

getHmac($request_payload) 使用此方法从json格式的有效负载计算HMAC。

query() 使用此方法对NETS系统进行查询。

run() 使用此方法执行将交易请求发送到NETS系统的脚本。

getFrontendResponse() 使用这些方法从重定向获取响应数据,并返回一个数组,包含处理结果,以供进一步处理。

getBackendResponse() 使用这些方法从后端通知获取响应数据,并返回一个数组,包含处理结果,以供进一步处理。

版本发布说明

版本 0.1:run() 方法仅支持提交模式 B,而 query() 方法尚未完全测试,可能在此版本中无法正常工作。

版本 0.2:query() 方法在此版本中工作正常。前端和后端响应处理也进行了一些更改。