Worldpay - Global e-commerce
Connect WorldPay WPG to Recurly for global payment processing — including LATAM via Ebanx, SEPA, ACH, Tarjeta Naranja, and multi-currency support across 50+ currencies.
Prerequisites
- Established commercial agreements with WorldPay and Ebanx to facilitate local transactions. WorldPay supports dLocal for existing merchants only — new merchants should work with WorldPay on an Ebanx solution. Contact [email protected] for introductions if needed.
- For Argentinian processing — An active Recurly account with ARS currency enabled, a WorldPay gateway configured for ARS, and a WorldPay merchant account capable of Zero Dollar Authorizations (ZDA).
- For TLID storage — WorldPay does not return TLIDs by default. Contact WorldPay to enable TLID return for Mastercard transactions before using this feature.
- For SEPA (Direct Debit) — An active Recurly account with EUR currency enabled, a WorldPay gateway configured for SEPA/EUR with mandate tokenization support.
- For ACH (Direct Debit) — An active Recurly account with USD currency enabled and WorldPay NACHA pre-verification enabled for ACH/USD compliance.
Limitations
- Tarjeta Naranja does not support ZDA — Verifications for this card brand are processed with a $1.00 charge instead.
- WorldPay SEPA does not support free-trial subscriptions or verification transactions — SEPA billing info updates must occur within the context of processing a transaction.
- Tax ID required for many LATAM transactions — Submit a tax ID (e.g., CUIT) with each transaction. If using CUIT, CPF, or CNPJ, specify the type via API using
tax_identifier_type. For all other tax ID types, send the value without a type. - Sales tax may be required — Certain regions require sales tax on transactions. Confirm requirements with WorldPay and configure sales tax in your Recurly site. See sales tax documentation.
- Prohibited businesses — Check WorldPay's prohibited business types to confirm your business qualifies.
Definition
Key details
| Feature | Details |
| Services that work with Recurly | Payment processing, recurring subscriptions, MOTO processing. LATAM support via Ebanx and dLocal (existing merchants only). |
| Supported operations | Verify, Purchase, Void, Refund (online and offline) |
| Supported payment types | Credit cards, local card brands (Tarjeta Naranja), Apple Pay, Google Pay, Direct Debit: ACH and SEPA |
| Supported card brands | Visa, Mastercard, Discover, Union Pay, JCB, Diners Club, American Express (most currencies). Tarjeta Naranja on ARS only. |
| Gateway-specific 3DS2 supported | Yes — depends on WorldPay configuration. Recurly.js required in certain cases. |
| Card on file supported | Yes |
| Regions | Global, with focus on UK/EU, Argentina, Brazil, Chile, Colombia, Costa Rica, El Salvador, Guatemala, Mexico, Ecuador, Panama, Paraguay, Uruguay, Honduras, and Peru. |
| Currencies | ARS (Visa, MC, Amex, Discover, JCB, Diners Club, Tarjeta Naranja) · USD (ACH) · EUR (SEPA) · All others: ANG, AUD, BRL, CAD, CHF, CLP, CNY, COP, CZK, DKK, GBP, HKD, HRK, HUF, ILS, INR, ISK, JPY, KRW, KES, MXN, MYR, NOK, NZD, PHP, PLN, PYG, RUB, SAR, SEK, SGD, THB, TRY, TWD, UYU, VEF, ZAR, and more. |
Credentials
WorldPay WPG requires XML credentials from WorldPay. For SEPA, you'll also need additional information for mandate creation.
Billing address — Recurly submits billing address data to WorldPay whenever available. WorldPay requires four fields: Address line 1, City, Postal code, and Country. If any are missing, Recurly uses defaults: city = "city," address line 1 = "address," and country derived from the customer's IP address. If country can't be determined, no billing address is submitted.
Voids and refunds — WorldPay processes void ("cancel") and refund order modifications asynchronously. There is a small chance WorldPay may reject a void or refund request between 5 and 45 minutes after receiving it.
Configuring WorldPay with Recurly
Step 1: Configure your WorldPay merchant account
Allow-list Recurly's IP addresses
In the WorldPay portal, authorize Recurly's IP addresses. See the IP allowlist documentation for the full list.
Configure callback URLs
Add your Recurly callback URL in WorldPay for event notifications. Enable all event types — Recurly will use what it needs for asynchronous actions such as invoice updates and Direct Debit status updates.
Standard: https://callbacks.recurly.com/worldpay/YOUR_SUBDOMAIN
EU data centers: https://callbacks.eu.recurly.com/worldpay/YOUR_SUBDOMAIN
Step 2: Configure WorldPay in Recurly
Enable Direct Debit retries (SEPA/ACH)
In Recurly, go to Configuration → Payment Settings and enable Direct Debit retries so failed SEPA and ACH payments due to insufficient funds are retried automatically.
Step 3: Enable global and regional currencies
Step 4: Configure tax ID collection (LATAM)
For Argentine and other LATAM transactions, collect the customer's tax ID (e.g., CUIT) during the initial transaction. Include the tax_identifier and tax_identifier_type fields in your transaction payload. If using a tax ID type other than CUIT, CPF, or CNPJ, send the value without a type definition.
Step 5: Test and go live
Test the full setup rigorously — including regional payment methods, tax ID submission, and any Direct Debit flows — before switching to production.
FAQs
Why is my WorldPay refund failing?
WorldPay supports Online Refund Authorization, which allows banks to decline refund attempts in real time. This became standard across all WorldPay accounts in May 2025. A refund can be declined if the customer's account is closed or the bank doesn't approve the refund. If this happens, coordinate with your customer to return funds through another method.
Why is my ACH transaction failing?
ACH bank accounts go through a NACHA-required fraud and accuracy check before being added to Recurly. If a customer is updating a bank account on file or signing up for a subscription and the transaction fails, a fraud check at WorldPay likely didn't pass — contact WorldPay for details and have the customer provide a different payment method.
ACH transactions that have been scheduled or approved can also fail later due to bank processing times. For failures due to insufficient funds or closed accounts, Recurly can retry automatically when you enable Direct Debit retries in Payment Settings. Recurly retries ACH and SEPA payments only when the failure reason is insufficient funds.