Initiate Payment

This Section briefs about how to initiate a payment !

Foloosi's iOS SDK provides easy payment collections.

You can use it on the front-end to open payment page or use the actual flow to create Payment Token.

Step - 1 - Add Dependency

pod 'Foloosi-iOS-SDK', '~> 1.5.0'
pod update

Step - 2 - Import SDK

import FoloosiSdk

Step - 3 - Initialize SDK

To initialize the SDK - Create InitData Object with the merchant key you retrieved from foloosi merchant panel. If you do not have a merchant key create a new one and customize the checkout page to your liking.

let initData = InitData()
initData.merchantKey = "merchantKey" //"Your Unique Merchant Key"
initData.customColor = "costomColor"  // It must be valid 6 digit hexadecimal color to make payment page loading color as app color. 
FoloosiPay.initSDK(initData: initData, withDelegate: self)

Important Note

You can Follow any one of the methods below to initiate payment widget

a. Make Payment with order object

Create orderData Object with necessary inputs

You can create the order data or payment input with our OrderData Model class. Here you need to provide order id, title, description, currency code, order amount and customer details like name, email and mobile number.

let orderData = OrderData()
orderData.orderTitle = "" // Any Title
orderData.currencyCode = ""  // 3 digit currency code like "AED"
orderData.orderAmount = 0  // in double format ##,###.##
orderData.orderId = ""  // unique order id. 
orderData.orderDescription = ""  // any description.
orderData.postalCode = "00000" 
orderData.state = "Dubai"
orderData.country = "UAE"
orderData.customerUniqueReference = ""  //Customer Unique Reference value should be email/mobile no/uniqueCustomer id from your DB 
let customer = Customer()
customer.customerEmail = "[email protected]"
customer.customerName = "name"
customer.customerCity = "City"
customer.customerAddress = "Address"
customer.customerPhoneNumber = "1234567890"
orderData.customer = customer

*Important Note*

orderData.customerUniqueReference = "Unique value"

// Unique value must be customer id/email/mobile number for saved card feature.

Now make payment with order data you created above.

 FoloosiPay.makePayment(orderData);

b.Make Payment with reference token

Initialize api

Get Reference Token

POST https://api.foloosi.com/aggregatorapi/web/initialize-setup

Headers

NameTypeDescription

secret_key*

String

Your Merchant Key get from Foloosi Panel

Request Body

NameTypeDescription

transaction_amount*

Double

customer_unique_identifier

String

customer_mobile

String

customer_email

String

customer_name

String

currency*

String

billing_state

String

customer_city

String

customer_address

String

billing_country

String

billing_postal_code

String

{
 "message": "Application setup successfully",
 "data": {
   "reference_token":
   "U0sjdGVzdF8kMnkkMTAkM21LRi0xZGliVDhldTV4NHlZSm9tZXZobnZxWTNEVnZmay1MdHNndTNFenNBTDU0clhWYkccVE4jRkxTQVBJNWM3Njk2ZDkwOWIzNxxSVCMkMnkkMTAkQXZ4ay9wdjlpTFlYLzRSZ2FjSkxpZWhHb2o0U0wvTFpZNXAyVjRGOVFycWNQZ2lHQ3VEZ08="
  }
 }

Make the payment with the order reference token

var referenceToken = "Your Reference Token"
FoloosiPay.makePaymentWithReferenceToken(referenceToken)

Api Specification

  • Request call must be on POST.

  • This Api will be used to confirm the feature you are about to Use.

  • For Saved Card Payment Method, You need to pass your customer unique details like email,etc. to customer_unique_identifier.

Post Request Body

customer_unique_identifier

  1. This is mandatory when you are using saved card payment.

  2. This data must be Unique like email id,customer id, etc.,

Support

Visit https://www.foloosi.com for support requests or email to [email protected].

Developed by

Foloosi Technologies Pvt Ltd.

License

Copyrights (c) 2024 Foloosi

Last updated