GooglePay Payment API
About 1198 wordsAbout 4 min
Warning
Before reading this API documentation, please make sure to check API Description Guide
Check your device and browser setup
If you can’t see your expected wallet in the demos, your device or browser might not meet the following Apple Pay or Google Pay conditions.
- The wallet must have at least one card.
- You must use a compatible Apple Pay device and Google Pay device.
- You must use a HTTPS of a supported browser for the wallet you’re testing.
- Allow applicable browsers to access your wallet.
- Chrome: Settings > Autofill and passwords > Payment methods > Allow sites to check if you have payment methods saved
- Safari: Settings > Advanced > Allow websites to check for Apple Pay and Apple card
- Don’t use a Chrome incognito window or Safari private window.
- Confirm you’re operating from a supported Apple Pay region and Google Pay region.
- Stripe doesn’t display Apple Pay or Google Pay for IP addresses in India or for Stripe accounts based in India.
- For Apple Pay, confirm your device supports biometric authentication.
Supported browsers
desktop browser versions:
- Chrome 38+
- Safari 10.1+
- Firefox 29+
- Edge 15+
- Opera 25+
mobile browsers:
- iOS Safari 9+ and other browsers and web views which use the system-provided WebKit engine
- Android Chrome 38+
- Samsung Browser 7.1+
Additional Notes
- We require TLS 1.2 to be supported by the browser.
- We require browsers that are sufficiently modern enough that they support Promises in the JavaScript programming language.
- We respond to bug reports but do not proactively test other browsers.
WARNING
The following regions are strictly prohibited from using this service!!!
Restricted Regions List
AD - Andorra
AE - United Arab Emirates
AF - Afghanistan
AG - Antigua and Barbuda
AI - Anguilla
AL - Albania
AM - Armenia
AO - Angola
AQ - Antarctica
AR - Argentina
AS - American Samoa
AW - Aruba
AX - Åland Islands
BA - Bosnia and Herzegovina
BB - Barbados
BD - Bangladesh
BF - Burkina Faso
BH - Bahrain
BI - Burundi
BJ - Benin
BL - Saint Barthélemy
BM - Bermuda
BN - Brunei Darussalam
BQ - Bonaire, Sint Eustatius and Saba
BS - Bahamas
BT - Bhutan
BV - Bouvet Island
BW - Botswana
BY - Belarus
BZ - Belize
CC - Cocos (Keeling) Islands
CD - Democratic Republic of the Congo
CF - Central African Republic
CG - Republic of the Congo
CI - Côte d'Ivoire
CK - Cook Islands
CM - Cameroon
CO - Colombia
CU - Cuba
CV - Cape Verde
CW - Curaçao
CX - Christmas Island
CY - Cyprus
DJ - Djibouti
DM - Dominica
DO - Dominican Republic
DZ - Algeria
EC - Ecuador
EE - Estonia
EG - Egypt
EH - Western Sahara
ER - Eritrea
ET - Ethiopia
FJ - Fiji
FK - Falkland Islands
FM - Micronesia
FO - Faroe Islands
GA - Gabon
GD - Grenada
GE - Georgia
GF - French Guiana
GG - Guernsey
GH - Ghana
GI - Gibraltar
GL - Greenland
GM - Gambia
GN - Guinea
GP - Guadeloupe
GQ - Equatorial Guinea
GS - South Georgia and the South Sandwich Islands
GT - Guatemala
GW - Guinea-Bissau
HK - Hong Kong
HM - Heard Island and McDonald Islands
HN - Honduras
HT - Haiti
ID - Indonesia
IL - Israel
IM - Isle of Man
IN - India
IO - British Indian Ocean Territory
IQ - Iraq
IR - Iran
JM - Jamaica
JO - Jordan
JP - Japan
KE - Kenya
KH - Cambodia
KI - Kiribati
KM - Comoros
KN - Saint Kitts and Nevis
KP - North Korea
KR - South Korea
KW - Kuwait
KY - Cayman Islands
KZ - Kazakhstan
LA - Laos
LB - Lebanon
LC - Saint Lucia
LI - Liechtenstein
LK - Sri Lanka
LR - Liberia
LS - Lesotho
LV - Latvia
LY - Libya
MD - Moldova
ME - Montenegro
MF - Saint Martin (French part)
MG - Madagascar
MH - Marshall Islands
MK - North Macedonia
ML - Mali
MM - Myanmar
MN - Mongolia
MP - Northern Mariana Islands
MQ - Martinique
MR - Mauritania
MS - Montserrat
MU - Mauritius
MV - Maldives
MW - Malawi
MY - Malaysia
MZ - Mozambique
NA - Namibia
NC - New Caledonia
NE - Niger
NF - Norfolk Island
NG - Nigeria
NI - Nicaragua
NP - Nepal
NR - Nauru
NU - Niue
OM - Oman
PA - Panama
PE - Peru
PF - French Polynesia
PG - Papua New Guinea
PH - Philippines
PK - Pakistan
PM - Saint Pierre and Miquelon
PN - Pitcairn Islands
PR - Puerto Rico
PS - Palestine
PW - Palau
RE - Réunion
RU - Russia
RW - Rwanda
SA - Saudi Arabia
SB - Solomon Islands
SC - Seychelles
SD - Sudan
SH - Saint Helena
SJ - Svalbard and Jan Mayen
SK - Slovakia
SL - Sierra Leone
SM - San Marino
SN - Senegal
SO - Somalia
SR - Suriname
SS - South Sudan
ST - São Tomé and Príncipe
SV - El Salvador
SX - Sint Maarten (Dutch part)
SY - Syria
SZ - Eswatini
TC - Turks and Caicos Islands
TD - Chad
TF - French Southern Territories
TG - Togo
TH - Thailand
TK - Tokelau
TL - Timor-Leste
TM - Turkmenistan
TN - Tunisia
TO - Tonga
TR - Türkiye
TT - Trinidad and Tobago
TV - Tuvalu
TW - Taiwan
TZ - Tanzania
UA - Ukraine
UG - Uganda
UM - United States Minor Outlying Islands
UY - Uruguay
UZ - Uzbekistan
VA - Vatican
VC - Saint Vincent and the Grenadines
VE - Venezuela
VG - British Virgin Islands
VI - U.S. Virgin Islands
VN - Vietnam
VU - Vanuatu
WF - Wallis and Futuna
WS - Samoa
YE - Yemen
YT - Mayotte
ZA - South Africa
ZM - Zambia
ZW - Zimbabwe
Transaction Limits
Transaction Type | Limit (Unit: USD) |
---|---|
Collection | 0.99 - 1000 |
Collection API
Collection Apply
Description:
- Create a collection order
URL:
USD: /usd/collect/apply
Note: appId USD, amount USD, settlement in USD.
Parameters:
Parameter Name | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (retrieved from the backend; must match the currency in the URL) |
orderId | Yes | String | Merchant order number (must be unique, max length 48) |
name | Yes | String | User name, recommended to use real name. Format: first Name + last Name, separated by a space, e.g., Donald John Trump |
phone | Yes | String | Valid phone number (see Phone Format Guide) |
Yes | String | Valid email address | |
amount | Yes | String | Transaction amount (accurate to two decimals; no symbols such as “,” allowed) |
payType | Yes | String | EWALLET |
inBankCode | Yes | String | GOOGLE_PAY |
callBackUrl | Yes | String | Redirect URL after successful payment |
callBackFailUrl | Yes | String | Redirect URL after failed payment |
notifyUrl | No | String | Callback URL |
subject | Yes | String | Payment note |
body | No | String | Detailed remarks |
partnerUserId | Yes | String | Unique user identifier (e.g., userId), used for risk control. Must be real/valid. Format: numbers, letters, or symbols -~!@#$%&*()_. |
sign | Yes | String | Signature |
Response Data
Parameter Name | Type | Description |
---|---|---|
orderId | String | Merchant order number(must be unique) |
orderNo | String | Platform order number |
payUrl | String | Payment URL |
sign | String | Signature |
Collection Query
Description:
- Query collection order
URL:
USD: /usd/collect/query
Parameters:
Parameter Name | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (retrieved from the backend; must match the currency in the URL) |
orderId | Yes | String | Merchant order number |
orderNo | No | String | Platform order number (faster response) |
sign | Yes | String | Signature |
Response Data
Parameter Name | Type | Description |
---|---|---|
orderId | String | Merchant order number(must be unique) |
orderNo | String | Platform order number |
amount | String | Transaction amount |
actualAmount | String | Actual received amount |
fee | String | Transaction fee |
status | Integer | Status (0 Not Started, 1 In Progress, 2 Success (final), 3 Failed (final), -1 Exception Pending Confirmation) |
payTime | String | Payment success time (when status=2, local time), format: yyyy-MM-dd HH:mm:ss |
errorMsg | String | Failure reason (when status=3) |
sign | String | Signature |