Before you begin
This guide assumes that you know how to:
Accept payments with Card via iPay88
Prepare the API
Card via iPay88 requires the following data to process a payment successfully. Pass the following data in the client session, or in the payment request (for manual payment creation).
|3-letter currency code in ISO 4217 format, e.g. |
|Details of the line items of the order|
Description of the line item
First name of the customer
Last name of the customer
Customer email address
Prepare the SDK for payments
iPay88 requires the installation of a separate library via Cocoapods.
Add the line below in your
target 'App' do //... pod 'PrimerSDK' // Add the line below to enable iPay88 pod 'PrimerIPay88MYSDK' end
If you face the error with id
missing-sdk and description
Missing SDK PrimerIPay88MYSDK add the following post-install script in your podfile:
target 'App' do # ... post_install do |installer| fix_linking(installer) endend def fix_linking(installer) installer.generated_projects.each do |project| project.targets.each do |target| if target.name == "PrimerSDK" target.build_configurations.each do |config| config.build_settings['OTHER_LDFLAGS'] = '$(inherited) -framework "PrimerIPay88MYSDK"' end end end endend
Handle payment method
Cards via iPay88 requires a Native UI Manager in order to be presented to the user:
// 👇 Create the payment method managerlet nativeUIPaymentMethodManager = try PrimerHeadlessUniversalCheckout.NativeUIManager(paymentMethodType: "IPAY88_CARD") // 👇 Show the payment methodtry nativeUIPaymentMethodManager.showPaymentMethod(intent: .checkout)
- Due to a limitation from iPay88, the library cannot be installed with Swift Package Manager
Cards via iPay88 can only be vaulted after a successful payment.
Make sure to set
true in the client session. This ensures that the card is added to Primer's centralized vault after a payment is successfully authorized.
In order to vault Card via iPay88 accounts, pass the following data in the Client Session:
|A unique identifier for your customer|
Prepare the SDK for vaulting
You don’t need to do anything particular to go live — just make sure to use production credentials.