const response = await fetch('https://api.orchestrasolutions.com/EWalletOperations', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
operation: 'CHARGE',
paymentGatewayAccountId: 'yourPspAccount',
allowedeWalletAccountIds: ['card-payments', 'google-pay-prod'],
allowedBrands: ['Visa', 'MasterCard', 'AMEX'],
currencyCode: 'USD',
countryCode: 'US',
amount: 49.99,
mode: 'TEST'
})
});
const data = await response.json();
console.log('Session token:', data.token);
import requests
response = requests.post(
'https://api.orchestrasolutions.com/EWalletOperations',
headers={
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'operation': 'CHARGE',
'paymentGatewayAccountId': 'yourPspAccount',
'allowedeWalletAccountIds': ['card-payments', 'google-pay-prod'],
'allowedBrands': ['Visa', 'MasterCard', 'AMEX'],
'currencyCode': 'USD',
'countryCode': 'US',
'amount': 49.99,
'mode': 'TEST'
}
)
data = response.json()
print('Session token:', data['token'])
{
"token": "<string>"
}[
{
"fieldName": "<string>",
"errors": [
"<string>"
]
}
]Payments Library
Start an eWallet session
POST
/
EWalletOperations
const response = await fetch('https://api.orchestrasolutions.com/EWalletOperations', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
operation: 'CHARGE',
paymentGatewayAccountId: 'yourPspAccount',
allowedeWalletAccountIds: ['card-payments', 'google-pay-prod'],
allowedBrands: ['Visa', 'MasterCard', 'AMEX'],
currencyCode: 'USD',
countryCode: 'US',
amount: 49.99,
mode: 'TEST'
})
});
const data = await response.json();
console.log('Session token:', data.token);
import requests
response = requests.post(
'https://api.orchestrasolutions.com/EWalletOperations',
headers={
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'operation': 'CHARGE',
'paymentGatewayAccountId': 'yourPspAccount',
'allowedeWalletAccountIds': ['card-payments', 'google-pay-prod'],
'allowedBrands': ['Visa', 'MasterCard', 'AMEX'],
'currencyCode': 'USD',
'countryCode': 'US',
'amount': 49.99,
'mode': 'TEST'
}
)
data = response.json()
print('Session token:', data['token'])
{
"token": "<string>"
}[
{
"fieldName": "<string>",
"errors": [
"<string>"
]
}
]const response = await fetch('https://api.orchestrasolutions.com/EWalletOperations', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
operation: 'CHARGE',
paymentGatewayAccountId: 'yourPspAccount',
allowedeWalletAccountIds: ['card-payments', 'google-pay-prod'],
allowedBrands: ['Visa', 'MasterCard', 'AMEX'],
currencyCode: 'USD',
countryCode: 'US',
amount: 49.99,
mode: 'TEST'
})
});
const data = await response.json();
console.log('Session token:', data.token);
import requests
response = requests.post(
'https://api.orchestrasolutions.com/EWalletOperations',
headers={
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'operation': 'CHARGE',
'paymentGatewayAccountId': 'yourPspAccount',
'allowedeWalletAccountIds': ['card-payments', 'google-pay-prod'],
'allowedBrands': ['Visa', 'MasterCard', 'AMEX'],
'currencyCode': 'USD',
'countryCode': 'US',
'amount': 49.99,
'mode': 'TEST'
}
)
data = response.json()
print('Session token:', data['token'])
Prerequisites
Store eWallet Account
Configure credentials for Apple Pay, Google Pay, PayPal, etc.
PSP Setup
Configure your Payment Gateway Account for processing.
Stored Cards
For returning customers, the request can includestoredCards: up to 3 previously tokenized cards, each with its token and display details (brand, lastDigits, expirationMonth, expirationYear, nameOnCard). The card entry page then shows a “Pay by {brand} ****{last 4}” button per card, and the payer only enters the CVV; the charge runs against the real card resolved from the token.
Stored cards are not allowed with the
TOKENIZE operation. Each token must belong to your account, and expired cards are rejected. The display details are shown to the payer exactly as provided - persist them from the tokenAndMaskedCardModel.bankCard returned at tokenization time, as they cannot be retrieved later. A stored-card payment in a CHARGE_AND_TOKENIZE or PREAUTH_AND_TOKENIZE session is not tokenized again. See CardPay: Stored Cards for the full guide.Related
Payments Library Setup Guide
Complete guide with session configuration and payment button setup
Authorizations
Please enter ApiKey into field
Body
application/json
Start Session Request
Available options:
CHARGE, TOKENIZE, CHARGE_AND_TOKENIZE, PREAUTH_AND_TOKENIZE Show child attributes
Show child attributes
Available options:
TEST, LIVE Available options:
AFN, EUR, ALL, DZD, USD, AOA, XCD, ARS, AMD, AWG, AUD, AZN, BSD, BHD, BDT, BBD, BYR, BZD, XOF, BMD, BTN, INR, BOB, BOV, BAM, BWP, NOK, BRL, BND, BGN, BIF, KHR, XAF, CAD, CVE, KYD, CLF, CLP, CNY, COP, COU, KMF, CDF, NZD, CRC, HRK, CUC, CUP, ANG, CZK, DKK, DJF, DOP, EGP, SVC, ERN, ETB, FKP, FJD, XPF, GMD, GEL, GHS, GIP, GTQ, GBP, GNF, GYD, HTG, HNL, HKD, HUF, ISK, IDR, XDR, IRR, IQD, ILS, JMD, JPY, JOD, KZT, KES, KPW, KRW, KWD, KGS, LAK, LBP, LSL, ZAR, LRD, LYD, CHF, LTL, MOP, MKD, MGA, MWK, MYR, MVR, MRO, MUR, XUA, MXN, MXV, MDL, MNT, MAD, MZN, MMK, NAD, NPR, NIO, NGN, OMR, PKR, PAB, PGK, PYG, PEN, PHP, PLN, QAR, RON, RUB, RWF, SHP, WST, STD, SAR, RSD, SCR, SLL, SGD, XSU, SBD, SOS, SSP, LKR, SDG, SRD, SZL, SEK, CHE, CHW, SYP, TWD, TJS, TZS, THB, TOP, TTD, TND, TRY, TMT, UGX, UAH, AED, USN, UYI, UYU, UZS, VUV, VEF, VND, YER, ZMW, ZWL, XBA, XBB, XBC, XBD, XTS, XXX, XAU, XPD, XPT, XAG Available options:
Unspecified, AMEX, BC, CartaSi, Dankort, Delta, DinersClub, Discover, Electron, Elo, enRoute, Hipercard, JCB, Maestro, MasterCard, MC_Alaska, MC_Canada, Switch, Troy, UATP, UnionPay, Visa Available options:
Unspecified, AMEX, BC, CartaSi, Dankort, Delta, DinersClub, Discover, Electron, Elo, enRoute, Hipercard, JCB, Maestro, MasterCard, MC_Alaska, MC_Canada, Switch, Troy, UATP, UnionPay, Visa Show child attributes
Show child attributes
Response
OK