nets / enets2-php-sdk
此PHP SDK旨在帮助您在PHP项目中集成ENETS 2.0 API。
Requires
- php: >=5.6.0
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() 方法在此版本中工作正常。前端和后端响应处理也进行了一些更改。