API ReferenceIntegrationsKnowledge Base

International Payment Support

You can accept payments from your customers in more than 100 foreign currencies using our Payment Gateway and other products such as Payment Pages, Payment Button, Payment Links and Invoices.

Registered Businesses
If you are an eligible, registered business with a valid website, you can accept international payments made using:

Unregistered Businesses
If you are an unregistered business, such as a freelancer, you must integrate PayPal to accept international payments.

Note:
Wire transfers and netbanking payments made from foreign banks are currently not supported.

Enable Payments from International Debit and Credit Cards๐Ÿ”—

To enable international payments for the first time, you need to place a request from the Razorpay Dashboard.

Feature Enablement
International payments are prone to a higher risk of fraud and chargeback. We can enable this feature after approval from our banking partners.

Eligibility and Prerequisites๐Ÿ”—

You must meet the following eligibility criteria set by our banking partners to accept international payments:

  1. You must have an active Razorpay account with KYC verification completed.
  2. You must have a valid website with the following sections/pages clearly defined:
    • Terms and Conditions
    • Privacy policy
    • Refund and Cancellation policy
    • Shipping policy Note
      International payments cannot be enabled for your account in the absence of these sections/pages on your website.
  3. Business categories not supported by Razorpay are listed here.

Application Process๐Ÿ”—

  1. Log into your Razorpay Dashboard.
  2. Navigate to Settings โ†’ Payment Methods.

Request
  1. Scroll to the International Payments section and click Request.
  2. A request form is displayed. Provide details and click Submit. We will contact you via email for any clarifications.

Documents and Details Required๐Ÿ”—

Given below is a list of documents required:

  1. In case of sales of tangible products, Import/Export code as well as logistic partner details are needed.
  2. If you have past international transaction experience, the following documents are accepted:
  • 6 months' bank statement showing past inward remittance.
  • Sample invoice or any proof of service delivery.
  • Settlement report from past international transactions.

Currency Conversion๐Ÿ”—

Payments๐Ÿ”—

Checkout Form and APIs

On the checkout form or when using APIs for Razorpay products such as Orders, Payment Links, Subscriptions or Invoices, you need to specify the desired currency and pass the amount in the desired currency subunit.

Example

The following is a sample API request and response to create an order for $20:

Copycurl -u <YOUR_KEY>:<YOUR_SECRET> \ -X POST https://api.razorpay.com/v1/orders \ -H "content-type: application/json" -d '{ "amount": 2000, "currency": "USD", "receipt": "rcptid #11" }'
Copytry { JSONObject orderRequest = new JSONObject(); orderRequest.put("amount", 2000); // amount in the smallest currency unit orderRequest.put("currency", "USD"); orderRequest.put("receipt", "order_rcptid_11"); Order order = razorpay.Orders.create(orderRequest); } catch (RazorpayException e) { // Handle Exception System.out.println(e.getMessage()); }
Copyorder_amount = 2000 order_currency = 'USD' order_receipt = 'order_rcptid_11' notes = {'Shipping address': 'Bommanahalli, Bangalore'} # OPTIONAL client.order.create(amount=order_amount, currency=order_currency, receipt=order_receipt, notes=notes)
Copy$order = $client->order->create([ 'receipt' => 'order_rcptid_11', 'amount' => 2000, // amount in the smallest currency unit 'currency' => 'USD',// ) ]);
CopyDictionary<string, object> options = new Dictionary<string,object>(); options.Add("amount", 2000); // amount in the smallest currency unit options.add("receipt", "order_rcptid_11"); options.add("currency", "USD"); Order order = client.Order.Create(options);
Copyoptions = amount: 2000, currency: 'USD', receipt: '<order_rcptid_11>' order = Razorpay::Order.create
Copyvar options = { amount: 2000, // amount in the smallest currency unit currency: "USD", receipt: "order_rcptid_11" }; instance.orders.create(options, function(err, order) { console.log(order); });
Copy{ "id": "order_00000000000001", "entity": "order", "amount": 2000, "currency": "USD", "receipt": "order_rcptid_11", "status": "created", "attempts": 0, "created_at": 1596208654, "notes": [] }
currency mandatory
string Currency in which you want to accept the payment. For example, GBP. Refer to the supported currencies section below for a list of supported international currencies.
amount mandatory
integer The amount to be charged in the specified currency subunit.

For example, when selling a product for โ‚น1000 in the domestic market, you pass INR in the currency parameter and 100000 in the amount parameter (since the amount should be in paise).

When selling in the international market, you might want to charge $20 for the same product. In this case, you must pass USD in the currency parameter and 2000 in the amount parameter (since the amount should be in cents).

Payment Entity

To provide visibility into the conversion rate, the Payment entity will contain additional fields when the currency is not INR.

Example

The following is a sample payment entity for a $1 payment:

Copy{ "id": "pay_Donb2t6WkJYhfU", "entity": "payment", "amount": 100, "currency": "USD", "base_amount": 7129, "base_currency": "INR", "status": "captured", "order_id": "order_CjCr5oKh4AVC51", "international": true, "method": "card", "amount_refunded": 0, "refund_status": null, "description": "Payment at the Dollar Store", "card_id": "card_Donb2wk8eC8EDN", "email": "gaurav.kumar@example.com", "contact": "9364591752", "notes": [], "fee": 207, "tax": 0, "error_code": null, "error_description": null, "created_at": 1400826750 }
base_currency
string The conversion currency that will be used to calculate fees and settlements. This currently defaults to INR and is present only if the currency is not INR.
base_amount
integer The converted payment amount that will be used to calculate fees and settlements. Represented in smallest unit of the base_currency. This attribute is currently only present if the currency is not INR.

Dashboard

When using products such as Payment Links or Subscription Links, ensure you select the desired currency from the currency dropdown and add the amount in the selected currency. For example, if you want to charge $20 when selling in the international market, select USD in the Currency dropdown and enter 20 in the Amount field.

Refer to the short animation below for more details.

Settlements๐Ÿ”—

Once your customers have made the payment, the payment amount is converted to INR and settled to your Razorpay Payment Gateway (PG) account as per your settlement schedule.

The exchange rate (according to the processing bank) on the date the payment was made is used to make the conversion. For example, a customer makes a payment of $10 on February 02, 2019 and your settlement schedule is T+7 business days for domestic transactions, where T being the date of capture of payment. Here, the conversion rate depends on the date the payment had been captured, that is February 02, 2019 when USD to INR was 70, that is $1 = โ‚น70.

โ‚น700 (minus tax and fees) is settled to your account on February 09, 2019, irrespective of the conversion rate on this date.

FAQs๐Ÿ”—

  1. Does Razorpay support wire transfers for international payments?


    No. Currently, we only support international payments made using cards issued by overseas banks for all the major networks such as Visa, Mastercard and Amex.

  2. What currencies does Razorpay support?


    Razorpay supports international in more than 100 currencies. Refer to the Supported Currencies section.

  3. Is there a list of Razorpay products that support international payments?


    Yes. Refer to the Supported Products section for more details.

  4. Who handles the currency conversion?


    For the currencies supported by Razorpay, no currency conversion is not required. You can pass the payment amount in the native currency. Refer to the Currency Conversion section for more details. For the currencies we do not support, you will have to handle conversion at your end and pass it to Razorpay in INR.

  5. What is the settlement cycle for international payments?


    The default settlement cycle for international payments is T+7 days where "T" is the day on which the payment was made by the customer. You can view your settlement cycle on your Dashboard.

  6. How does the settlement happen for international payments?


    The Settlement currency for all transactions done using Razorpay is INR (Indian Rupees). Thus, international payments will be settled to you in INR. The exchange rate at the time of the payment creation is considered for conversion.

Supported Products๐Ÿ”—

Refer to the table below to know which products support international payments.

Product

International Payments Supported

Payment Gateway (Checkout)

โœ“

Invoices

โœ“

Payment Links

โœ“

Payment Pages

โœ“

Subscriptions

โœ“

Route

No

Smart Collect

No

RazorpayX

No

Supported Currencies๐Ÿ”—

Currently, we support a host of currencies including INR, USD, EUR and SGD. The table below lists the various supported international currencies.

Currency name

Code

United Arab Emirates Dirham

AED

Albanian lek

ALL

Armenian dram

AMD

Argentine peso

ARS

Australian dollar

AUD

Aruban florin

AWG

Barbadian dollar

BBD

Bangladeshi taka

BDT

Bermudian dollar

BMD

Brunei dollar

BND

Bolivian boliviano

BOB

Bahamian dollar

BSD

Botswana pula

BWP

Belize dollar

BZD

Canadian dollar

CAD

Swiss franc

CHF

Chinese yuan renminbi

CNY

Colombian peso

COP

Costa Rican colon

CRC

Cuban peso

CUP

Czech koruna

CZK

Danish krone

DKK

Dominican peso

DOP

Algerian dinar

DZD

Egyptian pound

EGP

Ethiopian birr

ETB

European euro

EUR

Fijian dollar

FJD

Pound sterling

GBP

Gibraltar pound

GIP

Ghanian Cedi

GHS

Gambian dalasi

GMD

Guatemalan quetzal

GTQ

Guyanese dollar

GYD

Hong Kong dollar

HKD

Honduran lempira

HNL

Croatian kuna

HRK

Haitian gourde

HTG

Hungarian forint

HUF

Indonesian rupiah

IDR

Israeli new shekel

ILS

Indian rupee

INR

Jamaican dollar

JMD

Kenyan shilling

KES

Kyrgyzstani som

KGS

Cambodian riel

KHR

Cayman Islands dollar

KYD

Kazakhstani tenge

KZT

Lao kip

LAK

Lebanese pound

LBP

Sri Lankan rupee

LKR

Liberian dollar

LRD

Lesotho loti

LSL

Moroccan dirham

MAD

Moldovan leu

MDL

Macedonian denar

MKD

Myanmar kyat

MMK

Mongolian tugrik

MNT

Macanese pataca

MOP

Mauritian rupee

MUR

Maldivian rufiyaa

MVR

Malawian kwacha

MWK

Mexican peso

MXN

Malaysian ringgit

MYR

Namibian dollar

NAD

Nigerian naira

NGN

Nicaraguan cordoba

NIO

Norwegian krone

NOK

Nepalese rupee

NPR

New Zealand dollar

NZD

Peruvian sol

PEN

Papua New Guinean kina

PGK

Philippine peso

PHP

Pakistani rupee

PKR

Qatari riyal

QAR

Russian ruble

RUB

Saudi Arabian riyal

SAR

Seychellois rupee

SCR

Swedish krona

SEK

Singapore dollar

SGD

Sierra Leonean leone

SLL

Somali shilling

SOS

South Sudanese pound

SSP

Salvadoran colรณn

SVC

Swazi lilangeni

SZL

Thai baht

THB

Trinidad and Tobago dollar

TTD

Tanzanian shilling

TZS

United States dollar

USD

Uruguayan peso

UYU

Uzbekistani so'm

UZS

Yemeni rial

YER

South African rand

ZAR

For any other additional currencies, which are not a part of the above list and that you might want us to support, kindly raise a request on our Support Portal.

×