Quick start (Hosted)

Prerequisite: You need a test account before you can start.Contact usand we'll set you up with one.

Once you have a test account, follow these steps to make your first basic test payments:


Your Implementation Manager (or support contact) should have given you:

  • A Merchant Code (or codes)
  • An installation id (or ids)
  • A Merchant Administration Interface Username and Password

Compatible devices and browsers

Our hosted payment pages are tested on a number of the latest devices and browsers regularly. This ensures they're up to date with the latest operating system versions and features.

Tested browsers

  • Chrome
  • Edge
  • Firefox
  • Safari

Tested devices

  • iOS
  • Android

For iOS and Android devices we support the native browser, the most recent operating system, and the last major operating system release at the point of testing.

Get your credentials

  1. Log in to the test Merchant Administration Interface (MAI):

  2. Click ACCOUNT, then select Profile from the top menu.

  3. Note your New Username for the connection.
  4. Click the pencil icon (Pencil icon) next to XML Password.
  5. Enter your new password and click Save XML Password.

Restrict IP addresses

You can restrict connections to your test account by specifying a number of IP addresses or ranges that your account can be accessed from. To do this:

  1. Click Integration.
  2. Go to the Merchant Environment tab, and click New Test IP to add a new IP address (or range).

Best practice: Send messages to fully qualified domains
Don’t send messages to specific IP addresses, as these can change, leading to a break in communications – sometimes we need to move to different IP addresses in our range to communicate with you.


Connect to Worldpay

To process payments through Worldpay you must:

  • Use a secure connection. We recommend that you use Transport Layer Security v1.2 (TLS v1.2), however as a minimum you should use TLS v1.1
  • Use basic authentication (the New Username and XML Password as created above)
  • Use content type “text/xml"

Create payment request

You interact with Worldpay using XML messages. All messages should conform to the WorldpayDocument Type Definition(DTD) and must be less than 4KB. To avoid issues always use industry-standard tools to validate and parse XML.

Set up your platform

Set up your platform for submitting XML messages to Worldpay’s payment service.

Note: The Worldpay payment service only accepts incoming XML messages if the originating IP address is registered for the merchant code in the message. For more information about registering and managing multiple IP address ranges, see theMerchant Environmentsection of theMerchant Admin Interface Guide.


The test URL to send XML messages to is:

Example XML order

Here's a basic example of the data submitted for a card test payment. Before you send it you need to change the merchantCode to your own, and be aware that each payment requires a unique orderCode:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//Worldpay//DTD Worldpay PaymentService v1//EN" "">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT_CODE"> <!--Enter your own merchant code-->
      <order orderCode="YOUR_ORDER_CODE" installationId="1234567"> <!--installationId identifies your Hosted Payment Page-->
         <description>YOUR_DESCRIPTION</description> <!--Enter a description useful to you-->
         <amount currencyCode="GBP" exponent="2" value="5000" />
            <include code="ALL" />
               <address2>Queensbridge Road</address2>
               <address2>Queensbridge Road</address2>

The response to this order

In response, we send a redirect URL to the payment page:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//WorldPay/DTD WorldPay PaymentService v1//EN" "">
<paymentService version="1.4" merchantCode="ExampleCode1"> <!--The merchantCode you supplied in the order-->
        <orderStatus orderCode="ExampleOrder1"> <!--The orderCode you supplied in the order-->
            <reference id="YourReference">;Ticket=00146321872957902pqKhCTUf0vajKCw-X5HqZA</reference>

With the redirect URL you can go to the payment page and send the values shown inTest scenarios. Note that this is a very basic setup, and does not cover additional features explained inPayment requests(such as appending the result URL to include additional parameters).