Range of devices to suit every use case; from fast card acquiring (pesaPOD) to smart agent terminals (pesaPOS). Use our SDKs to embed payments in phones, tablets, point-of-sales, kiosks and vending machines.
SmartPesa works with leading terminal manufacturers including bbpos, PAX, SunMi and works closely with FIME for EMV L2 and scheme certification (ADVT/CDET, MTIP, JCB TIC, UnionPay, and local proprietary card schemes)
Connect to any ISO8583 switch including S1 Postilion, ACI Base24, FIS IST, jPOS, Interblocks
Process payments through any NAC (in ASCII or BCD) including HyperCom, S2M, IntelliNAC
Transact with custom Web Services APIs and XML interfaces including UBA TAMS 3 and Finacle
Deploy own Wallet and integrate with 3rd party providers including WeChat Pay and Alipay and MasterPass QR
Connect to 3rd party payment APIs of closed loop systems, telco services (incl. USSD and SMS), and remittance providers.
Update encryption keys and firmware remotely to all devices
Apply BIN, AID, CAPK, and terminal configurations in real-time
Grant permission and enable features at down to a merchant level
Flexible and dynamic terminal assignment to avoid onboarding delays
All merchant, terminal and transaction data stored in on central location
Merchants can easily access their transaction history and export reports
Peace of mind with FIPS 140-2 certified protection for all transaction processing. Superior security with key management and encryption by Thales payShield 900 HSM and SafeNet Luna EFT II.
Point-to-point encryption (P2PE) ensuring transactions are securely encrypted in hardware, and processed by HSM. Adopting best best-of-breed industry standards for data protection.
PCI DSS compliant platform adhering to all mandates of access control, key storage and data masking to pass all audit requirements.
// Setting up transaction parameters SmartPesa.TransactionParam param = SmartPesa.TransactionParam.newBuilder() .transactionType(SmartPesa.TransactionType.GOODS_AND_SERVICES) .terminal(terminal) //terminal selected by user scanTerminal .amount(new BigDecimal("1000.00")) .build(); // Get an instance of Service Manager. ServiceManager sm = ServiceManager.get(context); // Start the transaction with the specified parameters and callback. sm.performTransaction(param, transactionCallback);
// Create transaction parameter object. var param = SmartPesaSdk.TransactionParam .TransactionType(TransactionType.GoodsAndServices) .Amount(50.0m) .Build(); // Get an instance of ServiceManager. var manager = ServiceManager.GetInstance(); // Starts the transaction with the specified parameters and callback. manager.PerformTransaction(param, transactionCallback);
// Start the transaction with the specified parameters. SmartPesaSDK.sharedInstance().startTransaction(forAmount: amount , cashBackAmount: 0.00 , forDeviceType: PESA_POD_2 , from: DEFAULT , to: DEFAULT , params: nil , delegate: self)