API ReferenceIntegrationsKnowledge Base

International Payment Support

Razorpay enables you to accept payments from your customers in international currencies.

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#

Prerequisite#

The international payments option is visible on the Razorpay Dashboard only if you fulfill the following criteria:

  • You have an active Razorpay account with KYC verification completed.
  • You have a valid website.

Steps#

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

  1. Log into your Razorpay Dashboard.
  2. Navigate to SettingsConfiguration.
  3. Scroll to the International Payments section, click Request AccessProvide Details, follow the on-screen steps and submit the required details.
  4. The request is placed. We will contact you via email if we need any clarifications.

The short animation below shows you how to place a request to enable international card payments from the Dashboard.

Disable Payments from International Debit and Credit Cards#

You can disable International payments option on your account from your Dashboard.

  1. Log into your Razorpay Dashboard.
  2. Navigate to SettingsConfiguration.
  3. Scroll down the page to the International payments section and use the toggle button to enable or disable international card payments.

The short animation below shows you how to enable or disable international card payments from the Dashboard.

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.