---
title: "Make a Third Party Payment"
method: POST
path: "/v1/accounts/{accountId}/virtual/{virtualAccountId}/third-party-payment"
tags: ["Virtual Accounts"]
---

# Make a Third Party Payment

`POST /v1/accounts/{accountId}/virtual/{virtualAccountId}/third-party-payment`

## Request

- Base URL: `https://api.bcb.group`
- URL: `https://api.bcb.group/v1/accounts/{accountId}/virtual/{virtualAccountId}/third-party-payment`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/bcb/apis/payments-api/docs/v1/accounts/:accountId/virtual/:virtualAccountId/third-party-payment/post.ts> (a function with typed inputs; its response is checked against the schema)

Sends a payment from the virtual account identified by its unique id (UUID) to a one time third party beneficiary.

## Path parameters

- `accountId` number, required
- `virtualAccountId` string, required

## Request body

- ThirdPartyPayment
  - `currency` string, required: The 3-letter currency code for the payment. GBP is not supported. Must match the currency of the segregated account the payment is made from.
  - `amount` string, required: The amount of the payment, must be greater than 0
  - `reference` string, required: The reference for the payment
  - `nonce` string, required: A unique nonce to guard against duplicate payments
  - `reason` 'BKFE' | 'BKIP' | 'BKPP' | 'CBLK' | 'INTC' | 'INTP' | 'DEEPT' | 'ACCTCASH' | 'COLL' | 'CSDB' | 'LIMA' | 'NETT' | 'EXTD' | 'OTCD' | 'REPO' | 'SBSC' | 'SLEB' | 'ARGT' | 'AREN' | 'BEXP' | 'BOCE' | 'COMC' | 'LICF' | 'CPYR' | 'SERV' | 'SUPP' | 'TRAD' | 'SUBS' | 'GDSV' | 'GSCB' | 'ROYA' | 'COMT' | 'CHAR' | 'ECPR' | 'EPAY' | 'COMP' | 'DBTC' | 'CLPR' | 'INTE' | 'LOAN' | 'LOAR' | 'RELG' | 'TRFD' | 'PENO' | 'INPC' | 'INPR' | 'INSC' | 'INSU' | 'LBRI' | 'LIFI' | 'PPTI' | 'HLRP' | 'HLST' | 'PLDS' | 'PDEP' | 'PCOM' | 'PLRF' | 'FORW' | 'FXNT' | 'IVPT' | 'REBT' | 'REFU' | 'CDBL' | 'CPKC' | 'EDUC' | 'FEES' | 'GAMB' | 'LOTT' | 'GIFT' | 'INSM' | 'REOD' | 'FAND' | 'GOVT' | 'TCSC' | 'BDLM' | 'RENT' | 'BNET' | 'CORT' | 'CMDT' | 'DERI' | 'DIVD' | 'FREX' | 'HEDG' | 'INVS' | 'SAVG' | 'SECU' | 'TREA' | 'FNET' | 'FUTR' | 'HLTI' | 'DNTS' | 'LTCF' | 'MDCS' | 'VIEW' | 'SWFP' | 'SWPP' | 'SWRS' | 'SWUF' | 'BECH' | 'BENE' | 'SSBE' | 'PEFC' | 'PENS' | 'ADCS' | 'ALMY' | 'BONU' | 'COMM' | 'HREC' | 'SALA' | 'LREB' | 'LREV' | 'RSTX' | 'HSTX' | 'INTX' | 'PTXP' | 'RDTX' | 'TAXS' | 'VATX' | 'WHLD' | 'TAXR' | 'CBTV' | 'ELEC' | 'GASB' | 'PHON' | 'UTLB' | 'WTER', required: The reason for the payment. Must be a predefined purpose code.
  - `preferredScheme` 'AUTO' | 'SEPA' | 'SEPA_INSTANT' | 'TARGET2' | 'SWIFT': The preferred payment scheme. Allowed values: AUTO, SEPA, SEPA_INSTANT, TARGET2, SWIFT. Defaults to AUTO when omitted.
  - `beneficiary` union, required: The one time third party beneficiary. The `type` must be one of the values returned by the third party payment capabilities endpoint for the account.
    - IbanBicThirdPartyBeneficiary
      - `type` 'IBAN_BIC': The beneficiary identifier combination. Optional for IBAN_BIC: if omitted and both iban and bic are sent, the beneficiary is treated as IBAN_BIC.
      - `name` string, required: The name of the third party beneficiary
      - `iban` string, required: The IBAN of the third party beneficiary
      - `bic` string, required: The BIC of the third party beneficiary bank
      - `country` string, required: The 2-letter ISO country code of the beneficiary
      - `addressLine1` string, required: First line of the beneficiary address
      - `addressLine2` string: Second line of the beneficiary address
      - `addressLine3` string: Third line of the beneficiary address
      - `city` string, required: The beneficiary city
      - `region` string: The beneficiary region (state/county/province)
      - `postcode` string: The beneficiary postcode/zip code
    - AccountBicThirdPartyBeneficiary
      - `type` 'ACCOUNT_BIC', required: The beneficiary identifier combination
      - `name` string, required: The name of the third party beneficiary
      - `accountNumber` string, required: The account number of the third party beneficiary
      - `bic` string, required: The BIC of the third party beneficiary bank
      - `country` string, required: The 2-letter ISO country code of the beneficiary
      - `addressLine1` string, required: First line of the beneficiary address
      - `addressLine2` string: Second line of the beneficiary address
      - `addressLine3` string: Third line of the beneficiary address
      - `city` string, required: The beneficiary city
      - `region` string: The beneficiary region (state/county/province)
      - `postcode` string: The beneficiary postcode/zip code
    - AbaThirdPartyBeneficiary
      - `type` 'ABA', required: The beneficiary identifier combination
      - `name` string, required: The name of the third party beneficiary
      - `accountNumber` string, required: The account number of the third party beneficiary
      - `abaRoutingNumber` string, required: The 9-digit ABA wire routing number. ACH routing numbers are not supported.
      - `country` string, required: The 2-letter ISO country code of the beneficiary
      - `addressLine1` string, required: First line of the beneficiary address
      - `addressLine2` string: Second line of the beneficiary address
      - `addressLine3` string: Third line of the beneficiary address
      - `city` string, required: The beneficiary city
      - `region` string: The beneficiary region (state/county/province)
      - `postcode` string: The beneficiary postcode/zip code

## Response `201`

The payment was successfully created

- VirtualAccountPaymentResponse
  - `transactionId` string, required
  - `end2EndId` string, required

## Other responses

- `400`: The request was in an incorrect format. This includes a beneficiary type that is not allowed for the account, identifier fields that do not match the type, an invalid IBAN, BIC or ABA routing number, or a GBP currency.
- `403`: The segregated account is not enabled for third party payments
- `404`: The accountId or virtual account is unknown

## Changes

- **2026-11-03** `5b9085573809`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/bcb/apis/payments-api/changes/v1/accounts/:accountId/virtual/:virtualAccountId/third-party-payment/post.md)

---

[API](https://skmtc.dev/bcb/apis/payments-api.md) - [All operations](https://skmtc.dev/bcb/apis/payments-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bcb/apis/payments-api/revisions/5b9085573809?raw)
