2,250 Matching Annotations
  1. Feb 2022
    1. Watch Out! For Swift version 5.1+, ensure that you declare var razorpay: RazorpayCheckout!. For versions lower than 5.1, you may use var razorpay: Razorpay!. Alternatively, you can use the following alias and retain the variable as Razorpay. typealias Razorpay = RazorpayCheckout

      Same comments as for Standard

    2. If you are building an Objective-C project, follow the steps given for Swift and the additional steps given below: Go to Project Settings and select Build Settings - All and Combined. Set the Always Embed Swift Standard Libraries option to TRUE. Ensure that you have the framework added in both Embedded Binaries and Linked Frameworks and Libraries under Target settings - General. For Xcode 11, ensure that you have the framework added in Frameworks, Libraries, and Embed Content under Target settings - General. Change Embed status from - 'Do not Embed' to 'Embed & Sign'.

      Same comments as for Standard

    1. Handy Tips We now support another optional parameter to the open method - displayController. When this parameter is specified, the Razorpay controller is pushed on to this controller's navigation controller if present or presented on this controller if absent. For example, the Swift call is: razorpay.open(options, displayController: self)

      Optional Parmeter - displayController When the optional parameter- displayController, is specified, the Razorpay controller is pushed on to this controller's navigation controller if present or presented on this controller if absent. For example, the Swift call is: razorpay.open(options, displayController: self) [Can we simplify the explanation?)

    2. For Xcode 11, ensure that you have the framework added in Frameworks, Libraries, and Embed Content under Target settings - General. Change Embed status from - 'Do not Embed' to 'Embed & Sign'.

      Xcode 11 [Use Heading 3] Ensure that you have the framework added in Frameworks, Libraries, and Embed Content under Target settings - General. Change Embed status from - 'Do not Embed' to 'Embed & Sign'. [mention what is the gif below indicating]

    3. You can import the SDK: - Using CocoaPod - Manually

      You can import the Razorpay iOS Standard SDK library using any of these ways: Cocoapod, Manual and Objective-C.

    1. Generate the API keys from the Razorpay Dashboard by navigating to Settings → API Keys. You can use the Test mode keys for testing and later switch to Live mode keys when going live with the integration.

      hyperlink API keys

    1. This version of the Razorpay-React Native SDK supports Xcode 10. We have fixed the known issues of React Native on Xcode 10 in the current version of our SDK. This can be implemented until the next release of React Native.

      add a colon after the version number: This version of the Razorpay-React Native SDK supports Xcode 10. The known issues of React Native on Xcode 10 are fixed in the current version of our SDK.

    1. Installing the Razorpay WhatsApp Bot for Payment Links enables you to accept payments from your customers by creating and sharing payment links to them from WhatsApp directly.

      You can install the Razorpay WhatsApp Bot for Payment Links and accept payments from your customers by creating and sharing Payment Links to them directly from WhatsApp. Less

    1. Razorpay Android Standard SDK lets you easily integrate the Razorpay Payment Gateway with your Android application.

      You can use Razorpay Android Standard SDK to integrate the Razorpay Payment Gateway with your Android application.

    1. For additional support on Payment Methods, such as fetching bank or wallet logos, fetching card network and information on how to validate card information, read Additional support for Payment Methods.

      Additional Support for Payment Methods: fetching bank or wallet logos, fetching card network and information on how to validate card information.

    2. In the sample code below, BHIM (in.org.npci.upiapp) is passed in the preferred apps list and Google Pay(com.google.android.apps.nbu.paisa.user) in other apps list. As a result, BHIM is shown in the PREFERRED APPS SECTION. Google Pay is shown at the top in the OTHER APPS SECTION followed by other apps present in the device:

      Sample Code [Heading 4] In the sample code below, BHIM (in.org.npci.upiapp) is passed in the preferred apps list and Google Pay(com.google.android.apps.nbu.paisa.user) in other apps list. As a result, BHIM is shown in the PREFERRED APPS SECTION. Google Pay is shown at the top in the OTHER APPS SECTION followed by other apps present in the device:

    3. OTHER APPS Section Similar to PREFERRED APPS section, the list of applications as specified using the key other_apps_order within options is displayed under this section. Any unspecified app (which supports UPI intent) appears subsequent to the list passed in the options.

      The list of applications specified using the key other_apps_order within options is displayed under this section. Any unspecified app (which supports UPI intent) appears subsequent to the list passed in the options.

    4. PREFERRED APPS Section This section will display the list of applications as specified using the key preferred_apps_order within options. If no application exists for this key, this section will not be shown.

      This section displays the list of applications specified using the key preferred_apps_order within options. If no application exists for this key, this section is not displayed.

    5. When using intent flow, you can customize the order in which UPI apps appear on the Checkout. There can be two sections within the app chooser:

      In the Intent Flow, you can customise the order in which UPI apps appear at the Checkout. There are two sections within the app: Preferred Apps and Other Apps.

    6. The sample code below will send collect request to gaurav.kumar@exampleupi handle.

      Sample Code [Heading 4] The sample code below sends a collect request to gaurav.kumar@exampleupi handle.

    7. The sample code shown below allows the checkout to perform a wallet transaction for a payment of ₹299.35:

      Sample Code. [Heading 4] The sample code shown below allows the checkout to perform a wallet transaction for a payment of ₹299.35:

    8. The sample code shown below allows the checkout to perform a netbanking transaction for a payment of ₹299.35:

      Sample Code [Heading 4] The sample code shown below allows the checkout to perform a netbanking transaction for a payment of ₹299.35:

    9. The sample code shown below allows the checkout to accept a card payment of ₹3999.35:

      Sample Code. [Heading 4] The sample code shown below allows the checkout to accept a card payment of ₹3999.35:

    10. The sample code shown below allows the checkout to accept a card payment of ₹299.35:

      Sample Code [Use Heading 4] The sample code shown below allows the checkout to accept a card payment of ₹299.35:

    1. Learn how to integrate the different payment methods using Razorpay Android Custom SDK in detail.

      Check the various payment methods available with Razorpay Android Custom SDK. [Hyperlink payment methods]

    2. You can accept payments through UPI, credit and debit cards, netbanking and wallets, depending on the methods enabled for your account. When you use Razorpay Android Standard SDK, you do not have to handle the availability of different payment methods. However, when creating a Custom checkout form, you must ensure that only the methods activated for your account are displayed to the customer. To get a list of available payment methods, call getPaymentMethods. This fetches the list of payment methods asynchronously and returns the result in JSON format in the onPaymentMethodsReceived callback. For the structure of the JSON result, you can refer to this doc.

      You can accept payments through UPI, credit and debit cards, netbanking and wallets, as per the methods enabled on your account.

      • When you use Razorpay Android Standard SDK, you do not have to handle the availability of different payment methods.
      • When creating a Custom checkout form, you must ensure that only the methods activated for your account are displayed to the customer. To get a list of available payment methods, call getPaymentMethods. This fetches the list of payment methods asynchronously and returns the result in JSON format in the onPaymentMethodsReceived callback. For the structure of the JSON result, you can refer to this doc. [link to doc does not look right]
    3. PaymentResultListener provides only payment_id as the payment result. PaymentResultWithDataListener provides additional payment data, such as email and contact of the customer, along with the order_id, payment_id, signature and more. JavaCopy
      • PaymentResultListener provides only payment_id as the payment result.
      • PaymentResultWithDataListener provides additional payment data such as email and contact of the customer, along with the order_id, payment_id, signature and more.
    4. Once you have successfully completed the integration, you can setup webhooks, make test payments, replace test key with live key and integrate with other APIs.

      After you have successfully completed the integration, you can set up webhooks, make test payments, replace test key with live key and integrate with other APIs. [Hyperlink the correct articles here]

    5. The following is a sample API request and response for creating an order:

      Sample Code [Heading 4] The following is a sample API request and response for creating an order:

    6. The sample AndroidManifest.xml file with auto-OTP reading feature enabled is shown below:

      Sample Code [User Heading 4] For additional support on Payment Methods, such as fetching bank or wallet logos, fetching card network and information on how to validate card information,

    1. To create a payment with an existing saved card, you have to pass the token instead of the card number, expiry and card holder's name fields as shown below:

      Create a Payment With Existing Saved Card [Use Heading 2] To create a payment with an existing saved card, you have to pass the token instead of the card number, expiry and card holder's name fields as shown below:

    2. Later, while creating a payment with new card, you would need to pass the customer_id and save as extra fields, along with the other fields as shown below:

      Create a Payment With New Card [use Heading 2] While creating a payment with new card, you would need to pass the customer_id and save as extra fields, along with the other fields as shown below:

    3. The sample code given below shows how to customize the RazorpayWebViewClient:

      Sample Code [Heading 4] The sample code given below shows how to customize the RazorpayWebViewClient:

    4. The sample code shown below describes a validation error on the contact field:

      Sample Code [Use Heading 4] The sample code shown below describes a validation error on the contact field:

    5. At least 6 digits of the card number are required to identify the network. Possible values returned by this method are: - visa - mastercard - maestro16 - amex - rupay - maestro - diners - unknown If it is not able to identify the network it returns unknown.
      • At least 6 digits of the card number are required to identify the network.
      • Possible values returned by this method are visa - mastercard - maestro16 - amex - rupay - maestro - diners - unknown.
      • If it is not able to identify the network it returns unknown.
    6. Here are some of the methods provided by the SDK that can be used for card payment method integration.

      You can use these methods for card payment method integration.

    7. The Razorpay Android Custom SDK lets you integrate supported payment methods on the Checkout form of your Android app as per your business requirements. Here are some additional methods provided by the SDK for the integration and usage of payment methods:

      Use the Razorpay Android Custom SDK to integrate supported payment methods on the Checkout form of your Android app as per your business requirements. Here are some additional methods provided by the SDK for the integration and usage of payment methods:

    1. minSdkVersion is the minimum version of the Android operating system required to run your application. The Android app must have a minimum SDK version 19 or higher. If you want to support devices below API level 19, you must override minSDK version.
      • minSdkVersion is the minimum version of the Android operating system required to run your application. The Android app must have a minimum SDK version 19 or higher.
      • If you want to support devices below API level 19, you must override minSDK version.
    1. No money is deducted from the customer's account as this is a simulated transaction. In the Checkout code, ensure that you have entered the API keys generated in the test mode.
      • No money is deducted from the customer's account as this is a test transaction.
      • In the Checkout code, ensure that you have entered the API keys generated in the test mode.
    2. PaymentResultListener provides only payment_id as the payment result. PaymentResultWithDataListener provides additional payment data, such as email and contact of the customer, along with the order_id, payment_id, signature and more.
      • PaymentResultListener provides only payment_id as the payment result.
      • PaymentResultWithDataListener provides additional payment data such as email and contact of the customer, along with the order_id, payment_id, signature and more.
    3. If Native OTP is enabled for the BIN, you should call the razorpay.getCardOtpData(CardsFlowCallback) function. The SDK then fires the otpGenerateResponse(boolean otpGenerated) function and informs whether the OTP was successfully sent to the customer or not. Based on this information, you can display the generated OTP UI to the customer.

      If Native OTP is enabled for BIN, you should call the razorpay.getCardOtpData(CardsFlowCallback) function. The SDK then fires the otpGenerateResponse(boolean otpGenerated) function and confirms if the OTP was successfully sent to the customer. Based on this information, you can display the generated OTP UI to the customer.

    4. The SDK fires the isNativeOtpEnabled function, determining whether the native OTP flow is enabled for the BIN.

      The SDK fires the isNativeOtpEnabled function and determines whether the native OTP flow is enabled for the BIN.

    1. , allowing the customer to pay on your store without being redirected. This allows the plugin to work across all browsers.

      where your customers can pay directly on your website without any redirections. The plugin works across all browsers.