{"templateId":"markdown","versions":[{"version":"20250101","label":"2025-01-01 (Latest)","link":"/products/account-verifications/verifications","default":true,"active":true,"folderId":"809c5cbe"}],"sharedDataIds":{"sidebar":"sidebar-products/account-verifications/sidebars.yaml","current-catalog-info":"current-catalog-info-/products/account-verifications/openapi","api-docs-products/account-verifications/@20250101/openapi.yaml":"api-docs-products/account-verifications/@20250101/openapi.yaml"},"props":{"metadata":{"markdoc":{"tagList":["partial","badge","openapi-code-sample","json-schema","tabs","tab"]},"type":"markdown"},"seo":{"title":"Bank Account Verifications API | Worldpay Developer","description":"Verify a beneficiary's bank details to ensure the payout is going to the intended account.","siteUrl":"https://docs.worldpay-bsh.securedataplatform.co.uk","image":"/access/assets/worldpay-logo-light.21b7daf79984773a9fcd7d4fbcb07ae5289dfffd6023c4c3dca720c7058e53dc.33f780a6.svg","keywords":"documentation, api, openapi, sdks, developer, payments, json, payouts, 3ds","jsonLd":{"@context":"https://schema.org","@type":"Organization","url":"https://docs.worldpay-bsh.securedataplatform.co.uk/access","name":"Worldpay"},"meta":[{"name":"google-site-verification","content":"zjziIKaP3ImsqsfhYnEBnq1R85UabiSwl7HTXuwtZuo"},{"name":"doc_product","content":"Access"},{"name":"doc_category","content":"Documentation"}],"llmstxt":{"hide":false,"sections":[{"title":"Payments API","description":"Payment orchestration API combining fraud assessment, 3ds authentication, SCA exemptions, Worldpay Token creation and a card or wallet based payment.","includeFiles":["products/payments/@20240601/**/*"]},{"title":"Payment Queries API","description":"Querying your payments data, based on a variety of parameters.","includeFiles":["products/payment-queries/@v1/**/*"]},{"title":"Card BIN Data API","description":"Provides detailed information about a card.","includeFiles":["products/card-bin/@v1/**/*"]},{"title":"3DS Authentication API","description":"Request 3DS authentication to protect against fraud, be SCA compliant and to shift liability using this standalone API.","includeFiles":["products/3ds/@v3/**/*"]},{"title":"FraudSight API","description":"Request a risk assessment and receive a response with an outcome (e.g. lowRisk) using this standalone API.","includeFiles":["products/fraudsight/@v1/**/*"]},{"title":"Checkout SDK","description":"Integrate using our clientside SDKs for both web and native devices. Benefit from SAQ-A/PCI-SSF compliance.","includeFiles":["products/checkout/web/@v2/**/*","products/checkout/ios/@v4/**/*","products/checkout/android/@v4/**/*","products/checkout/react-native/@v3/**/*","products/checkout/flutter/@v1/**/*"]},{"title":"Tokens API","description":"Minimizes the exposure of sensitive card details and increases the security of your customer's card details.","includeFiles":["products/tokens/@v3/**/*"]},{"title":"Card Payments API","description":"Request a card payment using this standalone API, requires separate requests for 3DS, Fraud assessment etc.","includeFiles":["products/card-payments/@v7/**/*"]},{"title":"Card Verifications API","description":"Verify your customer's card to maximize your authentication rates.","includeFiles":["products/card-verifications/@v6/**/*"]},{"title":"Account Payouts API","description":"Send funds to your customer's bank accounts and search for payouts using parameters.","includeFiles":["products/account-payouts/@20250101/**/*"]},{"title":"APMs","description":"Pay using eWallets, bank transfers, direct debits, local card schemes, Postpay and eInvoice/ Buy Now Pay Later.","includeFiles":["products/apms/@20240701/**/*"]},{"title":"Balance API","description":"Request your account details for a single account or all accounts under an entity.","includeFiles":["products/balance/@20250101/**/*"]},{"title":"Card Payouts API","description":"Send funds to your customer's cards.","includeFiles":["products/card-payouts/@v4/**/*"]},{"title":"Events (Webhooks)","description":"Receive status updates from Access Worldpay by setting up a webhook.","includeFiles":["products/events/@v1/**/*"]},{"title":"FX API","description":"Manage Foreign Exchange (FX) on your payments.","includeFiles":["products/fx/@v1/**/*"]},{"title":"Hosted Payment Pages (HPP) API","description":"Our low-code option to take payments securely at the lowest PCI compliance level - SAQ A.","includeFiles":["products/hosted-payment-pages/@v1/**/*"]},{"title":"Money Transfers API","description":"Money Transfer OCTs (Original Credit Transaction) allow funds to be pushed to an eligible card in 30 minutes or less.","includeFiles":["products/money-transfers/@v1/**/*"]},{"title":"Parties API","description":"Create parties, manage your payout instruments and beneficial owners and carry out identity verification checks.","includeFiles":["products/parties/@20250101/**/*"]},{"title":"SCA Exemptions API","description":"Maximize a frictionless checkout experience by using issuer data insights to apply exemptions.","includeFiles":["products/sca-exemptions/@v1/**/*"]},{"title":"Split Payments API","description":"Divide funds from a single payment amongst yourself and your parties/sellers.","includeFiles":["products/split-payments/@20250625/**/*"]},{"title":"Statements API","description":"Retrieve your account statement and see individual entries for all credits and debits.","includeFiles":["products/statements/@20250101/**/*"]},{"title":"Transfers API","description":"Transfer funds from source account to target account.","includeFiles":["products/transfers/@20250101/**/*"]},{"title":"Verified Tokens API","description":"Verified Tokens ensures that your customer's payment details are valid and CIT compliant when creating a token.","includeFiles":["products/verified-tokens/@v3/**/*"]}]}},"dynamicMarkdocComponents":["openapi"],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"font","attributes":{"color":"#FF1F3E"},"children":[{"$$mdtype":"Tag","name":"b","attributes":{},"children":["New service"]}]}," | ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Last updated"]},": 09 October 2025"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"beneficiary-account-verifications-api","__idx":0},"children":["Beneficiary Account Verifications API"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"Badge","attributes":{"size":"small","fontWeight":"bold","color":"white","mt":"0rem","mb":"0.5rem","px":"1rem","py":"0.5rem","borderRadius":"6rem","bg":"var(--wp-colour-light-blue)"},"children":["New"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Verify a beneficiary's bank details to ensure the payout is going to the intended account."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"verify-an-account","__idx":1},"children":["Verify an account"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"request-example","__idx":2},"children":["Request example"]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-products/account-verifications/@20250101/openapi.yaml","operationId":"postAccountVerifications","exampleKey":"Validate an account","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"json","title":"Payload application/json","source":"{\n  \"merchant\": {\n    \"entity\": \"default\"\n  },\n  \"instructions\": [\n    {\n      \"party\": {\n        \"type\": \"beneficiary\",\n        \"payoutInstrument\": {\n          \"type\": \"bankAccount\",\n          \"currency\": \"GBP\",\n          \"iban\": \"GB41CITI18500818404062\",\n          \"accountHolderName\": \"John Smith\",\n          \"accountNumber\": \"123456\",\n          \"bankCode\": \"184758\",\n          \"bankName\": \"Demo Bank\",\n          \"branchCode\": \"1234\",\n          \"swiftBic\": \"DBbic01\",\n          \"accountType\": \"checking\",\n          \"address\": {\n            \"type\": \"personal\",\n            \"address1\": \"Main Bvd\",\n            \"address2\": \"No 1\",\n            \"city\": \"London\",\n            \"postalCode\": \"012345\",\n            \"countryCode\": \"GB\"\n          }\n        },\n        \"personalDetails\": {\n          \"type\": \"personal\",\n          \"title\": \"Mr\",\n          \"firstName\": \"John\",\n          \"middleName\": \"\",\n          \"lastName\": \"Smith\",\n          \"dateOfBirth\": \"2000-01-01\",\n          \"companyName\": \"Co Name\",\n          \"dateOfIncorporation\": \"2025-01-01\",\n          \"email\": \"john@domain.com\",\n          \"phones\": [\n            {\n              \"number\": \"7777777777\",\n              \"prefix\": \"44\"\n            }\n          ]\n        }\n      },\n      \"expandableKeyValuePairs\": {\n        \"key\": \"value\"\n      }\n    }\n  ]\n}"},{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications \\\n  -H 'Content-Type: application/json' \\\n  -H 'WP-Api-Version: 2025-01-01' \\\n  -H 'WP-CorrelationId: 15cd16b2-7b82-41cb-9b11-21be9dacad88' \\\n  -d '{\n    \"merchant\": {\n      \"entity\": \"default\"\n    },\n    \"instructions\": [\n      {\n        \"party\": {\n          \"type\": \"beneficiary\",\n          \"payoutInstrument\": {\n            \"type\": \"bankAccount\",\n            \"currency\": \"GBP\",\n            \"iban\": \"GB41CITI18500818404062\",\n            \"accountHolderName\": \"John Smith\",\n            \"accountNumber\": \"123456\",\n            \"bankCode\": \"184758\",\n            \"bankName\": \"Demo Bank\",\n            \"branchCode\": \"1234\",\n            \"swiftBic\": \"DBbic01\",\n            \"accountType\": \"checking\",\n            \"address\": {\n              \"type\": \"personal\",\n              \"address1\": \"Main Bvd\",\n              \"address2\": \"No 1\",\n              \"city\": \"London\",\n              \"postalCode\": \"012345\",\n              \"countryCode\": \"GB\"\n            }\n          },\n          \"personalDetails\": {\n            \"type\": \"personal\",\n            \"title\": \"Mr\",\n            \"firstName\": \"John\",\n            \"middleName\": \"\",\n            \"lastName\": \"Smith\",\n            \"dateOfBirth\": \"2000-01-01\",\n            \"companyName\": \"Co Name\",\n            \"dateOfIncorporation\": \"2025-01-01\",\n            \"email\": \"john@domain.com\",\n            \"phones\": [\n              {\n                \"number\": \"7777777777\",\n                \"prefix\": \"44\"\n              }\n            ]\n          }\n        },\n        \"expandableKeyValuePairs\": {\n          \"key\": \"value\"\n        }\n      }\n    ]\n  }'"},{"lang":"python","title":"Python","source":"import requests\n\nurl = \"https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications\"\n\npayload = {\n  \"merchant\": {\n    \"entity\": \"default\"\n  },\n  \"instructions\": [\n    {\n      \"party\": {\n        \"type\": \"beneficiary\",\n        \"payoutInstrument\": {\n          \"type\": \"bankAccount\",\n          \"currency\": \"GBP\",\n          \"iban\": \"GB41CITI18500818404062\",\n          \"accountHolderName\": \"John Smith\",\n          \"accountNumber\": \"123456\",\n          \"bankCode\": \"184758\",\n          \"bankName\": \"Demo Bank\",\n          \"branchCode\": \"1234\",\n          \"swiftBic\": \"DBbic01\",\n          \"accountType\": \"checking\",\n          \"address\": {\n            \"type\": \"personal\",\n            \"address1\": \"Main Bvd\",\n            \"address2\": \"No 1\",\n            \"city\": \"London\",\n            \"postalCode\": \"012345\",\n            \"countryCode\": \"GB\"\n          }\n        },\n        \"personalDetails\": {\n          \"type\": \"personal\",\n          \"title\": \"Mr\",\n          \"firstName\": \"John\",\n          \"middleName\": \"\",\n          \"lastName\": \"Smith\",\n          \"dateOfBirth\": \"2000-01-01\",\n          \"companyName\": \"Co Name\",\n          \"dateOfIncorporation\": \"2025-01-01\",\n          \"email\": \"john@domain.com\",\n          \"phones\": [\n            {\n              \"number\": \"7777777777\",\n              \"prefix\": \"44\"\n            }\n          ]\n        }\n      },\n      \"expandableKeyValuePairs\": {\n        \"key\": \"value\"\n      }\n    }\n  ]\n}\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"WP-Api-Version\": \"2025-01-01\",\n  \"WP-CorrelationId\": \"15cd16b2-7b82-41cb-9b11-21be9dacad88\"\n}\n\nresponse = requests.post(url, json=payload, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var payload = String.join(\"\\n\"\n      , \"{\"\n      , \" \\\"merchant\\\": {\"\n      , \"  \\\"entity\\\": \\\"default\\\"\"\n      , \" },\"\n      , \" \\\"instructions\\\": [\"\n      , \"  {\"\n      , \"   \\\"party\\\": {\"\n      , \"    \\\"type\\\": \\\"beneficiary\\\",\"\n      , \"    \\\"payoutInstrument\\\": {\"\n      , \"     \\\"type\\\": \\\"bankAccount\\\",\"\n      , \"     \\\"currency\\\": \\\"GBP\\\",\"\n      , \"     \\\"iban\\\": \\\"GB41CITI18500818404062\\\",\"\n      , \"     \\\"accountHolderName\\\": \\\"John Smith\\\",\"\n      , \"     \\\"accountNumber\\\": \\\"123456\\\",\"\n      , \"     \\\"bankCode\\\": \\\"184758\\\",\"\n      , \"     \\\"bankName\\\": \\\"Demo Bank\\\",\"\n      , \"     \\\"branchCode\\\": \\\"1234\\\",\"\n      , \"     \\\"swiftBic\\\": \\\"DBbic01\\\",\"\n      , \"     \\\"accountType\\\": \\\"checking\\\",\"\n      , \"     \\\"address\\\": {\"\n      , \"      \\\"type\\\": \\\"personal\\\",\"\n      , \"      \\\"address1\\\": \\\"Main Bvd\\\",\"\n      , \"      \\\"address2\\\": \\\"No 1\\\",\"\n      , \"      \\\"city\\\": \\\"London\\\",\"\n      , \"      \\\"postalCode\\\": \\\"012345\\\",\"\n      , \"      \\\"countryCode\\\": \\\"GB\\\"\"\n      , \"     }\"\n      , \"    },\"\n      , \"    \\\"personalDetails\\\": {\"\n      , \"     \\\"type\\\": \\\"personal\\\",\"\n      , \"     \\\"title\\\": \\\"Mr\\\",\"\n      , \"     \\\"firstName\\\": \\\"John\\\",\"\n      , \"     \\\"middleName\\\": \\\"\\\",\"\n      , \"     \\\"lastName\\\": \\\"Smith\\\",\"\n      , \"     \\\"dateOfBirth\\\": \\\"2000-01-01\\\",\"\n      , \"     \\\"companyName\\\": \\\"Co Name\\\",\"\n      , \"     \\\"dateOfIncorporation\\\": \\\"2025-01-01\\\",\"\n      , \"     \\\"email\\\": \\\"john@domain.com\\\",\"\n      , \"     \\\"phones\\\": [\"\n      , \"      {\"\n      , \"       \\\"number\\\": \\\"7777777777\\\",\"\n      , \"       \\\"prefix\\\": \\\"44\\\"\"\n      , \"      }\"\n      , \"     ]\"\n      , \"    }\"\n      , \"   },\"\n      , \"   \\\"expandableKeyValuePairs\\\": {\"\n      , \"    \\\"key\\\": \\\"value\\\"\"\n      , \"   }\"\n      , \"  }\"\n      , \" ]\"\n      , \"}\"\n    );\n\n    var host = \"https://try.access.worldpay-bsh.securedataplatform.co.uk\";\n    var pathname = \"/accountVerifications\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"WP-Api-Version\", \"2025-01-01\")\n      .header(\"WP-CorrelationId\", \"15cd16b2-7b82-41cb-9b11-21be9dacad88\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const resp = await fetch(\n    `https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'WP-Api-Version': '2025-01-01',\n        'WP-CorrelationId': '15cd16b2-7b82-41cb-9b11-21be9dacad88'\n      },\n      body: JSON.stringify({\n        merchant: {entity: 'default'},\n        instructions: [\n          {\n            party: {\n              type: 'beneficiary',\n              payoutInstrument: {\n                type: 'bankAccount',\n                currency: 'GBP',\n                iban: 'GB41CITI18500818404062',\n                accountHolderName: 'John Smith',\n                accountNumber: '123456',\n                bankCode: '184758',\n                bankName: 'Demo Bank',\n                branchCode: '1234',\n                swiftBic: 'DBbic01',\n                accountType: 'checking',\n                address: {\n                  type: 'personal',\n                  address1: 'Main Bvd',\n                  address2: 'No 1',\n                  city: 'London',\n                  postalCode: '012345',\n                  countryCode: 'GB'\n                }\n              },\n              personalDetails: {\n                type: 'personal',\n                title: 'Mr',\n                firstName: 'John',\n                middleName: '',\n                lastName: 'Smith',\n                dateOfBirth: '2000-01-01',\n                companyName: 'Co Name',\n                dateOfIncorporation: '2025-01-01',\n                email: 'john@domain.com',\n                phones: [\n                  {\n                    number: '7777777777',\n                    prefix: '44'\n                  }\n                ]\n              }\n            },\n            expandableKeyValuePairs: {key: 'value'}\n          }\n        ]\n      })\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  reqUrl := \"https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications\"\n  var data = []byte(`{\n    \"merchant\": {\n      \"entity\": \"default\"\n    },\n    \"instructions\": [\n      {\n        \"party\": {\n          \"type\": \"beneficiary\",\n          \"payoutInstrument\": {\n            \"type\": \"bankAccount\",\n            \"currency\": \"GBP\",\n            \"iban\": \"GB41CITI18500818404062\",\n            \"accountHolderName\": \"John Smith\",\n            \"accountNumber\": \"123456\",\n            \"bankCode\": \"184758\",\n            \"bankName\": \"Demo Bank\",\n            \"branchCode\": \"1234\",\n            \"swiftBic\": \"DBbic01\",\n            \"accountType\": \"checking\",\n            \"address\": {\n              \"type\": \"personal\",\n              \"address1\": \"Main Bvd\",\n              \"address2\": \"No 1\",\n              \"city\": \"London\",\n              \"postalCode\": \"012345\",\n              \"countryCode\": \"GB\"\n            }\n          },\n          \"personalDetails\": {\n            \"type\": \"personal\",\n            \"title\": \"Mr\",\n            \"firstName\": \"John\",\n            \"middleName\": \"\",\n            \"lastName\": \"Smith\",\n            \"dateOfBirth\": \"2000-01-01\",\n            \"companyName\": \"Co Name\",\n            \"dateOfIncorporation\": \"2025-01-01\",\n            \"email\": \"john@domain.com\",\n            \"phones\": [\n              {\n                \"number\": \"7777777777\",\n                \"prefix\": \"44\"\n              }\n            ]\n          }\n        },\n        \"expandableKeyValuePairs\": {\n          \"key\": \"value\"\n        }\n      }\n    ]\n  }`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"WP-Api-Version\", \"2025-01-01\")\n  req.Header.Add(\"WP-CorrelationId\", \"15cd16b2-7b82-41cb-9b11-21be9dacad88\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\n$curl = curl_init();\n\n$payload = array(\n  \"merchant\" => array(\n    \"entity\" => \"default\"\n  ),\n  \"instructions\" => array(\n    array(\n      \"party\" => array(\n        \"type\" => \"beneficiary\",\n        \"payoutInstrument\" => array(\n          \"type\" => \"bankAccount\",\n          \"currency\" => \"GBP\",\n          \"iban\" => \"GB41CITI18500818404062\",\n          \"accountHolderName\" => \"John Smith\",\n          \"accountNumber\" => \"123456\",\n          \"bankCode\" => \"184758\",\n          \"bankName\" => \"Demo Bank\",\n          \"branchCode\" => \"1234\",\n          \"swiftBic\" => \"DBbic01\",\n          \"accountType\" => \"checking\",\n          \"address\" => array(\n            \"type\" => \"personal\",\n            \"address1\" => \"Main Bvd\",\n            \"address2\" => \"No 1\",\n            \"city\" => \"London\",\n            \"postalCode\" => \"012345\",\n            \"countryCode\" => \"GB\"\n          )\n        ),\n        \"personalDetails\" => array(\n          \"type\" => \"personal\",\n          \"title\" => \"Mr\",\n          \"firstName\" => \"John\",\n          \"middleName\" => \"\",\n          \"lastName\" => \"Smith\",\n          \"dateOfBirth\" => \"2000-01-01\",\n          \"companyName\" => \"Co Name\",\n          \"dateOfIncorporation\" => \"2025-01-01\",\n          \"email\" => \"john@domain.com\",\n          \"phones\" => array(\n            array(\n              \"number\" => \"7777777777\",\n              \"prefix\" => \"44\"\n            )\n          )\n        )\n      ),\n      \"expandableKeyValuePairs\" => array(\n        \"key\" => \"value\"\n      )\n    )\n  )\n);\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Content-Type: application/json\",\n    \"WP-Api-Version: 2025-01-01\",\n    \"WP-CorrelationId: 15cd16b2-7b82-41cb-9b11-21be9dacad88\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI('https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['WP-Api-Version'] = '2025-01-01'\nrequest['WP-CorrelationId'] = '15cd16b2-7b82-41cb-9b11-21be9dacad88'\nrequest.body = {\n  merchant: {entity: 'default'},\n  instructions: [\n    {\n      party: {\n        type: 'beneficiary',\n        payoutInstrument: {\n          type: 'bankAccount',\n          currency: 'GBP',\n          iban: 'GB41CITI18500818404062',\n          accountHolderName: 'John Smith',\n          accountNumber: '123456',\n          bankCode: '184758',\n          bankName: 'Demo Bank',\n          branchCode: '1234',\n          swiftBic: 'DBbic01',\n          accountType: 'checking',\n          address: {\n            type: 'personal',\n            address1: 'Main Bvd',\n            address2: 'No 1',\n            city: 'London',\n            postalCode: '012345',\n            countryCode: 'GB'\n          }\n        },\n        personalDetails: {\n          type: 'personal',\n          title: 'Mr',\n          firstName: 'John',\n          middleName: '',\n          lastName: 'Smith',\n          dateOfBirth: '2000-01-01',\n          companyName: 'Co Name',\n          dateOfIncorporation: '2025-01-01',\n          email: 'john@domain.com',\n          phones: [\n            {\n              number: '7777777777',\n              prefix: '44'\n            }\n          ]\n        }\n      },\n      expandableKeyValuePairs: {key: 'value'}\n    }\n  ]\n}.to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"WP-Api-Version\", \"2025-01-01\"},\n        {\"WP-CorrelationId\", \"15cd16b2-7b82-41cb-9b11-21be9dacad88\"},\n      }\n    };\n\n    string json = JsonSerializer.Serialize(new\n    {\n      merchant = new {\n        entity = \"default\"\n      },\n      instructions = new[] {\n        new {\n          party = new {\n            type = \"beneficiary\",\n            payoutInstrument = new {\n              type = \"bankAccount\",\n              currency = \"GBP\",\n              iban = \"GB41CITI18500818404062\",\n              accountHolderName = \"John Smith\",\n              accountNumber = \"123456\",\n              bankCode = \"184758\",\n              bankName = \"Demo Bank\",\n              branchCode = \"1234\",\n              swiftBic = \"DBbic01\",\n              accountType = \"checking\",\n              address = new {\n                type = \"personal\",\n                address1 = \"Main Bvd\",\n                address2 = \"No 1\",\n                city = \"London\",\n                postalCode = \"012345\",\n                countryCode = \"GB\"\n              }\n            },\n            personalDetails = new {\n              type = \"personal\",\n              title = \"Mr\",\n              firstName = \"John\",\n              middleName = \"\",\n              lastName = \"Smith\",\n              dateOfBirth = \"2000-01-01\",\n              companyName = \"Co Name\",\n              dateOfIncorporation = \"2025-01-01\",\n              email = \"john@domain.com\",\n              phones = new[] {\n                new {\n                  number = \"7777777777\",\n                  prefix = \"44\"\n                }\n              },\n            }\n          },\n          expandableKeyValuePairs = new {\n            key = \"value\"\n          }\n        }\n      },\n    });\n\n    using StringContent postData = new(json, Encoding.UTF8, \"application/json\");\n    using HttpResponseMessage request = await client.PostAsync(\"https://try.access.worldpay-bsh.securedataplatform.co.uk/accountVerifications\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"}]},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"schema","__idx":3},"children":["Schema"]},{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"openapi.yaml##/components/schemas/postRequestItems"},"options":{"schemaExpansionLevel":0},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/postRequestItems"},"merchantItems":{"required":["entity"],"type":"object","description":"**Note:** View our [bank coverage guide](/products/account-verifications/coverage) for country specific requirements.","properties":{"entity":{"type":"string","description":"Your entity reference created as part of on-boarding. Used to route the request in Access Worldpay.","example":"default"}}},"payoutInstrumentAddressItems":{"required":["countryCode"],"type":"object","properties":{"type":{"type":"string","description":"Identifies the type of this address.","enum":["home","business","poBox","other"]},"address1":{"type":"string","description":"The address. Must consist of at least two letters, two words, and one number."},"address2":{"type":"string","description":"Line two of the address."},"city":{"type":"string","description":"The city of this address."},"postalCode":{"type":"string","description":"The postal code of this address."},"countryCode":{"maxLength":2,"minLength":2,"type":"string","description":"The country code specified in <a href=\"/products/reference/supported-countries-currencies#iso-country-currencies\">ISO 3166-1 Alpha-2 country code</a>.","example":"GB"}}},"payoutInstrumentItems":{"required":["accountType","address"],"type":"object","description":"An object that holds details of your payout instrument.\n\n","properties":{"type":{"type":"string","description":"The type of the `payoutInstrument`.","example":"bankAccount"},"currency":{"type":"string","description":"The currency in [ISO 4217 currency format](/products/reference/supported-countries-currencies#iso-currency-codes).","example":"GBP","maxLength":3,"minLength":3,"pattern":"^[A-Z]*$"},"iban":{"type":"string","description":"Beneficiary IBAN. You must either provide `iban` or `accountNumber`.","example":"GB41CITI18500818404062"},"accountNumber":{"type":"number","example":123456},"accountHolderName":{"type":"string","description":"Full name of the beneficiary. `accountHolderName` is a mandatory element of the request body when `firstName` and `lastName` are missing.","example":"John Smith"},"accountType":{"type":"string","description":"Type of the account bank.","enum":["checking","savings","moneyMarket","certificateOfDeposit","vista","other"]},"bankCode":{"type":"string","description":"The code of the bank which must be exactly six digits.","example":"184758"},"bankName":{"type":"string","example":"Demo Bank"},"branchCode":{"type":"string","example":1234},"swiftBic":{"type":"string","example":"DBbic01"},"address":{"$ref":"#/components/schemas/payoutInstrumentAddressItems"}}},"phoneItems":{"type":"object","description":"Object containing phone information.","properties":{"number":{"type":"string","description":"The phone number, without dashes.","example":"4281234","pattern":"[0-9]{1,20}"},"prefix":{"type":"string","description":"The dialing prefix for the phone number.","example":"44","pattern":"^[0-9]{1,3}$"}}},"personalDetailsItems":{"required":["type"],"type":"object","properties":{"type":{"type":"string","description":"What the party represents:\n`personal` - an individual \n`company` - a corporation     or partnership with multiple owners..","example":"personal"},"title":{"type":"string","description":"The title for this person.","enum":["mr","mrs","miss","ms","dr","mx","misc"],"example":"mr"},"firstName":{"type":"string","maxLength":35,"description":"First name of the beneficiary. `firstName` and `lastName` are mandatory elements of the request body when `accountHolderName` is missing.","example":"John"},"middleName":{"type":"string","maxLength":35,"description":"Middle name name of the beneficiary."},"lastName":{"type":"string","maxLength":35,"description":"Last name name of the beneficiary.","example":"Smith"},"dateOfBirth":{"type":"string","description":"The date the `person` was born."},"companyName":{"type":"string","maxLength":70,"description":"Company name. `companyName` must be provided if `accountHolderName` is not present and `type` is `company`."},"dateOfIncorporation":{"type":"string","description":"The incorporation date for the company."},"email":{"type":"string","description":"An email address for this party."},"phones":{"type":"array","description":"A list of phone numbers associated with this party.","items":{"$ref":"#/components/schemas/phoneItems"}}}},"partyItems":{"required":["type","payoutInstrument","personalDetails"],"type":"object","properties":{"type":{"type":"string","description":"The type of this party. Only `beneficiary` type is accepted.","example":"beneficiary"},"payoutInstrument":{"$ref":"#/components/schemas/payoutInstrumentItems"},"personalDetails":{"$ref":"#/components/schemas/personalDetailsItems"}}},"instructionsItems":{"required":["party"],"type":"object","properties":{"party":{"$ref":"#/components/schemas/partyItems"},"expandableKeyValuePairs":{"type":"object","description":"JSON object of key-value pairs used to supply additional data. The keys and values that you might need to process an account payout to a specific destination, are communicated during the on-boarding process. Duplicate key names are not allowed.","nullable":true}}},"postRequestItems":{"required":["merchant","instructions"],"type":"object","properties":{"merchant":{"$ref":"#/components/schemas/merchantItems"},"instructions":{"items":{"$ref":"#/components/schemas/instructionsItems"},"description":"**Note:** Currently only one instruction is accepted."}}}}}},"schemaResolvedErrors":[]},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"response-example","__idx":4},"children":["Response example"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"fullMatch","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"{\n  \"outcome\": \"fullMatch\",\n  \"message\": \"Account Details Matched\",\n  \"actualAccountHolderName\": \"\"\n}\n"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Example error","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"{\n  \"errorName\": \"forbidden\",\n  \"message\": \"User is not entitled to access this resource\"\n}\n"},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For a full list of outcomes and errors see our ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/account-verifications/openapi"},"children":["API Reference"]},"."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Next steps"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/account-payouts/"},"children":["Make a payout"]}]}]},"headings":[{"value":"Beneficiary Account Verifications API","id":"beneficiary-account-verifications-api","depth":1},{"value":"Verify an account","id":"verify-an-account","depth":2},{"value":"Request example","id":"request-example","depth":3},{"value":"Schema","id":"schema","depth":3},{"value":"Response example","id":"response-example","depth":3}],"frontmatter":{"seo":{"title":"Bank Account Verifications API | Worldpay Developer","description":"Verify a beneficiary's bank details to ensure the payout is going to the intended account."}},"lastModified":"2025-11-26T14:21:19.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/account-verifications/verifications","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}