Payment gateways

Worldline Direct Hosted Checkout — setup and reference

Configure the exact merchant fields, payment confirmation, currencies, callbacks and recovery for Worldline Direct Hosted Checkout.

Platform
Laravel / PHP
Laravel
13
PHP
8.4
Database
Dedicated MySQL-compatible production database

Module and release scope

This guide covers Worldline Direct Hosted Checkout 1.0.0, Extension API 1, from the reviewed product source. Its declared core range is 1.3.6–1.3.99. Use the matching released core and signed provider package; a version label alone does not install the required contracts. Source availability does not mean the module is bundled in every currently downloadable product, installed on your server, enabled or certified for your merchant/server account. Nothing in this guide enables a provider or changes your existing connections.

Open System → Payment gateways (newer source may group these as Payments, Domain services or Hosting services). Install the reviewed signed package through Modules & addons or the integration workspace's Install tab, enable the module separately, add an account/connection, save its own credentials, run its stated Test and explicitly enable the connection. Saving or retesting disables the connection until you enable it again. Start with the provider's test environment where supported; otherwise use an isolated account or server.

Exact connection fields

These are the fields declared by this module. Secret values are entered privately and encrypted by the application. Defaults are configuration hints, not approved live merchant settings. Internal fields are populated by the module and are not operator-editable.

Key / label Type Required Default / guidance
mode — Environment select Yes Default: "sandbox" Choices: sandbox = Sandbox, live = Live
merchant_id — PSPID / merchant ID text Yes Use the account-specific value described below.
api_key — API key ID secret Yes Use the account-specific value described below.
api_secret — API secret secret Yes Use the account-specific value described below.
webhook_key_id — Webhook key ID text No Required with webhook secret to receive asynchronous completed-payment events.
webhook_secret — Webhook secret secret No Use the account-specific value described below.

This module targets Worldline Direct / GoPay Hosted Checkout v2, not Connect v1 or Worldline country-specific legacy APIs. Supply the PSPID/merchant ID and its API key ID and API secret for Sandbox or Live. Grant hosted checkout, payment retrieval and test-connection access. Test calls the merchant-scoped services/testconnection endpoint.

Supported invoice currencies: EUR GBP USD CHF PLN CZK DKK NOK SEK AUD CAD NZD, subject to merchant approval. Hosted card payments request SALE.

For asynchronous payments, enter the separate webhook key ID and webhook secret. Register the connection’s full webhook URL in the Merchant Portal and subscribe to completed payment/capture notifications. The endpoint answers the documented GET verification challenge and validates X-GCS-KeyId / X-GCS-Signature with HMAC-SHA256. Every event re-reads the merchant-scoped payment and requires CAPTURED, COMPLETED and statusCode 9. The browser return/reconciliation re-reads the stored hosted checkout and payment ID. Authorizations and refunds are not treated as payments.

Sources: https://docs.direct.worldline-solutions.com/en/integration/basic-integration-methods/hosted-checkout-page https://docs.direct.worldline-solutions.com/en/integration/api-developer-guide/manual-authentication https://docs.direct.worldline-solutions.com/en/integration/api-developer-guide/statuses https://docs.direct.worldline-solutions.com/en/integration/api-developer-guide/webhooks

Install and configure

This is an API 1 payment module for the current product source (core 1.3.6). It installs disabled and contains no account credentials. In Payments → Available, open this provider, enable its module after reviewing it, then add a merchant account. Save credentials, run Test and explicitly enable the account. Merchant onboarding and payment-method approval remain with the provider.

Only the listed invoice currencies are supported, using exact two-decimal amounts. Domain/storefront currency is not silently converted. The hosted provider page chooses methods available for the merchant, payer and country. The application never collects a card number or CVV.

The account’s full webhook URL is shown after saving. Register that one HTTPS URL for every storefront sharing the account. Browser success messages never mark an invoice paid. Pending, declined, partly paid, authorization-only and refunded payments require their actual provider state; no automatic refund is requested. Test uses authentication/read-only metadata, never a charge. API diagnostics are redacted.

← All EmailaBiller guidesGet help →

Need help with EmailaBiller?

Tell us the product version and what you are trying to do. Keep passwords and private keys out of your message.

Contact Emaila