iOS – Overview 2017-05-11T15:24:29+00:00

iOS – Overview

The Jetpay iOS SDK provides an easy to use development kit for making payments through the Jetpay payments gateway from within your iOS app.

The SDK provides a number of building blocks providing flexibility to suit a number of development use cases.

TECHNOLOGIES

Distribution and development of the Jetpay SDK leverage a number of modern technologies.

Swift
The Jetpay SDK supports development using the Apple Swift language.

Swift 3 is the first major release developed in the open at Swift.org, with source code, a bug tracker, mailing lists, and regular development builds available for everyone. This broad community of developers, both inside Apple as well as hundreds of outside contributors, work together to make Swift even more amazing. Swift already supports all Apple platforms as well as Linux, with community members actively working to port to even more platforms. We’re excited to see more ways in which Swift makes software safer and faster, while also making programming more fun.

Objective-C
The Jetpay SDK supports development using the Apple’s Objective-C programming language.

CocoaPods
The Jetpay SDK is distributed through a number of modern channels, one of which is CocoaPods. For instructions on how to install the Jetpay SDK using CocoaPods see Install & Configure the SDK

Our iOS SDK can be included into your project using a Podfile. CocoaPods is the dependency manager of choice for Swift (and Obj-C) projects. The Podfile resolves updates and dependencies between libraries searching & fetching the resulting source code and linking it in your Xcode workspace to build your project.

Find out more here:  https://guides.cocoapods.org

Carthage
The Jetpay SDK is distributed through a number of modern channels, one of which is Carthage. For instructions on how to install the JetPay SDK using Carthage see Install & Configure the SDK

Carthage functions as a decentralized dependency manager. There is no central list of projects, which reduces maintenance work and avoids any central point of failure. However, project discovery is more difficult—users must resort to GitHub’s Trending pages or similar.

Carthage is intended to be the simplest way to add frameworks to your Cocoa application building your dependencies and providing you with binary frameworks. However you retain full control over your project structure and setup. Carthage does not automatically modify your project files or your build settings.

Find out more here:  https://github.com/Carthage/Carthage

GitHub
Distribution and development of the Jetpay SDK leverage a number of modern technologies. For instructions on how to install the Jetpay SDK using GitHub see Install & Configure the SDK

RELEASE NOTES

The Jetpay SDK can be integrated into apps for both the iPhone and the iPad running a minimum iOS version of 9.0.

The SDK supports the Swift and Objective-C languages only.

The SDK supports transaction types of SALE, AUTHONLY and TOKENIZE.

ApplePay is not supported for this release.

USE CASES

1 – SDK Collection of Card Details
The Jetpay SDK provides a UI object which collects payment card details from the user and validates this payment card data. Your app integrates with this UI object to track user data entry and validation status as the user types. Once validation is complete, your app can load these card details into the SDK for future payment. These card details can also be accessed directly by your app where you may wish to store them in an external database for example.

All other required data – for example payment amount – is collected by your app and injected into the SDK using a well-defined API interface.

2 – SDK Collection of Card Plus AVS Details
The Jetpay SDK provides a UI object which collects payment card details and AVS address data from the user and validates this data. Your app integrates with this UI object to track user data entry and validation status as the user types.

Once validation is complete, your app can load these card and address details into the SDK for future payment transaction requests. These card and address details can also be accessed directly by your app where you may wish to store them in an external database for example.

3 – Building Transactions Manually
It may be that you don’t require the Jetpay SDK to collect either payment card or AVS address details on your behalf. This scenario is supported where the payment card and AVS address details can be injected into the SDK using a well-defined API interface.

All other required data – for example payment amount – is collected by your app and injected into the SDK using a well-defined API interface.

4 – TransactionID Generation
As part of each transaction request, the Jetpay backend requires a transactionID.

The Jetpay SDK does NOT generate this transactionID for you – instead you generate this data element yourself and inject it into the SDK using a well-defined API interface.

The transactionId must be exactly 18 characters long. Allowed characters are ‘a’ through ‘z’, ‘A’ through ‘Z’, ‘0’ through ‘9’ and ‘-‘.

The transactionId does not necessarily have to be unique.