bixbyte/jambopay
用于与JamboPay支付网关集成的SDK包。
Requires
- php: ^5.3.3 || ^7.1
This package is not auto-updated.
Last update: 2024-09-20 03:18:10 UTC
README
这是与Jambopay API集成的非官方php集成模块
所有调用的方法都返回Promise,因此可以轻松地进行链式调用
安装
导航到您的项目目录,然后在CLI上运行
composer install bixbyte\jambopay
。
1. 入门
$GLOBALS["LOGIN_PARAMS"] = [
"username" => "YOUR_USERNAME",
"password" => "YOUR_PASSWORD",
"app_key" => "YOUR_JAMBOPAY_APP_KEY"
];
上述步骤设置了与包一起使用的访问凭证
2. 设置端点URL
( 使用192.168.11.22 [用于测试] 通过VPN时不需要
)
示例
$GLOBALS["JAMBOPAY"] = "YOUR_JAMBOPAY_URL";
3. 启动()
示例
:
include( __DIR__."/index.php" );
3. 声明依赖项(use jambopay)
示例
:
use jambopay;
HEADERS 参数
这应该基本上留空,但可以在需要时注入自定义头部
`$headers` in the various methods below.
这适用于所有接受 headers
参数的方法。
用户方法
1. 内罗毕郡议会支付(jambopay\ncc
)
实例化类
$ncc_ubp = new jambopay\ncc\UBP();
A). 通用商业许可(jambopay\ncc\UBP()
)
UBP 注册
可用方法
a). .get_sbp_classes({PhoneNumber,ActivityID},$headers)
此方法获取内罗毕郡政府分类的所有企业的业务类别。
响应中的
ActivityID
(基本上是企业所属的类别/分类)将在.get_sbp_sub_classes
调用中使用。
示例
:
$ncc_ubp->get_sbp_classes([
"PhoneNumber" => "...",
"ActivityID" => "..."
]);
b). __.get_sbp_sub_classes({PhoneNumber,ID},$headers)
__
上述请求获取与活动ID相关的业务子类别。
响应中的
sub-ClassID
将在.get_sbp_activity_charges
调用中使用。
示例
:
$ncc_ubp->get_sbp_sub_classes([
"PhoneNumber" => "...",
"ID" => "..."
]);
c). __.get_sbp_activity_charges({PhoneNumber,subclassID},$headers)
__
响应中的
ChargeID
参数可以在后续调用中用作过滤参数。
示例
:
$ncc_ubp->get_sbp_activity_charges([
"PhoneNumber" => "...",
"subclassID" => "..."
]);
d). .get_sbp_activity_sub_counties($headers)
此调用列出内罗毕郡内的所有次郡。客户选择此选项和后续调用,以便帮助确定其业务的大致位置。
示例
:
$ncc_ubp->get_sbp_activity_sub_counties();
e). .get_sbp_wards({id},$headers)
此调用列出郡内给定次郡的所有地区。
示例
:
$ncc_ubp->get_sbp_wards([
"id" => "..."
]);
f). __.prepare_payment({Year,Names,PhoneNumber,PhonePin,IDNumber,ActivityCode,ActivityName,SBPSubClassID,RelativeSize,WardName,ZoneName,AcceptedTnC,WardCode,ZoneCode,BusinessName,Pin,IDDocumentNumber,BusinessClassificationDetails,PremisesArea,NumberOfEmployees,AnnualSBPAmount,PostalCode,Town,Telephone1,Telephone2,FaxNumber,Email,PhysicalAddress,PlotNumber,Building,BuildingCategory,Floor,RoomStallNumber,ContactPersonName,ContactPersonDesignation,ContactPersonPOBox,ContactPersonPostalCode,ContactPersonTown,ContactPersonTelephone1,ContactPersonTelephone2,PaidBy,ApprovalStatus,PaymentTypeID,SBPPaymentType }, headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
BusinessID | 字符串 | - | |
Year | 整数 | R | |
TransactionID | 字符串 | - | |
Names | 字符串 | R | Isaac Juma |
BillNumber | 字符串 | - | |
BillStatus | 字符串 | - | |
PhoneNumber | 字符串 | R | 254724659560 |
PhonePin | 整数 | R | 1234 |
IDNumber | 字符串 | R | 1 |
ActivityCode | 整数 | R | |
ActivityName | 字符串 | R | Painting |
SBPSubClassID | 整数 | R | 1114 |
RelativeSize | 字符串 | R | 1 |
WardName | 字符串 | R | |
ZoneName | 字符串 | R | |
AcceptedTnC | 布尔值 | R | 1 |
WardCode | 整数 | R | 4 |
ZoneCode | 整数 | R | 136 |
BusinessName | 字符串 | R | Dcyntech |
BusinessRegistrationNumber | 字符串 | - | |
Pin | 字符串 | R | JJITYTU767868 |
VAT | 字符串 | - | JHJH2323 |
IDDocumentNumber | 字符串 | R | 28734420 |
BusinessClassificationDetails | 字符串 | R | 1212 |
OtherBusinessClassificationDetails | 字符串 | - | 2121 |
PremisesArea | 字符串 | R | 121 |
NumberOfEmployees | 整数 | R | 121212 |
AnnualSBPAmount | 双精度浮点数 | - | 0 |
POBox | 字符串 | R | 8782 Nairobi |
PostalCode | 字符串 | R | 00100 |
Town | 字符串 | R | Nairobi |
Telephone1 | 字符串 | R | 254717803383 |
Telephone2 | 字符串 | R | 254717803383 |
FaxNumber | 字符串 | - | 0717803383 |
字符串 | R | ijuma@webtribe.com | |
PhysicalAddress | 字符串 | R | dsfsdfsd |
PlotNumber | 字符串 | R | 343ffdf |
Building | 字符串 | R | 34634 |
BuildingCategory | 字符串 | R | 非楼层 |
楼层 | 字符串 | R | n\/a |
RoomStallNumber | 字符串 | R | 12 |
联系人姓名 | 字符串 | R | Simiyu Robert |
联系人职务 | 字符串 | R | |
联系人邮政信箱 | 字符串 | R | 281 Soy |
联系人邮政编码 | 字符串 | R | 30105 |
联系人城镇 | 字符串 | R | |
联系人电话1 | 字符串 | R | 0717803383 |
联系人电话2 | 字符串 | R | 0717803383 |
联系人传真号码 | 字符串 | - | 3434 |
付款方 | 字符串 | R | SAMUEL KAHARA |
审批状态 | 整数 | - | 0 |
付款类型ID | 整数 | R | 1 |
SBPPaymentType | 整数 | R | 1 |
收据号码 | 字符串 | - | |
本地收据号码 | 字符串 | - | |
参考号码 | 字符串 | - | |
银行名称 | 字符串 | - | |
分行名称 | 字符串 | - | |
Exclusions[0].ID | 字符串 | - | 排除在付款外的ChargeID |
Exclusions[1].ID | 字符串 | - | 从付款中排除的ChargeID |
响应中的
transactionID
用于在.commit_payment
调用中提交交易。
示例
:
$ncc_ubp->prepare_payment([
"Year" => "...",
"Names" => "...",
"PhoneNumber" => "...",
"PhonePin" => "...",
"IDNumber" => "...",
"ActivityCode" => "...",
"ActivityName" => "...",
"SBPSubClassID" => "...",
"RelativeSize" => "...",
"WardName" => "...",
"ZoneName" => "...",
"AcceptedTnC" => "...",WardCode,"ZoneCode,BusinessName" => "...",
"Pin" => "...",
"IDDocumentNumber" => "...",
"BusinessClassificationDetails" => "...",
"PremisesArea" => "...",
"NumberOfEmployees" => "...",
"AnnualSBPAmount" => "...",
"PostalCode" => "...",
"Town" => "...",
"Telephone1" => "...",
"Telephone2" => "...",
"FaxNumber" => "...",
"Email" => "...",
"PhysicalAddress" => "...",
"PlotNumber" => "...",
"Building" => "...",
"BuildingCategory" => "...",
"Floor" => "...",
"RoomStallNumber" => "...",
"ContactPersonName" => "...",
"ContactPersonDesignation" => "...",
"ContactPersonPOBox" => "...",
"ContactPersonPostalCode" => "...",
"ContactPersonTown" => "...",
"ContactPersonTelephone1" => "...",
"ContactPersonTelephone2" => "...",
"PaidBy" => "...",
"ApprovalStatus" => "...",
"PaymentTypeID" => "...",
"SBPPaymentType" => "..."
]);
g). __.commit_payment({PhoneNumber,SBPPaymentType,Tendered,TransactionID,PaymentTypeID,PaidBy,PhonePin},$headers)
__
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符,例如NCC |
PhoneNumber | 字符串 | R | 代理电话号码 |
SBPPaymentType | 整数 | R | 1 |
已支付的金额 | 双精度浮点数 | R | SBP总账单的确认金额 |
TransactionID | 字符串 | R | POST响应中的唯一ID。 |
付款类型ID | 整数 | R | 1 |
付款方 | 字符串 | R | 注册付费的人 |
PhonePin | 字符串 | R | 被扣除钱包的PIN码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_ubp->commit_payment([
"PhoneNumber" => "...",
"SBPPaymentType" => "...",
"Tendered" => "...",
"TransactionID" => "...",
"PaymentTypeID" => "...",
"PaidBy" => "...",
"PhonePin" => "..."
]);
UBP更新
可用方法
a). __.get_business( {LicenseID,Year,PhoneNumber}, headers )
__
此调用获取使用
LicenseID
(BusinessID
)注册的企业的详细信息。
响应中提供的
ActivityID
将用于后续调用。
示例
:
$ncc_ubp->get_business([
"LicenseID" => "...",
"Year" => "...",
"PhoneNumber" => "..."
]);
b). __.get_business_class_id( {ActivityID,PhoneNumber} ,headers )
__
获取与
ActivityID
相关的业务类别。
响应中的
ClassID
将用于后续调用。
示例
:
$ncc_ubp->get_business_class_id([
"ActivityID" => "...",
"PhoneNumber" => "..."
]);
c). .get_business_sub_class_id({ID,PhoneNumber},$headers)
返回的
SubClassID
用于.prepare_payment
调用。
示例
:
$ncc_ubp->get_business_sub_class_id([
"ID" => "...",
"PhoneNumber" => "..."
]);
d). __.prepare_payment({MerchantID,BusinessID,Year,PhoneNumber,PaymentTypeID,SBPSubClassID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
BusinessID | 字符串 | R | 许可ID |
Year | 整数 | R | 2017 |
PhoneNumber | 字符串 | R | 钱包电话号码 |
付款类型ID | 整数 | R | 1 |
SBPSubClassID | 整数 | R | 来自 getsbpsubclasses 调用的ID |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_ubp->prepare_payment([
"MerchantID" => "...",
"BusinessID" => "...",
"Year" => "...",
"PhoneNumber" => "...",
"PaymentTypeID" => "...",
"SBPSubClassID" => "..."
]);
e). __.commit_payment({PhoneNumber,MerchantID,TransactionID,Pin,Year,AcceptedTnC,ContactPersonName,IDDocumentNumber,Telephone1,ZoneCode,WardCode,ZoneName,WardName,PlotNumber},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PhoneNumber | 字符串 | R | 钱包电话号码 |
商户ID | 字符串 | R | 商户标识符 |
TransactionID | 字符串 | R | POST响应中的唯一ID |
Pin | 字符串 | R | 钱包PIN |
Year | 整数 | R | 商业许可更新年份 |
AcceptedTnC | 布尔值 | R | 接受条款和条件,例如True |
联系人姓名 | 字符串 | R | 联系人 |
IDDocumentNumber | 字符串 | R | 身份证号码 |
Telephone1 | 字符串 | R | Telephone1 |
Building | 字符串 | - | |
楼层 | 字符串 | - | 楼层 |
RoomStallNumber | 字符串 | - | 房间摊位号码 |
ZoneCode | 整数 | R | 商业位置区域代码 |
WardCode | 整数 | R | 商业位置分区代码 |
ZoneName | 字符串 | R | 商业位置区域名称 |
WardName | 字符串 | R | 商业位置分区名称 |
PlotNumber | 字符串 | R | 商业位置地块号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_ubp->commit_payment([
"PhoneNumber" => "...",
"MerchantID" => "...",
"TransactionID" => "...",
"Pin" => "...",
"Year" => "...",
"AcceptedTnC" => "...",
"ContactPersonName" => "...",
"IDDocumentNumber" => "...",
"Telephone1" => "...",
"ZoneCode" => "...",
"WardCode" => "...",
"ZoneName" => "...",
"WardName" => "...",
"PlotNumber" => "..."
]);
B). LAND RATES (jambopay\ncc\LandRates()
)
实例化类
$ncc_land_rates = new jambopay\ncc\LandRates();
可用方法
a). __.prepare_payment({PlotNumber,PhoneNumber,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
PlotNumber | 字符串 | R | 地块号码 |
PhoneNumber | 字符串 | R | 客户电话号码 |
付款类型ID | 整数 | R | 支付方式,例如1为现金等 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_land_rates->prepare_payment([
"PlotNumber" => "...",
"PhoneNumber" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID,Amount},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
TransactionID | 字符串 | R | 唯一的交易参考号码 |
金额 | 十进制 | R | 交易金额 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_land_rates->commit_payment([
"TransactionID" => "...",
"Amount" => "..."
]);
C). PARKING (jambopay\ncc\Parking()
)
实例化类
$ncc_parking = new jambopay\ncc\Parking();
DAILY PARKING
可用方法
a). __.get_daily_parking_items ( headers )
__
此调用提取所需信息以确定应支付的金额,即车辆类型和区域。
示例
:
$ncc_parking->get_daily_parking_items();
b). __.prepare_payment({MerchantID,IsDaily,PlateNumber,PaymentTypeID,PhoneNumber,ZoneCodeID,ChargeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
IsDaily | bool | R | 停车是否为每日,例如1或0;true或false |
PlateNumber | string | R | 汽车注册号码,例如KDF888W |
付款类型ID | 整数 | R | 支付方式,例如1 |
PhoneNumber | string | R | 客户电话号码 |
ZoneCodeID | 整数 | R | 描述停车区域的唯一ID,例如10 |
ChargeID | 整数 | R | 描述停车费用的唯一ID,例如10 |
DurationID | 整数 | O | 描述停车时间的唯一ID |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_parking->prepare_payment([
"MerchantID" => "...",
"IsDaily" => "...",
"PlateNumber" => "...",
"PaymentTypeID" => "...",
"PhoneNumber" => "...",
"ZoneCodeID" => "...",
"ChargeID" => "..."
]);
c). __.commit_payment({TransactionID,Amount},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
TransactionID | 字符串 | R | 交易ID |
PhoneNumber | 字符串 | R | 客户电话号码 |
付款方 | 字符串 | R | 客户姓名 |
金额 | 十进制 | R | 停车支付金额 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_parking->commit_payment([
"TransactionID" => "...",
"Amount" => "..."
]);
季节性停车
可用方法
a). __.get_seasonal_parking_items ( headers )
__
此操作获取初始化数据(费用和收费)以确定应支付的金额。包括:车辆类型和停车时长。
示例
:
$ncc_parking->get_seasonal_parking_items([
"authorization" => JAMBOPAY_TOKEN,
"app_key" => "..."
]);
b). __.prepare_payment({MerchantID,IsDaily, PlateNumber,PaymentTypeID,PhoneNumber,ZoneCodeID,ChargeID,DurationID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
IsDaily | 布尔值 | R | 停车是否为每日 |
PlateNumber | 字符串 | R | 车牌号码 |
付款类型ID | 整数 | R | 支付方式 |
PhoneNumber | string | R | 客户电话号码 |
ZoneCodeID | 整数 | R | 描述停车区域的唯一ID |
ChargeID | 整数 | R | 描述停车费用的唯一ID |
DurationID | 整数 | R | 描述停车时间的唯一ID |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_parking->prepare_payment([
"MerchantID" => "...",
"IsDaily" => "...",
"PlateNumber" => "...",
"PaymentTypeID" => "...",
"PhoneNumber" => "...",
"ZoneCodeID" => "...",
"ChargeID" => "...",
"DurationID" => "..."
]);
c). __.commit_payment({MerchantID,TransactionID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
商户ID | 字符串 | R | 商户标识符 |
TransactionID | 字符串 | R | 交易ID |
> 响应参数将包含一个有效的 ReceiptNumber ,表示 | |||
交易已成功提交并完成。 |
示例
:
$ncc_parking->commit_payment([
"TransactionID" => "...",
"MerchantID" => "..."
]);
D). 合作社停车 (jambopay\ncc\SaccoParking()
)
实例化类
$ncc_sacco_parking = new jambopay\ncc\SaccoParking();
可用方法
a). __.get_sacco_parking_items ( headers )
__
此调用提取所需信息以确定应支付的金额。包括车辆类型和时长类型。
示例
:
$ncc_sacco_parking->get_sacco_parking_items([
"authorization" => JAMBOPAY_TOKEN,
"app_key" => "..."
]);
b). __.prepare_payment({SaccoName,Vehicles: [{VehicleType,Duration,RegistrationNumber}],PaymentTypeID},$headers)
__
可接受参数
参数 | 必需 | 类型 | 描述 |
---|---|---|---|
合作社名称 | R | 字符串 | 合作社的名称 |
车辆 | 数组字段 | ||
车辆类型 | R | int | |
时长 | R | int | |
登记号码 | R | string | |
付款类型ID | R | int | 支付方式,例如 1 - 现金 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$params = [
"SaccoName" => "..." ,
"Vehicles" => [
"vehicleType" => "...",
"Duration" => "...",
"RegistrationNumber" => "..."
],
"PaymentTypeID" => "..."
];
$ncc_sacco_parking->prepare_payment($params);
c). __.commit_payment({},$headers)
__
可接受参数
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R 交易ID | |
示例
:
$params = [
"TransactionID" => "..."
];
$ncc_sacco_parking->commit_payment($params);
D). 房屋租赁 (.house_rent
)
实例化类
$ncc_house_rent = new jambopay\ncc\HouseRent();
可用方法
a). __.get_estates ( headers )
__
此调用获取属于内罗毕县的所有房屋和市场地区的列表。
示例
:
$ncc_house_rent->get_estates();
b). __.get_residences ( { ID }, headers ))
__
此调用使用地区ID获取地区内的住宅列表。
示例
:
$ncc_house_rent->get_residences([
"ID" => "..."
]);
c). __.prepare_payment({TransactionID,Names,Amount,Adjustment,Currentbalance,CustomerNames,LastBillMonth,MonthlyOtherCharges,MonthlyRent,OtherArrears,PhysicalAddress,RentArrears},$headers)
__
可接受参数
输出 | 类型 | 描述 |
---|---|---|
TransactionID | string | 唯一的交易参考号码 |
Names | string | 租户姓名 |
金额 | 十进制 | 应付款项 |
调整 | 十进制 | 支付中产生的任何调整 |
当前余额 | 十进制 | 当前余额 |
客户姓名 | string | 客户姓名 |
最后账单月份 | DateTime | 上个月账单付款日期 |
每月其他费用 | 十进制 | 其他月度费用 |
每月租金 | 十进制 | 每月租金 |
其他欠款 | 十进制 | 其他欠款 |
PhysicalAddress | 十进制 | 物理地址 |
租金欠款 | 十进制 | 租金欠款 |
租金到期日 | DateTime | 租金到期日 |
UHN | string | 唯一的房屋号码 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_house_rent->prepare_payment([
"TransactionID" => "...",
"Names" => "...",
"Amount" => "...",
"Adjustment" => "...",
"Currentbalance" => "...",
"CustomerNames" => "...",
"LastBillMonth" => "...",
"MonthlyOtherCharges" => "...",
"MonthlyRent" => "...",
"OtherArrears" => "...",
"PhysicalAddress" => "...",
"RentArrears" => "...",
]);
d). __.commit_payment({TransactionID,Amount},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
金额 | 十进制 | R | 应付款项 |
> 响应参数将包含一个有效的 ReceiptNumber ,表示 | |||
交易已成功提交并完成。 |
示例
:
$ncc_house_rent->commit_payment([
"TransactionID" => "...",
"Amount" => "..."
]);
D). 电子建筑 (jambopay\ncc\EConstruction()
)
实例化类
$ncc_e_construction = new jambopay\ncc\EConstruction();
可用方法
a). __.prepare_payment({InvoiceNumber,PaymentTypeID,PhoneNumber,PaidBy},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
发票号码 | string | R | 发票号码 |
付款类型ID | int | R | 支付方式 |
PhoneNumber | string | R | 客户的电话号码 |
付款方 | string | R | 客户名称 |
> 响应中的 transactionID 用于 .commit_payment 调用。 |
示例
:
$ncc_e_construction->prepare_payment([
"InvoiceNumber" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID,PhoneNumber},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | string | R | 唯一的交易参考号码 |
PhoneNumber | string | R | 用户电话号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_e_construction->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "..."
]);
E). 酒类 (jambopay\ncc\Liquor()
)
可用方法
实例化类
$ncc_liquor = new jambopay\ncc\Liquor();
a). __.prepare_payment({ Date,LicenseNumber,PhoneNumber,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
日期 | DateTime | R | 日期 |
许可证号码 | 字符串 | R | 许可证号码 |
PhoneNumber | 字符串 | R | 客户 |
付款类型ID | int? | R | 支付方式 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_liquor->prepare_payment([
"Date" => "...",
"LicenseNumber" => "...",
"PhoneNumber" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_liquor->commit_payment([
"TransactionID" => "..."
]);
E). 杂项 (jambopay\ncc\Miscellaneous()
)
可用方法
实例化类
$ncc_misc = new jambopay\ncc\Miscellaneous();
a). __.prepare_payment({PhoneNumber,BillNumber,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PhoneNumber | string | R | 客户电话号码 |
BillNumber | string | R | 从县获得的唯一账单参考号码 |
付款类型ID | int | R | 支付方式 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$ncc_misc->prepare_payment([
"PhoneNumber" => "...",
"BillNumber" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$ncc_misc->commit_payment([
"TransactionID" => "..."
]);
2. 内罗毕水务支付 (jambopay\NairobiWater()
)
实例化类
$nairobi_water = new jambopay\NairobiWater();
a). __.get_bill({AccountNumber},$headers)
__
此调用提取适用于内罗毕水务的费用。
示例
:
$nairobi_water->get_bill([
"AccountNumber" => "..."
]);
b). __.prepare_payment({AccountNumber,PhoneNumber,Names,Amount,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
AccountNumber | 字符串 | R | 内罗毕水务客户账户号码 |
PhoneNumber | 字符串 | R | 用户电话号码 |
Names | 字符串 | R | 客户账户名称 |
金额 | 十进制 | R | 交易金额 |
付款类型ID | int? | R | 支付方式 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$nairobi_water->prepare_payment([
"AccountNumber" => "...",
"PhoneNumber" => "...",
"Names" => "...",
"Amount" => "...",
"PaymentTypeID" => "..."
]);
c). __.commit_payment({TransactionID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$nairobi_water->commit_payment([
"TransactionID" => "..."
]);
3. 国家医院保险基金支付 (jambopay\NHIF()
)
实例化类
$nhif = new jambopay\NHIF();
a). __.prepare_payment({AccountNumber,IsCorporate,PhoneNumber,Amount,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
AccountNumber | 字符串 | R | 在NHIF的客户账户号,即会员号 |
IsCorporate | 布尔值 | R | 无论是企业交易还是个人交易,使用False |
PhoneNumber | 字符串 | R | 客户电话号码 |
罚款 | 十进制 | O | 应支付的罚款金额。 |
金额 | 十进制 | R | 交易金额。 |
付款类型ID | 整数 | R | 支付方式,例如1为现金等 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$nhif->prepare_payment([
"AccountNumber" => "...",
"IsCorporate" => "...",
"PhoneNumber" => "...",
"Amount" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID,PhoneNumber,Amount},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
PhoneNumber | 字符串 | R | 客户电话号码 |
金额 | 十进制 | R | 交易金额 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$nhif->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "...",
"Amount" => "..."
]);
4. KASNEB 支付 (jambopay\Kasneb()
)
实例化类
$kasneb = new jambopay\Kasneb();
a). __.prepare_payment({PhoneNumber,BillNumber,PaidBy,PaymentTypeID},$headers)
__
可接受参数
参数 | 描述 |
---|---|
PhoneNumber | 支付的个人电话号码 |
BillNumber | 要支付的账单号码或发票号码 |
付款方 | 支付个人的姓名 |
付款类型ID | 支付的付款类型。对于所有代理商,我们要求默认为1,代表现金交易 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$kasneb->prepare_payment([
"PhoneNumber" => "...",
"BillNumber" => "...",
"PaidBy" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({PhoneNumber,TransactionID,ExaminationCenterID,Tendered},$headers)
__
可接受参数
参数 | 描述 |
---|---|
PhoneNumber | 支付的个人电话号码 |
TransactionID | 这是要处理的付款的唯一标识符。此值来自具有相同名称的先前输出 |
ExaminationCenterID | 可空参数。仅适用于已应用考试中心的付款。 |
已支付的金额 | 这是表示客户给出的总金额的可选参数。它可以是与“金额”字段相同或更多的金额,可用于计算应退还给客户的零钱 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$kasneb->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "...",
"Tendered" => "...",
"ExaminationCenterID" => "..."
]);
5. JAMBOPAY WALLET 支付 (jambopay\Wallet()
)
实例化类
$wallet = new jambopay\Wallet();
a). __.prepare_payment({PhoneNumber,Amount,PaymentTypeID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PhoneNumber | string | R | 用户电话号码 |
金额 | 十进制 | R | 交易金额 |
付款类型ID | 整数 | R | 付款方式。例如,1代表现金,2代表支票等 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$wallet->prepare_payment([
"PhoneNumber" => "...",
"Amount" => "...",
"PaymentTypeID" => "..."
]);
b). __.commit_payment({TransactionID,PhoneNumber},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
PhoneNumber | 字符串 | R | 用户电话号码 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$wallet->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "..."
]);
6. __JAMBOPAY 支付报告 (jambopay\Reports(reporting_stream [ e.g. parking, saccoparking, rent,nhif,ubp])
)__
>>> 初始化查询对象
e.g
对于停车
$parking_report = new jambopay\Reports("parking");
a). __.get_transactions({},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PlateNumber | string | O | 业务ID |
索引 | int | O | 要返回的交易页面的基于零的索引-每页有30笔交易 |
TransactionID | string | O | 唯一的交易参考号码 |
StartDate | 日期 | O | 要获取交易的最小日期 |
EndDate | 日期 | O | 要获取交易的最新日期 |
UserID | string | O | 唯一用户ID |
TransactionStatus | byte | O | 交易状态(准备中-0或完成-1) |
示例用法
(针对ncc停车)
$parking_report->get_transactions( );
7. 肯尼亚电力和照明公司(KENYA POWER & LIGHTING Co.) 支付 (jambopay\KPLC()
)
实例化类
$kplc = new jambopay\KPLC();
a). __.prepare_payment({PhoneNumber,Amount,PaymentTypeID,MeterNumber,MerchantID},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PhoneNumber | string | R | 用户电话号码 |
金额 | 十进制 | R | 交易金额 |
付款类型ID | 整数 | R | 付款方式。例如,1代表现金,2代表支票等 |
MeterNumber | 整数 | R | 客户的电表号码 |
商户ID | 整数 | R | 'KPLC '在这种情况下 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$kplc->prepare_payment([
"PhoneNumber" => "...",
"Amount" => "...",
"PaymentTypeID" => "...",
"MeterNumber" => "...",
"MerchantID" => "KPLC"
]);
b). __.commit_payment({TransactionID,PhoneNumber,Tendered,Pin},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
PhoneNumber | 字符串 | R | 用户电话号码 |
已支付的金额 | 整数 | R | 客户给出的金额 |
Pin | 字符串 | R | 发起者的访问密码/PIN |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$kplc->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "...",
"Tendered" => "...",
"Pin" => "..."
]);
8. 非街停车支付( jambopay\OffStreetParking(bool liveServer = false)
)
此端点在使用之前需要初始化。这样做的主要目的是指定是否使用实时端点。
要初始化端点,请使用
$offstreet_parking = new jambopay\OffStreetParking(`use_live_server`);
或者
$offstreet_parking = new jambopay\OffStreetParking(true);
或者
$offstreet_parking = new jambopay\OffStreetParking(false);
a). __.validate_attendant({PhoneNumber},$headers)
__
此方法通过电话号码帮助检查工作人员的有效性
示例
$offstreet_parking->validate_attendant([
PhoneNumber => "..."
]);
b). __.book_vehicle({PlateNumber,attPhoneNumber},$headers)
__
此方法通过车牌号码帮助将车辆登记到系统中
示例
$offstreet_parking->book_vehicle([
"PlateNumber" => "...",
"attPhoneNumber" => "..."
]);
9. STARTIMES 支付(jambopay\Startimes()
)
实例化类
**$startimes = new jambopay\Startimes();**
a). __.prepare_payment({PhoneNumber,Amount,PaymentTypeID,SmartCardCode,CustomerCode},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
PhoneNumber | string | R | 用户电话号码 |
金额 | 十进制 | R | 交易金额 |
付款类型ID | 整数 | R | 付款方式。例如,1代表现金,2代表支票等 |
SmartCardCode | 整数 | R | 客户的智能卡号码 |
CustomerCode | 整数 | R | 指定的客户代码 |
响应中的
transactionID
用于.commit_payment
调用。
示例
:
$startimes->prepare_payment([
"PhoneNumber" => "...",
"Amount" => "...",
"PaymentTypeID" => "...",
"SmartcardCode" => "...",
"CustomerCode" => "..."
]);
b). __.commit_payment({TransactionID,PhoneNumber,Tendered},$headers)
__
可接受参数
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
TransactionID | 字符串 | R | 唯一的交易参考号码 |
PhoneNumber | 字符串 | R | 用户电话号码 |
已支付的金额 | 整数 | R | 客户给出的金额 |
响应参数将包含一个有效的
ReceiptNumber
,表示交易已成功提交并完成。
示例
:
$startimes->commit_payment([
"TransactionID" => "...",
"PhoneNumber" => "...",
"Tendered" => "..."
]);
全局方法
实例化类
$global = new jambopay\JambopayGeneric('stream');
__$global->prepare_payment({},$headers)
__
__$global->commit_payment({},$headers)
__
上述方法可以针对任何支付渠道(除
offstreetparking
外
)直接调用,只要传递相关的支付流。
以下是相关支付流表
目标 | 流 |
---|---|
E-Construction | econstruction |
House Rent | rent |
Jambopay Wallet | wallet |
KASNEB | kasneb |
基苏穆供水与污水 | kiwasco |
肯尼亚电力与照明 | kplc |
土地税 | landrate |
酒类 | liquor |
杂项 | misc |
内罗毕供水 | nairobiwater |
NHIF | nhif |
NCC - 马路外停车场 | offstreetparking |
停车场 | parking |
合作社停车场 | saccoparking |
统一商业许可证 | sbp |
以下是适用商户ID的表格
目标 | 商户ID |
---|---|
内罗毕县 | NCC |
特南索尼亚县 | TNC |
一个示例sacco_parking prepare_payment请求 |
$params = [
"Stream" =>"saccoparking"
"SaccoName" => "" ,
"Vehicles" => [
"vehicleType" => "",
"Duration" => "",
"RegistrationNumber" => ""
]
],
"PaymentTypeID" => ""
];
$JamboPay_saccoparking = new jambopay\JambopayGeneric('saccoparking');
$JamboPayWildCard->prepare_payment($params);
或者
$JamboPayWildCard_any = new jambopay\JambopayGeneric();
$JamboPayWildCard_any->prepare_payment($params);
在使用后者时,确保你在传递给方法的参数对象中定义了“Stream”,而不是传递给构造函数。