marcopolo Online payment
Sign up
Worldline app


Our Hosted Checkout Page is the ideal solution to offer your customers online payments in your web shop. It combines high versatility with minimum requirements.

  • Delegate handling sensitive data to us for PCI compliancy
  • Flexible and easy visual adaptation
  • Easy integration, instant payment!

Get started

To process transactions on our platform with this solution, make sure that

Are you all set? Then learn how to use our Hosted Checkout Page in the next chapter!

Get started

How it works

Acquirer Secure transfer of card
data via a form hosted 
on our platform Real-time 1 Merchant Connection between our 
platform & acquirer to 
process the transaction 2 Our platform

Before you process live transactions, use our test environment. Get to know our solution without costs or any commitments involved! Once you want to go live, check out here how to get a production account or contact us!

Ways to integrate

1Use our SDKs

Use our Server SDKs to seamlessly connect your server environment to the Ingenico Direct platform's Server API. These SDKs simplify the API's functionality with easy-to-use platform-specific objects.

Ruby PHP Python 2 Node.js Java Python 3 .NET

2Use our plugins

Our Plugins provide a seamless link between your webshop and our platform. By effectively wrapping our RESTful API, these plugins save you time on writing code and make integration quick and easy.

Prestashop WooCommerce SAP Magento Shopify Salesforce Shopware Chargebee BigCommerce Aero Commerce OpenCart

Integration steps

At one point during the checkout process, you send your customers to our secure payment page. They enter their card details, we send them to your acquirer and provide you with the result.

Our Hosted Checkout Page works with all payment methods available on our platform. If your customers choose a redirection payment method, we will redirect your customers directly to the third-party provider.

The following chapters cover a high-level overview of a typical flow. It describes all the steps you need to follow for processing Hosted Checkout Page transactions. Find a detailed overview including optional steps, 3-D Secure authentication etc. in the dedicated chapter.

  1. Initialise Server SDK
  2. Create Hosted Checkout session
  3. Redirect customer to Hosted Checkout Page
  4. Get transaction result
  5. Show result & redirect customer to webshop

Initialise Server SDK

Initiate the Server SDK by defining connection URLs, your PSPID on our platform and API Key/Secret. Read the documentation of your preferred SDK to learn more.

Endpoint URLs in test / live

Our platform allows you to send requests either to our test environment or live environment:

  • Endpoint URL TEST:
  • Endpoint URL LIVE:

If you are using our Server SDKs, your application needs to target the respective environment / integration mode URL via instances of CommunicatorConfiguration/ IClient/ CreateHostedCheckoutRequest. Detailed information about the how-to are available in the following chapters, including full code samples. If you are using plugins, you might have to configure the test / live endpoints manually in your plugin back office. We describe this in the "Configure plugin" chapter in the respective guide.

Create Hosted Checkout session

Send your customers to our secure payment page to enter the card details. To do so, you need a redirection URL to our Hosted Checkout Page. Get this URL by sending a CreateHostedCheckout request to our platform.

Redirect customer to Hosted Checkout Page

Our platform sends a response in the instance of CreateHostedCheckoutResponse you created upon your request. Use the redirectUrl property to redirect your customers to our Hosted Checkout Page.

// Properties of createHostedCheckoutResponse
    "RETURNMAC": "12345678-90ab-cdef-1234-567890abcdef",
    "hostedCheckoutId": "123456",
    "merchantReference": "7e21badb48fe45848bbc1efef2a88504",
    "partialRedirectUrl": ""
    "redirectUrl": ""

Get transaction result

Your customers enter their card details on the Hosted Checkout Page which we submit to your acquirer. We receive the transaction result which you can request via a GetHostedCheckoutResponse. Use the hostedCheckoutId from the CreateHostedCheckoutResponse

Learn in our dedicated Status guide more about the properties from the response, their meaning and how to proceed appropriately depending on the transactions’s status.

Mind that the hostedCheckoutId is available for three hours until the CreateHostedCheckout session expires. Alternatively, you can receive the result via webhooks or request the transaction status any time via a GetPaymentDetails request.

Show result & redirect customer to webshop

Once our platform has received the transaction result, we redirect your customers to your webshop. Define a hostedCheckoutSpecificInput.returnUrl in the initial CreateHostedCheckout request for this redirection. Display the transaction result you have received in the previous step on your returnUrl.


Find a full transaction flow involving every party and (optional) steps in this overview:

  1. Your customer goes to your check-out page and finalises the purchase.
  2. You send a CreateHostedCheckout request to our platform.
  3. Our platform returns a redirectionUrl.
  4. You redirect your customer to the redirectionUrl.
    4'(optional). We perform a fraud prevention check.
  5. We redirect the customer to her/his issuing bank for 3-D Secure authentication. The customer identifies herself/himself.
  6. Our platform receives the 3-D Secure authentication result from the issuer. Based on the result, two scenarios are possible:
    a) If the identification was unsuccessful, we redirect your customers to your returnUrl , ending the flow. You request the transaction result as described in step 9.
    b) If the identification was successful, the flow continues at step 8.
  7. We process the transaction and receive the result from the acquirer.
  8. We redirect your customer to your returnUrl.
  9. You request the transaction result from our platform and display it on your returnUrl.
  10. If the transaction was successful, you can deliver the goods / service.

Use additional possibilities

Our Hosted Checkout Page offers many more possibilities. Learn here all about its available features.

Use token for recurring payments

1-Click-Payments are a great way to enhance your customers’ payment experience and may help to raise your conversion rate. By using an existing token, you can pre-fill the Hosted Checkout Page for your customers:

Customise payment page look and feel

Our platform allows you to adapt the look and feel of our Hosted Checkout Page to a great extent. Adapting the payment page to your corporate identity can encourage your customers to finalise their order after redirecting them to the Hosted Checkout Page.

Choose language version

Our Hosted Checkout Page is available in various languages. Populate locale to display it in your customers’ preferred language. The value is a combination of ISO 639-1 (language) and ISO 3166-1 (country):

"hostedCheckoutSpecificInput": {
        "locale": "en_GB",
		/* other properties omitted */

We support the following languages:



Simplified Chinese

Customise template

Customise the template in the Merchant Portal. Refer to the dedicated chapter in the Merchant Portal guide to learn how to personalise your customers' payment experience with ease.

Pre-select available payment methods

Reducing the payment steps is key to encourage your customers to complete their order. HostedCheckOutSpecificInput contains properties that allow you.

  • Skip the payment selection screen and redirect your customers to the payment form for a specific payment method directly. This also works for redirections to a third-party provider (i.e. Paypal).
    All our payment methods have an individual “Payment product id”. You can find it in the “Overview” tab of the respective payment method.

    This code sample redirects your customers to the PayPal portal right after sending them to the redirectURL/PartialRedirectUrl:

  • Learn more about these properties and their accepted value range in our API
  • Make sure that the payment method you would like to use is active in your test/live account. Contact your account manager to ensure this
  • Include/Exclude payment groups/products on the payment method selection screen. Use either a selection of Payment Product Ids or pre-defined groups:

Group card payment methods

Property hostedCheckoutSpecificInput.cardPaymentMethodSpecificInput.groupCards=true allows you to group all credit card payment methods to one group “Cards” on the Hosted Checkout Page.

Grouping can be a convenient tool to add some clarity to the payment selection screen.

Any of your active card payment methods in your account are included in this group. Once your customers select “Cards”, we redirect them to the payment mask for entering the card number.

Our platform detects the card scheme automatically once your customers start typing in the number. This also works for co-badged cards (where applicable).

If your customers enter a number from any card scheme that is not available in your account, the payment mask will display "Card number incorrect or incompatible".

Therefore, we strongly advise you to inform your customers in your webshop environment about all available card payment methods before redirecting your customers to the Hosted Checkout Page.

Control number of payment attempts

Property hostedCheckoutSpecificInput.allowedNumberOfPaymentAttempts allows you to limit the number of retry attempts to pay for your customers’ orders.

This will help

  • Mitigating fraud (as fraudsters will try different card numbers and/or payment methods).
  • Reducing your transaction costs (as ANZ Worldline Payment Solutions and/or your acquirer might charge you for each retry, depending on your contract).

To do so, add this property to a standard CreateHostedCheckout request with a value between 1 and 10. After every unsuccessful payment attempt (i.e. because of a declined authorisation or a failed 3-D Secure check), we redirect your customers to our intermediate status page. If there are still retries left, it will display a "Retry" button, allowing the customers to try another card and/or payment method (depending on your pre-selection of available payment methods). If the last retry is unsuccessful, our intermediate status page will say "You have reached the maximum number of attempts". Our platform will then redirect your customers to your returnURL.

  • If you leave out allowedNumberOfPaymentAttempts in your request, our platform grants 10 retries.
  • Find detailed information about this property in our API reference.

Was this page helpful?

Do you have any comments?

Thank you for your response.