Processor Credentials
Each processor type requires different credentials in theoptions object when calling tagada.processors.create(). This page documents the exact fields for every supported gateway.
Supported Gateways
Stripe
Cards, wallets, APMs
NMI
Direct gateway
Checkout.com
Global payments
Airwallex
Multi-currency
Mastercard
Enterprise gateway
Authorize.Net
US gateway
Finix
Platform payments
N-Genius
Middle East
CCAvenue
India gateway
Ovri
EU gateway
KessPay
Alt. gateway
Trust Flow
Alt. gateway
ConvesioPay
WordPress payments
Tap
MENA payments
TagadaPay
Managed payments
Sandbox
Testing
Common Structure
All processors share the same creation format — only theoptions differ:
Sandbox
Type: sandbox | Use for: Testing and development
No real credentials required — the sandbox processor simulates a payment gateway.
| Field | Type | Required | Description |
|---|---|---|---|
testMode | boolean | No | Always treated as test mode |
forceDecline | boolean | No | Force all payments to decline |
targetApprovalRate | number | No | Simulate a specific approval rate (0–100) |
simulatedDelay | number | No | Add artificial latency in milliseconds |
Stripe
Type: stripe | Where to find credentials: Stripe Dashboard → Developers → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
secretKey | string | Yes | Stripe secret key (sk_live_... or sk_test_...) |
publicKey | string | Recommended | Stripe publishable key (pk_live_...) |
webhookSecret | string | Recommended | Webhook signing secret (whsec_...) |
testMode | boolean | No | Use Stripe test mode |
sendReceiptEmail | boolean | No | Let Stripe send payment receipt emails |
descriptor | object | No | Statement descriptor override (see Descriptor Fields) |
radar | object | No | Enable Stripe Radar: { enabled: true, publishableKey: 'pk_...' } |
apmSettings | object | No | Alternative payment methods (Apple Pay, Google Pay, etc.) |
Stripe Connect: If you’re connecting via OAuth instead of API keys, Stripe provides an
accountId (e.g. acct_...). In this case you don’t need secretKey — TagadaPay handles the authentication. This is typically done through the TagadaPay dashboard, not the API.
NMI
Type: nmi | Where to find credentials: NMI Merchant Portal → Settings → Security Keys
| Field | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | NMI Security Key |
username | string | No | NMI username (for certain integrations) |
password | string | No | NMI password |
testMode | boolean | No | Use NMI test mode |
merchantName | string | No | Merchant name for 3DS |
merchantUrl | string | No | Merchant URL for 3DS |
merchantCountryCode | string | No | ISO country code for 3DS |
enable3DS | boolean | No | Enable 3D Secure authentication |
useProcessorToken | boolean | No | Use NMI’s tokenization |
descriptor | object | No | Statement descriptor override |
acquirerBinVisa | string | No | Acquirer BIN for Visa 3DS |
acquirerBinMastercard | string | No | Acquirer BIN for Mastercard 3DS |
acquirerBinAmex | string | No | Acquirer BIN for Amex 3DS |
acquirerBinDiscover | string | No | Acquirer BIN for Discover 3DS |
acquirerBinJcb | string | No | Acquirer BIN for JCB 3DS |
acquirerBinDinersClub | string | No | Acquirer BIN for Diners Club 3DS |
acquirerBinCB | string | No | Acquirer BIN for Carte Bancaire 3DS |
amexRequestorType | string | No | Amex 3DS requestor type |
cbSiretNumber | string | No | SIRET number for Carte Bancaire |
discoverClientId | string | No | Discover 3DS client ID |
Checkout.com
Type: checkout | Where to find credentials: Checkout.com Dashboard → Developers → Keys
Supports two authentication modes:
- Secret Key (recommended)
- OAuth
| Field | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | Checkout.com secret key |
sandboxed | boolean | No | Use sandbox environment |
Airwallex
Type: airwallex | Where to find credentials: Airwallex Dashboard → Developer → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
clientId | string | Yes | Airwallex client ID |
clientApiKey | string | Yes | Airwallex API key |
webhookSecret | string | Yes | Webhook signing secret |
testMode | boolean | No | Use Airwallex demo environment |
descriptor | object | No | Statement descriptor override |
apmSettings | object | No | APM config (Klarna, Afterpay, PayPal, etc.) |
Mastercard Gateway
Type: mastercard | Where to find credentials: Mastercard Gateway Merchant Administration portal
| Field | Type | Required | Description |
|---|---|---|---|
merchantId | string | Yes | Merchant ID from your Mastercard Gateway account |
password | string | Yes | API password (not your login password) |
gatewayUrl | string | Yes | Your gateway API URL (region-specific) |
apiVersion | string | No | API version (defaults to latest) |
testMode | boolean | No | Use test mode |
descriptor | object | No | Statement descriptor override |
acquirerBinVisa | string | No | Acquirer BIN for Visa 3DS |
acquirerBinMastercard | string | No | Acquirer BIN for Mastercard 3DS |
Authorize.Net
Type:authorizenet | Where to find credentials: Authorize.Net Merchant Interface → Account → API Credentials & Keys
| Field | Type | Required | Description |
|---|---|---|---|
apiLoginId | string | Yes | API Login ID |
transactionKey | string | Yes | Transaction Key |
clientKey | string | No | Public client key (for Accept.js tokenization) |
testMode | boolean | No | Use sandbox environment |
Finix
Type: finix | Where to find credentials: Finix Dashboard → Settings → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
username | string | Yes | Finix API username |
password | string | Yes | Finix API password |
merchantId | string | Yes | Finix merchant identity ID |
sandboxed | boolean | No | Use sandbox environment |
webhookSecret | string | No | Webhook signing secret |
Network Ngenius
Type: ngenius | Where to find credentials: N-Genius Online Portal → Settings → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | N-Genius API key |
outlet | string | Yes | Outlet reference ID |
apiUrl | string | Yes | API gateway URL (must end with a lowercase letter, no trailing slash) |
sandboxed | boolean | No | Use sandbox environment |
CCAvenue
Type: ccavenue | Where to find credentials: CCAvenue Merchant Portal → Settings → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
accessCode | string | Yes | CCAvenue access code |
workingKey | string | Yes | CCAvenue working (encryption) key |
merchantId | string | Yes | CCAvenue merchant ID |
testMode | boolean | No | Use test mode |
Ovri
Type: ovri | Where to find credentials: Ovri Back Office → Configuration → API
| Field | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | Ovri API key |
websiteKey | string | Yes | Ovri website key |
secretKeyPos | string | Yes | Ovri secret POS key |
testMode | boolean | No | Use test mode |
KessPay
Type: kesspay | Where to find credentials: KessPay Merchant Portal
| Field | Type | Required | Description |
|---|---|---|---|
clientId | string | Yes | KessPay client ID |
clientSecret | string | Yes | KessPay client secret |
username | string | Yes | KessPay API username |
password | string | Yes | KessPay API password |
sellerCode | string | Yes | Seller code |
apiSecretKey | string | Yes | API secret key |
publicKey | string | Yes | Public key |
testMode | boolean | No | Use test mode |
notifyUrl | string | No | Webhook notification URL |
Trust Flow
Type: trustflow | Where to find credentials: Trust Flow Merchant Portal
| Field | Type | Required | Description |
|---|---|---|---|
appId | string | Yes | Trust Flow application ID |
secretKey | string | Yes | Trust Flow secret key |
testMode | boolean | No | Use test mode |
ConvesioPay
Type: convesio | Where to find credentials: ConvesioPay Dashboard
| Field | Type | Required | Description |
|---|---|---|---|
secretKey | string | Yes | ConvesioPay secret key |
integrationName | string | Yes | Integration name configured in ConvesioPay |
webhookSecret | string | No | Webhook signing secret |
testMode | boolean | No | Use test mode |
Tap
Type:tap | Where to find credentials: Tap Dashboard → goSell → API Keys
| Field | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | Tap secret API key |
merchantId | string | Yes | Tap merchant ID |
testMode | boolean | No | Use test mode |
descriptor | object | No | Statement descriptor override |
threeDSecure | boolean | No | Enable 3D Secure |
saveCard | boolean | No | Allow saving cards for future payments |
receiptEmail | boolean | No | Send receipt email via Tap |
receiptSms | boolean | No | Send receipt SMS via Tap |
TagadaPay
Type: tagadapay | How it works: Managed payment processing by TagadaPay. You provide your account ID and TagadaPay handles the rest.
| Field | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Your TagadaPay account ID |
testMode | boolean | No | Use test mode |
descriptor | object | No | Statement descriptor override |
Contact TagadaPay support to enable this processor and get your account ID.
Descriptor Fields
Several processors support adescriptor object for customizing the statement descriptor shown on customer bank statements:
Full Example
Here’s a complete example connecting Stripe with all common options:Next Steps
Merchant Quick Start
Full 7-step setup from processor to live checkout
Multi-PSP Routing
Connect multiple processors and cascade transactions
Sandbox Testing
Test payments without real money
