Skip to content
This repository

iZettle Custom URL Scheme Example Apps

branch: master
README.markdown

iZettle Custom URL Scheme Example Apps

The iZettle Custom URL Scheme allows your iOS app to accept card payments. These two example apps explain how to develop support for card payments in your own app. Before your app can process any payments through iZettle you need to apply for a developer key.

iZorn

Draw a painting on your iPhone or iPad and sell it using iZettle.

URL Tester

An app containing only the absolute basic functionality to initiate a purchase through the iZettle app.

Documentation

A payment is initiated from the app by opening the base URL with the openURL: method in UIApplication. The iZettle app will initiate a payment using the data sent with the query parameters. If it succeeds it will open the x-success URL. If it fails it opens x-failure.

All parameters should be percent-encoded. If sending an image it should be Base64 encoded

Base URL

izettle://x-callback-url/payment/1.0

Mandatory Query Parameters

x-source - name of the app as presented when completing the purchase in the iZettle app

x-success - URL to be opened by iZettle after a successful purchase

x-failure - URL to be opened by iZettle after a failed purchase

api-key - API-key of the calling app, this must be the key received from iZettle when registering the bundle id of the app

price - the amount to be charged

currency - currency to be used, if this does not match the currency currently used by iZettle the x-failure URL will be called with the error code InvalidCurrency`

title - title for the purchase, will be displayed in the iZettle app and in the purchase history of the seller as well as on the receipt sent to the buyer

Optional Query Parameters

reference - a reference string that will be saved with the purchase, if used it will be added to the x-success and x-failure URLs by the iZettle app

image - a Base64 encoded png or jpeg image

Error Codes

TechnicalError - an error occured while processing the payment

CancelledByUser - the user cancelled the purchase

InvalidCurrency - the currency of the calling app does not match the currency in the iZettle app

InvalidState - the iZettle app is in an invalid state, e.g. the user is not logged in. When receiving this error you should tell the user to visit the iZettle app to verify that it's ready to receive purchases

MissingParameter - one or more query paramters is missing or has no value

References

http://izettle.com/
http://developer.izettle.com/
Apple iOS Documentation - Implementing Custom URL Schemes
http://x-callback-url.com/

Something went wrong with that request. Please try again.