2,250 Matching Annotations
  1. Jul 2022
  2. betasite.razorpay.com betasite.razorpay.com
    1. Entityđź”—

      The Invoices entity has the following fields:

    2. now

      remove

    3. Razorpay Invoices enables

      You can use Razorpay Invoices to send.... hyperlink Invoices

  3. betasite.razorpay.com betasite.razorpay.com
    1. :

      remove colon

    2. Watch Out

      missing exclamation mark

    3. You can share the short URL with customers to accept payments. You can print and download it. You can create QR Codes for single or multiple use and for specific or all customers.

      simple bullets not Handy Tips

    4. :

      no colon

    5. QR Code Entityđź”—

      The sample code should come after the entity table. Check Customers/Refunds/Orders API docs

    6. Retrieve details about QR Codes using the unique identifier linked to the Customer ID or a Payment ID.

      Retrieve QR Code for a Customer ID or Payment ID.

    7. refer to the:

      see

    8. Razorpay QR Codes enables you t

      You can use Razorpay QR Codes to create...

    1. Use the below endpoint to delete a token

      The following endpoint deletes a token.

    2. Use the below endpoint to fetch all tokens linked to a customer.

      Rephrase and move to the next para at the end

    3. Use the below endpoint to fetch the token_id using a payment_id.

      Use the standard style

    4. about

      more

    1. Once our system validates and successfully processes the payment request, a razorpay_payment_id is returned. In the case of some banks such as HDFC Bank and Axis Bank, the payment entity returned will be in the created state since the charge system of these banks are file-based and can take a few hours.

      bullet this make these crisper

    2. Use the below endpoint to create a payment and charge the customer.

      The following endpoint creates a payment and charges the customer. Move to the previous para

    3. Use the below endpoint to create an order:

      The following endpoint creates an order. Move this to the previous para

    1. Use the below endpoint to cancel a registration link.

      The following endpoint cancels a registration link.

    2. Use the following endpoint to send/resend notifications with the short URL to the customer:

      The following endpoint sends/resends notifications with a short URL to the customer.

    3. on Linkđź”—

      Split the below code into 3

    4. Use the following endpoint to create a registration link.

      The following endpoint creates a registration link.

    5. API Dashboard

      API or Dashboard.

    6. the following ways: Razorpay APIs. Registration Link.

      You can create an authorisation transaction using Razorpay APIs and Registration Link.

    7. andler Function Callback URL When you use the handler function, the response object of the successful payment (razorpay_payment_id, razorpay_order_id and razorpay_signature) is submitted to the Checkout Form. You need to collect these and send them to your server. When you use a Callback URL, the response object of the successful payment (razorpay_payment_id, razorpay_order_id and razorpay_signature) is submitted to the Callback URL.

      Move this above the code

    8. thorization Paymentđź”—

      Add a brief for this.

    9. The following endpoint creates an order.

      Move this to the previous para

      Split the below code into 3 set of code samples

    10. Authorization transaction + auto-charge first payment You can register a customer's mandate AND charge them the first recurring payment as part of the same transaction. Know more abo

      This Handy Tips should not be placed here. Breaking the flow

    11. 1.1. Using Razorpay APIsđź”—

      Use H1

    12. The following endpoint creates a customer.

      Move this to the previous paragraph

  4. betasite.razorpay.com betasite.razorpay.com
    1. Let us look at the sample given below. Looking at the source, step and reason provided in the error description, it is apparent that the payment failed at the authentication step as the customer entered an incorrect OTP. An elegant way to handle this error would

      In this sample code, see the description, source, step and reason, indicating that the API failed due to authentication failure for incorrect OTP.

    2. All successful responses are returned with HTTP Status code 200. In case of failure, Razorpay API returns a JSON error response with the parameters that detail the reason for the failure.

      When an API is fired, Success: All successful responses are returned with HTTP Status code 200. Failure: Razorpay API returns a JSON error response with the parameters that detail the reason for the failure.

    3. Error Structuređź”—

      Make this H1

    4. Razorpay aims to make every transaction successful for its customers. However, in the financial ecosystem errors might still occur because of intermittent communication and technical issues at multiple hops. Hence, it becomes critical for businesses to identify the source of the error, the payment step where the error occurred and the reason that caused the error. In short, you can identify the who, where and why of every payment error. This enables you to minimize or fix errors to reduce any losses. With the new error codes, Razorpay helps you build your own logic and take remedial action at your end, wherever possible. Deriving these insights can help your business to: Map and analyse top failure reasons. Identify the source of failure. Narrow down and understand if cause of the failure. Can be due to customer action or external factors (Razorpay, Gateway, Bank or Network) Identify the payment step and the exact failure reason. Display valid responses and provide meaningful next steps to your customers.

      Razorpay APIs if fail to execute, return a JSON error response with the parameters that help to understand the reason for failure.

      • Map and analyse top failure reasons.
      • Identify the source of failure. It can be due to customer action or external factors (Razorpay, Gateway, Bank or Network)
      • Identify the payment step and the exact failure reason. Display valid responses and provide meaningful next steps to your customers.
    1. le.

      Add the webhooks section Refer to this: https://razorpay.com/docs/api/refunds#webhooks

    2. Add-on Entityđź”—

      Add one liner for the entity Maintin the same style as for the other API codes

    3. Know more about Add-ons

      remove

    4. add-ons

      hyperlink

    5. :

      remove colon

    6. Handler Function vs Callback URL:

      Instead of Handy Tips, add this as a plain table bold the difference

    7. L:

      remove this

    8. :

      remove colon

    9. :

      remove colon

    10. :

      remove colon

    11. Know more about Offers

      remove this

    12. Offer

      link offer

    13. For example, a Subscription is to be charged on the 1st of every month. It was charged on January 01, 2021. On January 15, 2021, it was updated using the end of cycle option for the schedule_change_at parameter. In this case, the update goes live after the Subscription is charged on February 01, 2021. Such updates are said to be scheduled updates and can be cancelled using this API.

      Same comment as above

    14. For example, a Subscription is to be charged on the 1st of every month. It was charged on January 01, 2021. On January 15, 2021, it was updated using the end of cycle option for the schedule_change_at parameter. In this case, the update goes live after the Subscription is charged on February 01, 2021. Such updates are said to be scheduled updates and details of such updates can be fetched using this API.

      Call out the Example under a sub heading

    15. immediately

      remove

    16. :

      remove colon

    17. The Subscription can either be cancelled immediately or at the end of the current billing cycle. Once cancelled, the Subscription cannot be renewed or reactivated.

      bullet these Try to make it less wordy

    18. ns

      The code sample should come after the endpoint info Check for all places Endpoint > Sample code > Request Parameter table

    19. C

      Add above this You can perform various actions related to Subscriptions using the Razorpay Dashboard (hyperlink it).

    20. These operations can also be performed using the Razorpay Dashboard.

      remove from here

    21. Subscriptions allow you

      You can use Subscriptions to charge a customer periodically.

    22. ns Entityđź”—

      Add the one line above the code sample

    23. The following endpoint lets you create a plan. /plans

      This should come above the code sample.

    24. The plan entity has the following attributes:

      remove The table should come before the code sample

    25. Plan Entity

      Add the one liner here The Plan entity has the following fields:

    26. plan

      Plan

    27. You can create, fetch, query or cancel plans, Subscriptions and add-ons using Subscriptions APIs.

      Add this along with the previous para

    28. Razorpay Subscriptions lets you set up and manage recurring payments.

      You can use Razorpay Subscriptions to set up and manage recurring payments.

    1. FAQsđź”—

      Look through all the questions and answers and try to simplify them. Most of them are too wordy.

    2. customer

      customers

    3. Yes, you can offer services to your international customers from the US, UK, Europe and Canada by providing them with a local currency bank account, and they can pay in their respective currency. In the initial phase, USD ACH is available to you, whereas, in the later phases, other currency support, including SWIFT, will be available.

      Simplify

    4. We have customers spread across the US, UK and Europe. We want to offer our customers a cheaper, reliable, and better payment experience. Can we collect payments in USD, GBP or EUR currency?đź”—

      Simplify the question We means Razorpay , You means Business Keep this in mind while framing questions/answers

    5. account.

      We should create a video to explain the end user experience. Do this as the next iteration

    6. Upload Invoicesđź”— You must provide invoices for all the payment transactions accepted via local currency account as mandated by our Banking partners and RBI. Razorpay allows you to upload invoices and share them for all the payments collected via the Razorpay Dashboard.

      Add this as Handy Tips

      Mandatory Step: Invoices

      You must provide invoices for all the payment transactions accepted via local currency account as mandated by our Banking partners and RBI. Razorpay allows you to upload invoices and share them for all the payments collected via the Razorpay Dashboard.

    7. on the Razorpay Dashboard

      remove

    8. Given below are the steps

      remove

    9. r is given as belo

      We should do a diagram for this. Create a PR for the next iteration if we do not have time now.

    10. List of frequently asked questions:

      remove

    11. his

      the

    12. will get

      gets

    13. will be

      becomes

    14. activate an international Payment Link on your account through Razorpay Dashboard.

      Do we have any article that indicates how to do this? If yes, link it

    15. payment link

      Payment Link

    16. payment link or a payment page

      Payment Link or Payment Page

    17. How it Worksđź”—

      This should come after prerequisites

    18. ou

      You

    19. In the initial phase, USD ACH is available to you, whereas, in the later phases, other currency support, including SWIFT, will be available.

      You can use USD ACH and more options like SWIFT will be available soon.

    20. Ac

      Extra blank line - remove

    21. We achieve higher

      Better

    22. Current Challenges

      Combine this as part of Advantages. Segregate as Advantages for Customers and Businesses

    23. This is an on-demand feature. Please raise a request on your Razorpay Dashboard (My Account -> Payment Methods). Alternatively, you may connect with our Support team to get this feature activated on your Razorpay account.

      Make this a single point. No need to bullet it.

    24. Using the Local Currency Bank Transfer payment method, Indian businesses can open foreign currency accounts and accept payments from international buyers across the US and other countries without additional paperwork. This significantly improves the customer experience by allowing the international buyers to make local bank account transfer to Indian businesses. The final settlement is done in the bank accounts of Indian businesses in INR.

      Use the Local Currency Bank Transfer method to accept payments from buyers outside India without additional paperwork. The final settlement is done in the bank accounts of Indian businesses in INR. This significantly improves the customer experience by allowing the international buyers to make local bank account transfer to Indian businesses.

  5. betasite.razorpay.com betasite.razorpay.com
    1. :

      full stop

    2. Use the following endpoint to retrieve th

      The following endpoint retrieves the...

    3. the following endpoint to retrieve

      The following endpoint retrieves..

    4. You can fetch the expanded EMI details for payments using the expand[] query parameter with the Fetch Multiple Payments API.

      remove

    5. You can fetch the expanded card details for payments using the expand[] query parameter with the Fetch Multiple Payments API.

      remove. This is confusing

    6. Using this parameter will cause a sub-entity to be added to the response.

      rephrase this sentence

    7. :

      full stop

    8. expand[]=card Used to expand the card details when the payment method is emi. expand[]=emi Used to expand the EMI plan details when the payment method is em

      split up the table and also the code samples

    9. :

      full stop

    10. After the customer's bank authorises the payment, you must verify if the authorised amount deducted from the customer's account is the same as the amount paid by the customer on your website or app. You can configure automatic capture of payments on the Razorpay Dashboard. Use the above endpoint to change the payment status from authorized to captured.

      bullet these. For the last point use the code format for the statuses.

  6. Jun 2022
    1. You can close a smart collect account using the Close a Virtual Account API. Use the following endpoint for the same.

      The following endpoint closes a virtual account.

    2. Code for Bank Accountđź”—

      Sample Code for Bank Account

    3. Code for vpađź”—

      Sample Code for VPA

    4. You can

      The following endpoint adds a receiver to an existing virtual account. Move the endpoint code above the Watch Out

    5. You can

      The following endpoint..

    6. Use the following endpoint for the same.

      remove

    7. Parametersđź”—

      Mandatory/Optional info is missing

    8. Bank Transferđź”—

      Add a one-liner about the endpoint for all these

    9. The response parameters are the same as those mentioned in Fetch a Payment API.

      Put this under a separate heading

    10. countsđź”—

      Response Parameters are missing for all

    11. Entityđź”—

      Add a one-lined like this The Smart Collect entity has the following fields:

      Below the table add the information about how various actions can be performed using Dashboard Refer to Refunds API

    12. etersđź”—

      Response Parameters section is missing

    13. You can retrieve payment details for a single virtual account using the Fetch Payments for a Virtual Account API. Use the following endpoint for the same.

      The following endpoint retrieve payment details for a single virtual account by id.

    14. You can retrieve details for all virtual accounts using the Fetch all Virtual Accounts API. Use the following endpoint for the same.

      The following endpoint retrieves details for all virtual accounts.

    15. Use the following endpoint for the same.

      remove

    16. You can create a smart collect account

      The following entity creates a Smart Collect account to accept large payments from your customers in the form of bank transfers via NEFT, RTGS and IMPS.

    17. You can

      The following endpoint retrieves details for a single virtual account by ID.

    18. given on the right

      remove

    19. Refer to the Customer API documentation to learn how to create a customer.

      Create a customer using the Customer API.

    20. Use the following endpoint for the same.

      remove

    21. receivers

      should go to the next row formatting error

    22. With Smart Collect, you can:

      remove

    23. then

      remove

    24. Going forward, vpa and bank_account will be the only receiver types that will be supported.

      vpa and bank_account are the only supported receiver types.

    25. virtual accounts

      Hyperlink to product page

    1. alidate that it is

      NodeJS Codes are missing

    2. nse Parametersđź”—

      Add PL Webhooks, check Refunds API

    3. ntityđź”—

      Add a line below the table about how the various actions can be performed using the dashboard Check refunds API for example

    4. pay servers.

      Codes available in 4 languages. Check with @sofiya for other languages

    5. Note

      Handy Tips

    6. allows you to cancel

      cancels

    7. Note

      Handy Tips

    8. arametersđź”—

      indicate optional/mandatory

    9. by any other means as well,

      This URL can be shared with the customer via SMS, WhatsApp or any other means for payments.

    10. The razorpay_payment_link_id​ attribute should have been stored in your system against an order, right after it was returned in the create Payment Link response. This is displayed as just id (for example, "id": "plink_FKeEiabyAAiSVQ") in the response. The razorpay_signature should be validated by your server. In order to verify the signature, you need to create a signature using razorpay_payment_link_id, razorpay_payment_link_reference_id, razorpay_payment_link_status and razorpay_payment_id​ as payload and your key_secret​ (your API secret) as secret. Java Python Ruby Go PHPCopyRazorpayClient razorpay = new RazorpayClient("[YOUR_KEY_ID]", "[YOUR_KEY_SECRET]"); String secret = "EnLs21M47BllR3X8PSFtjtbd"; JSONObject options = new JSONObject(); options.put("payment_link_reference_id", "TSsd1989"); options.put("razorpay_payment_id", "pay_IH3d0ara9bSsjQ"); options.put("payment_link_status", "paid"); options.put("payment_link_id", "plink_IH3cNucfVEgV68"); options.put("razorpay_signature", "07ae18789e35093e51d0a491eb9922646f3f82773547e5b0f67ee3f2d3bf7d5b"); boolean status = Utils.verifyPaymentLink(options, secret); Copyimport razorpay client = razorpay.Client(auth=("YOUR_ID", "YOUR_SECRET")) client.utility.verify_payment_link_signature({ 'payment_link_id': payment_link_id, 'payment_link_reference_id': payment_link_reference_id, 'payment_link_status':payment_link_status, 'razorpay_payment_id': razorpay_payment_id, 'razorpay_signature': razorpay_signature }) Copyrequire "razorpay" Razorpay.setup('YOUR_KEY_ID', 'YOUR_SECRET') payment_response = { payment_link_id: 'plink_IH3cNucfVEgV68', payment_link_reference_id: 'TSsd1989', payment_link_status: 'paid', razorpay_payment_id: 'pay_IH3d0ara9bSsjQ', razorpay_signature: '07ae18789e35093e51d0a491eb9922646f3f82773547e5b0f67ee3f2d3bf7d5b' } Razorpay::Utility.verify_payment_link_signature(payment_response) Copyimport ( razorpay "github.com/razorpay/razorpay-go" ) client := razorpay.NewClient("YOUR_KEY_ID", "YOUR_SECRET") params := map[string]interface{} { "payment_link_id": "plink_IH3cNucfVEgV68", "razorpay_payment_id": "pay_IH3d0ara9bSsjQ", "payment_link_reference_id": "TSsd1989", "payment_link_status": "paid", } signature := "07ae18789e35093e51d0a491eb9922646f3f82773547e5b0f67ee3f2d3bf7d5b"; secret := "EnLs21M47BllR3X8PSFtjtbd"; utils.VerifyPaymentLinkSignature(params, signature, secret) Copy$api = new Api($key_id, $secret); $api->utility->verifyPaymentSignature(array('razorpay_payment_link_id' => $razorpayPaymentlinkId, 'razorpay_payment_id' => $razorpayPaymentId, 'razorpay_payment_link_reference_id' => $razorpayPaymentLinkReferenceId, 'razorpay_payment_link_status' => $razorpayPaymentLinkStatus, 'razorpay_signature' => $razorpayPaymentLinkSignature)); After validating the signature, you should fetch the order in your system corresponding to the razorpay_payment_link_id​ and mark this order as successful.

      Try to make this less wordy and bullet these

    11. Verify Signatuređź”—

      Heading 2

    12. appear appended

      are added

    13. Using callback_url Parameterđź”—

      Heading 2

    14. :

      remove

    15. Sample Codes for UPI Payment Linksđź”—

      Use Heading 2

    16. Sample Codes for Standard Payment Linksđź”—

      Use heading 2

    17. :

      remove colon

    18. Refer to the list of supported currencies. Refer to the list of supported currencies.

      duplicate Refer to the list of supported currencies.

    19. Following table lists the attributes and their explanations, which are sent in the request body:

      remove

    20. Use these sample codes for UPI Payment Links.

      remove

    21. Use these sample codes for Standard Payment Links.

      remove

    22. Basic Payment Links

      Basic should come first and then the customised one

    23. normal

      regular

    24. as per your business preferences.

      remove

    25. You have the option to create basic or customized Payment Links:

      remove

    26. /payment_links

      move this below the first two sentences

    27. Use the below endpoint to create a basic Payment Link.

      remove

    28. , non-customized

      remove, redundant

    29. t methods.

      Should we briefly talks about Standard Payment Links and UPI Payment Links? See example of Normal Refunds and Instant Refunds https://razorpay.com/docs/api/refunds

    30. Note

      Handy Tips

    31. -

      use colon in all such instances

    32. accept_partial optional

      we have marked this optional. Does that mean others are mandatory? If so, we should mention that. @Vinita- For Customers and Refunds entities, we have not marked as mandatory or optional. Should we? https://razorpay.com/docs/api/customers https://razorpay.com/docs/api/refunds

    33. The following table details some of the attributes related to Payment Links:

      The Payment Link entity has the following fields:

    34. Retrieve information about payment links.

      link not working

    35. Payment Links

      hyperlink to the product overview page

    36. You can easily set up and use Payment Links with these APIs.

      remove

    1. t by IDđź”—

      Comment same as above

    2. mentsđź”—

      Split the Codes into two Normal and With Payout Details Create two separate code sections

    3. on on APIs used as

      Use Handy Tips as the Callout Title and blue color background

    1. Contentđź”—

      missing code samples

    2. nformationđź”—

      Missing code samples

    3. umentđź”—

      Missing code samples in 6 languages

    4. Post successful document creation, the corresponding document_id (present in response) can be provided in cases such as dispute evidence submission.

      After a document is successfully uploaded, the corresponding document id (present in response) can be provided in cases such as dispute evidence submission.

    5. ments Entityđź”—

      Are there any other ways to upload documents from the Dashboard? If so, add relevant links below the table

    6. ntityđź”—

      Add the one-liner

  7. betasite.razorpay.com betasite.razorpay.com
    1. isputeđź”—

      codes in 6 languages

    2. irreversible

      bold this

    3. puteđź”—

      missing codes in 6 SDK languages

    4. putesđź”—

      We should have the Disputes API codes for all the 6 SDK languages

    5. Entityđź”—

      The Disputes entity has the following fields:

    6. You can manage your customer disputes using the Razorpay Disputes APIs.

      remove

    7. dispute

      link this

  8. betasite.razorpay.com betasite.razorpay.com
    1. meters table.

      Add Webhooks for Orders Check refunds API for example

    2. You can modify an existing order to update the Notes field only. Notes can be used to record additional information about the order. A key-value store, the notes field can have a maximum of 15 key-value pairs, each of 256 characters (maximum).

      This should come after the endpoint info

    3. Using the PATCH operation, you can replace the entire notes object for the entity.

      remove

    4. metersđź”—

      Add mandatory/optional info for all

    5. You can retrieve all the payments made for an order. The response contains all the authorised or failed payments for that order.

      This should come after the endpoint

    6. -

      Use colons for all such instances

    7. page

      page

    8. owing fields:

      Add a line below the table about how various actions can be performed from the dashboard Check Refunds API for example.

    9. Payment Links, Payment Pages, Subscription Links, Invoices and Smart Collect.

      link to the product pages

    10. Visit our Introduction to Razorpay page to find the right integration method for you.

      Find the right integration method.

    11. Know more about Orders.

      remove

    12. Order creation is important as it helps you associate every payment with an order, thus preventing multiple payments. It is compulsory to create orders to capture payments automatically. The order ID secures the payment request and one cannot tamper with the order amount

      bullet these

    13. orders

      link to the orders article