Payment Gateway, Razorpay Gateway

Razorpay Payment Gateway Integration In iOS Swift


Razorpay is the fastest growing Payment Solution. Most of the developers prefer Razorpay as the Payment solution in India. It is robust and provides developer friendly API & SDK for Android, iOS etc. It provides different modes of payments like :- credit card, debit card, net banking, UPI and other popular wallets. It provide the fast and reliable support.

In this blog we are going to focus on Razor Pay integration with iOS swift 4 using Xcode 10.1. in which we will learn how can we integrate Razorpay with iOS app. We will create a demo app to integrate Razorpay and pay some amount by using Razorpay payment gateway.


  1. xcode 10.1
  2. Swift 4
  3. A Razorpay account (you can signup from here
  4. your Razorpay key id (you can get from here

Let’s start the development :-

Step 1:    Install pod for Razorpay

  • Add pod ‘Razorpay-pod’ in the pod file.
  • Run ‘pod install’ from terminal.
  • Now open the xcworkspace

Step 2:    Develop a basic UI as given below.

Step 3:    Import Razorpay to your view Controller.

import Razorpay

step 4 :

  1. Create action outlet of pay now button in your view controller.

2. Create instance reference variable of type Razorpay.

3. Initialise that reference variable in viewDidLoad method of view controller by calling init method with public key and delegate.                                                                                                    

 4. Create extension of view controller and confirm RazorpayPaymentCompletionProtocol as given below :-

a) onPaymentSuccess(_ payment_id: String)

b) onPaymentError(_ code: Int32, description str: String)

As you can see in above code we have two methods onPaymentSuccess and onPaymentError the success method will be called if payment transaction is completed successfully where the onPaymentError will be called if the transaction is not completed successfully. it provides some error codes as given below :-

Possible values for a failure code are:

      • 0: Network error
      • 1: Initialization failure / Unexpected behavior
      • 2: Payment cancelled by user

Now inside action outlet  of pay button create parameter for razor pay like.  

Progress Bar:

To support theme color in the progress bar, pass HEX color values only.

after setting all parameters call the open method of Razorpay


Complete Demo Project you can download here :-

Complete Video Lecture here kindly like, share and Subscribe My Channel


Leave a Reply