# Worldpay Business Gateway 350 The Worldpay Business Gateway 350 (BG350) offering supports one-time card payments. To collect recurring payments with Worldpay, you need to use [Worldpay Corporate Gateway](/docs/payment-processors/worldpay-corporate-gateway). | [Multi-merchant](/docs/payment-processors/multi-merchant-accounts-for-psps) | [Multi-currency](/docs/payment-processors/multiple-currency-support-in-findock) | | --- | --- | | | | | Payment Method | [Online Payment Flow](/docs/payments/accepting-payments-with-findock#online-payment-collection) | [Integration Patterns](/docs/payments/accepting-payments-with-findock#online-integration-patterns) | [Data Entry](/docs/payments/accepting-payments-with-findock#data-entry) | One-time | Recurring | [Refunds](/docs/payment-processors/payment-methods/payment-methods-overview#refunds) | | --- | --- | --- | --- | --- | --- | --- | | [Card](/docs/payment-processors/payment-methods/cards) | Online Redirect | API | No | | | | **Prerequisites** * FinDock is installed and configured. * WebHub is connect. * You have a Worldpay Business Gateway 350 account. ## Install and activate BG350 extension Follow the standard procedure for [installing](/docs/setup/install-findock) the Worldpay for FinDock package, and then [activate](/docs/setup/add-payment-extensions) the Worldpay BG350 extension and card payment method. Check and assign the [required permissions](/docs/setup/general-permission-guidance). If you are using custom permission set groups, ensure the [package-specific permission sets](/docs/setup/permission-set-groups#worldpay-permission-sets) are assigned. ## Set up Business Gateway 350 account Before configuring the Worldpay BG350 extension, you need to do some configuration in the Worldpay Business Manager portal. Your organization should have a BG350 account with Worldpay. Use those account credentials here: [Worldpay login](https://secure.worldpay.com/sso/public/auth/login.html). Testing of the BG350 integration requires a test setup with Production Mode. Keep the Business Manager portal open while you configure FinDock. Some information from your Worldpay account is needed for the FinDock settings. ## Configure Worldpay BG350 extension After you have finished the Worldpay merchant account setup, you can configure the Worldpay extension in FinDock. To configure the Worldpay extension: 1. Launch the FinDock app and click the **FinDock Setup** tab. 2. Click **Processors & Methods** in the left-hand menu. 3. On the **Installed** tab, click the Worldpay Business Gateway 350 processor entry. 4. On the **Accounts** tab, click **Add account**. 5. Fill in the Worldpay target settings as described below. * **Notification URL**: this value is automatically filled by the Notification Gateway. * **Endpoint**: the Worldpay service endpoint for authorizations and transactions. Enter the endpoint depending on whether you are configuring a sandbox (test) or production org. * Test: `https://secure-test.worldpay.com/jsp/merchant/xml/paymentService.jsp` * Production: `https://secure.worldpay.com/jsp/merchant/xml/paymentService.jsp` * **Merchant Code**: enter here your code as shown in the left-hand menu of the Business Manager portal. * **Installation Id**: enter the Installation ID under Setup > Installations > Invisible XML > Integration Setup * **Username**: enter the username for the Invisible XML installation * **Password**: enter the password for the Invisible XML installation 6. Click **Save**. ### Integrate FinDock with merchant code Now you need to complete the integration by adding the generated Notification URL for your new target into the Worldpay Admin Interface. 1. In the left-hand menu, enable Production Mode if it isn't already. 2. Click **SETUP** in the left-hand menu, and then select the Installations tab. ![BG350 Installations setup](/assets/bg350-installations-setup.b587cfc3b984bb5d2cb01de0f2fb530a492d56395623316fb7cf0401f604b9bd.f78e0b2f.png) 3. In the row for Invisible XML, click the cog wheel for the test or production setup (depending on whether you are setting up a sandbox or product org). 4. Under Other Actions > Channels click Edit Channels. 5. Under Merchant Channels, add the Notification URL from FinDock to the http address field. Then select xml and POST, and make sure the http channel is Active. ![BG350 Merchant Channels](/assets/bg350-merchant-channels.6332eb993f314c00db88e73832acb6d4e664ee2b7bf87d66a8690f1c9fd8b9bc.f78e0b2f.png) 6. Click **Save Settings** when you are done. ### Default target Repeat the above procedures for each Worldpay merchant code you want to integrate with FinDock. When you are done, go to the Worldpay extension setup and set one of the targets as your default target. You need to save a default even if you have only one target configured. ## Refund handling Worldpay payments can be refunded from the Worldpay dashboard. However, refunds are not automatically processed in FinDock. ## Payment API To test your Worldpay configuration for one-time payments, you can use the following API message. If your configuration is correct, you should be able to navigate to the RedirectURL provided in the response and pay the amount specified. When a redirect ends in an unexpected error, the error message is stored in the last status reason of the installment. This request initiates a one-time credit card transaction with Worldpay. ```json { "SuccessURL": "https://www.example.com/success", "FailureURL": "https://www.example.com/error", "Payer": { "Contact": { "SalesforceFields": { "FirstName": "Test", "LastName": "Payment", "Email": "testpayment@findock.com" } } }, "OneTime": { "Amount": "15" }, "PaymentMethod": { "Name": "CreditCard", "Processor": "PaymentHub-WorldPay" }, "Settings": { "SourceConnector": "PaymentHub" } } ```