# Create split payments request

Create a request allowing you to split your payment.

Endpoint: POST /splitPayments
Version: 2025-06-25
Security: BasicAuth

## Header parameters:

  - `Content-Type` (string, required)
    The Content-Type.
    Example: "application/json"

  - `WP-Api-Version` (string, required)
    The API version.
    Example: "2025-06-25"

## Request fields (application/json):

  - `reference` (string, required)
    Reference for the split payments generated by you.

  - `description` (string)
    Text to appear on the customer's billing statement. Sometimes referred to as a billing descriptor. If this isn't set, the value from the merchant profile is used.

  - `fulfillment` (object, required)

  - `fulfillment.auto` (boolean, required)
    Set to 'true' for auto fulfillment, otherwise to 'false'

  - `fulfillment.paymentCommandId` (string, required)
    A unique ID generated by us for each lifecycle event on a payment. You have received this in the [response of your payment authorization request](/products/card-payments/openapi/other/authorize#other/authorize/t=response&c=201&path=&d=0/commandid) in our Card Payments API.

  - `merchant` (object, required)

  - `merchant.entity` (string, required)
    Used to route the request in Access Worldpay, created as part of on-boarding.
    Example: "default"

  - `value` (object, required)

  - `value.currency` (string, required)
    The [3 letter ISO-4217 currency code](/products/reference/supported-countries-currencies#iso-currency-codes).
    Example: "GBP"

  - `value.totalAmount` (integer, required)
    Implied decimal. For example, 250 GBP = £2.50.
    Example: 250

  - `lineItems` (array, required)

  - `lineItems.itemReference` (string, required)
    Unique reference generated by you to identify a line item.

  - `lineItems.partyReference` (string, required)
    Unique reference generated by you to identify a party.

  - `lineItems.amount` (integer, required)
    Implied decimal. For example, 250 GBP = £2.50
    Example: 250

  - `lineItems.description` (string)
    Text to appear on the customer's billing statement. Sometimes referred to as a billing descriptor. If this isn't set, the value from the merchant profile is used.

  - `lineItems.deductions` (array)

  - `lineItems.deductions.type` (string, required)
    Type of deduction.
    Enum: "commission", "fee"

  - `lineItems.deductions.value` (object, required)

  - `lineItems.deductions.value.type` (string, required)
    Type of value.
    Enum: "percentage", "flat"

  - `lineItems.deductions.value.amount` (integer, required)
    percentage or flat amount of the deduction. For example, 75 = 0.75% or £0.75
    Example: 75

  - `lineItems.deductions.description` (string)
    Description of the deduction.
    Example: "Deduction description"

## Response 201 fields (application/json):

  - `splitPaymentId` (string, required)
    Unique reference generated by us to identify a split payment.

  - `lineItems` (object, required)

  - `lineItems.items` (array)

  - `lineItems.items.itemId` (string, required)
    Unique reference generated by us to identify a line item.

  - `lineItems.items.itemReference` (string, required)
    Unique reference generated by you to identify a line item.

## Response 400 fields (application/json):

  - `errorName` (string, required)
    Enum: "headerIsMissing", "headerHasInvalidValue", "bodyIsEmpty", "bodyIsNotJson", "bodyDoesNotMatchSchema"

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

  - `validationErrors` (array)
    If there were field validation errors, they will be collected in this array.

  - `validationErrors.errorName` (string, required)
    A machine and human readable error type for clarity and semantic understanding of the error.
    Enum: "fieldIsNull", "fieldIsEmpty", "numberIsTooLarge", "numberIsTooSmall", "stringFailedRegexCheck"

  - `validationErrors.message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

  - `validationErrors.jsonPath` (string, required)
    The field presents the JSONPath of th element within the request body associated with the error.

## Response 401 fields (application/json):

  - `errorName` (string, required)
    Un-authorized access, Insufficient permissions to fulfil request.
    Enum: "unauthorizedAccess", "headerHasInvalidValue", "headerIsMissing"

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

## Response 406 fields (application/json):

  - `errorName` (string, required)
    A header 'WP-Api-Version' or URL path in the request is misconfigured

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

## Response 415 fields (application/json):

  - `errorName` (string, required)
    A header 'Content-Type' in the request does not contain an expected value. Content-type must be - 'application/json'

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

## Response 422 fields (application/json):

  - `errorName` (string, required)
    A machine and human readable error type for clarity and semantic understanding of the error.
    Enum: "fieldIsMissing", "fieldHasInvalidValue"

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.

## Response 500 fields (application/json):

  - `errorName` (string, required)
    An error occurred within the service.
    Enum: "internalErrorOccurred"

  - `message` (string, required)
    A human readable message giving a corrective action for the error.  This is not for machine consumption.


