IOS API Documentation
Cloud9 Payment Gateway Documentation. This site can also be reached at http://docs.cloud9paymentgateway.com
Contents
Download
iOS SDK Library & Sample Application
Setup
Installation
- Add iPDCLib.framework to your project like other normal framework.
- Add "Supported external accessory protocols" to your app's info.plist with value "com.ingenico.easypayemv.spm-transaction" (there is a sample info.plist in the iPDCAPP.zip/iPDCApp/iPDCApp)
- If you are using Bluetooth to control the payment terminal, it is advised to enable background communication. For a BT device, add "Required background" to your app's info.plist with value "App communicates with an accessory" (there is a sample info.plist in the iPDCAPP.zip)
API Introduction
Take a look at iPDCApp/ViewController.m file
Class iPDCManager is the main interface.
- 1. Protocol IPDCManagerNotify includes four events
- -(void) deviceConnected; ==>trigger when pinpad connected
- -(void) deviceDisconnected;==>trigger when pinpad disconnected
- -(void) TransDataReceived:(NSData*)data; ==>callback function for when postTransactionToUrl api is called. Param data is the transaction return data with JSON format. This format detail can be found in our JSON API Documentation.
- -(void) TrackDataReceived:(NSData*)data; ==>callback function for when readTrackData api is called. Param data is the track2 data with JSON format.This format's detail can be found in our JSON API Documentation.
2. initWithDelegate: Instantiate the iPDCManager class and set the IPDCManagerNotify delegate. 3. setProperties: Set the configurations in key-value format. valid keys: Prop_RushMode: enable rush mode or not,default value is "false",valid value is "false" and "true" Prop_UploadUrl: set where to upload the rush mode transactions ,NO default value. Prop_CheckInterval: interval for checking rush mode transactions.default value is 60 Prop_FailedThreshold: the max count of trying transactions before enter the rush mode,default value is 3 Prop_QuickChip: enable quickchip,default value is "true",valid value is "false" and "true" Prop_PinpadIP: Pinpad's IP address for ethernet interface, NO default value. Prop_PinpadPort: Pinpad's port number for ethernet interface, default value is 12000 Prop_PinpadInterface: set which interface to use. valid value is "BT" and ETHERNET",NO default value,need to be set explicitly.
4. postTransactionToUrl:request:withTimeout: Process the transaction request. This will send the request to url via https protocol unless it is Store & Forward (Rush Mode). The request detail can be found in our JSON API Documentation. 5. readTrackData Get track2 data for swipe id cards, in-house gift cards, etc
JSON Protocol Reference
The iOS facilitates payment operations via JSON Key-Value pairs. See JSON API Documentation for full functionality info.
iPassthruManager (DEPRECATED)
Passthru manager is an older version of Payment Device Controller Manager without Store & Forward. It is maintained for backward compatibility. Click on the following link for information on iPassthruManager
From the makers of Cloud9 Payment Processing Gateway and Creditline Credit Card Processing Software