Santander UK File Payments API

The File Payments API from Santander UK — 4 operation(s) for file payments.

Operations 4

POST /file-payments Submit a File Payment #
GET /file-payments/{FilePaymentId} Get a File Payment by FilePaymentId #
GET /file-payments/{FilePaymentId}/payment-details Get payment details for a File Payment #
GET /file-payments/{FilePaymentId}/report-file Get a File Payment's Report File #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/santander-uk-file-payments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

santander-uk-file-payments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Payment Initiation File Payments API
  description: 'Swagger for Payment Initiation API Specification.


    **Please Note**: There are no optional fields, if a field is not marked as “Required” it is a Conditional field.

    '
  termsOfService: https://www.openbanking.org.uk/terms
  contact:
    name: Service Desk
    email: ServiceDesk@openbanking.org.uk
  license:
    name: open-licence
    url: https://www.openbanking.org.uk/open-licence
  version: 4.0.1
servers:
- url: /open-banking/v4.0/pisp
tags:
- name: File Payments
paths:
  /file-payments:
    post:
      tags:
      - File Payments
      summary: Submit a File Payment
      description: Enables a PISP to instruct the ASPSP to start processing the payments within the file.
      operationId: CreateFilePayments
      parameters:
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-idempotency-key'
      - $ref: '#/components/parameters/x-jws-signature'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      requestBody:
        content:
          application/json; charset=utf-8:
            schema:
              $ref: '#/components/schemas/OBWriteFile2'
          application/json:
            schema:
              $ref: '#/components/schemas/OBWriteFile2'
          application/jose+jwe:
            schema:
              $ref: '#/components/schemas/OBWriteFile2'
        description: Default
        required: true
      responses:
        '201':
          $ref: '#/components/responses/201FilePaymentsCreated'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '409':
          $ref: '#/components/responses/409Error'
        '415':
          $ref: '#/components/responses/415Error'
        '422':
          $ref: '#/components/responses/422Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - PSUOAuth2Security:
        - payments
  /file-payments/{FilePaymentId}:
    get:
      tags:
      - File Payments
      summary: Get a File Payment by FilePaymentId
      description: Enables a PISP to retrieve the status of a file payment.
      operationId: GetFilePaymentsFilePaymentId
      parameters:
      - $ref: '#/components/parameters/FilePaymentId'
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      responses:
        '200':
          $ref: '#/components/responses/200FilePaymentsFilePaymentIdRead'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - TPPOAuth2Security:
        - payments
  /file-payments/{FilePaymentId}/payment-details:
    get:
      tags:
      - File Payments
      summary: Get payment details for a File Payment
      description: Enables a PISP to retrieve detailed information on the status of payments within a File.
      operationId: GetFilePaymentsFilePaymentIdPaymentDetails
      parameters:
      - $ref: '#/components/parameters/FilePaymentId'
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      responses:
        '200':
          $ref: '#/components/responses/200FilePaymentsFilePaymentIdPaymentDetailsRead'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - TPPOAuth2Security:
        - payments
  /file-payments/{FilePaymentId}/report-file:
    get:
      tags:
      - File Payments
      summary: Get a File Payment's Report File
      description: Enables a PISP to download a payment report file from an ASPSP.
      operationId: GetFilePaymentsFilePaymentIdReportFile
      parameters:
      - $ref: '#/components/parameters/FilePaymentId'
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      responses:
        '200':
          $ref: '#/components/responses/200FilePaymentsFilePaymentIdReportFileRead'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - TPPOAuth2Security:
        - payments
components:
  headers:
    RateLimit:
      required: false
      description: 'TPPs __must__ refer to ASPSP developer portals for further information on any rate limit policies, if the headers are supported and any additional requirements.


        A server uses the "RateLimit" response header field to communicate the current service limit for a quota policy for a particular partition key.


        Example:

        `RateLimit: "default";r=50;t=30`


        The **REQUIRED** "r" parameter value conveys the remaining quota units for the identified policy.


        The **OPTIONAL** "t" parameter value conveys the time window reset time for the identified policy.

        '
      schema:
        type: string
    RateLimit-Policy:
      required: false
      description: 'TPPs __must__ refer to ASPSP developer portals for further information on any rate limit policies, if the headers are supported and any additional requirements.


        A non-empty list of Quota Policy Items. The Item value __MUST__ be a String.


        Example:

        `RateLimit-Policy: "default";q=100;w=10`


        The **REQUIRED** "q" parameter indicates the quota allocated by this policy measured in quota units.


        The **OPTIONAL** "w" parameter value conveys a time window.

        '
      schema:
        type: string
  responses:
    415Error:
      description: Unsupported Media Type
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    400Error:
      description: Bad request
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
    500Error:
      description: Internal Server Error
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
    404Error:
      description: Not found
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    422Error:
      description: Duplicate Idempotency key
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: Header containing a detached JWS signature of the body of the payload.
          required: true
          schema:
            type: string
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
    406Error:
      description: Not Acceptable
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    403Error:
      description: Forbidden
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
    200FilePaymentsFilePaymentIdRead:
      description: File Payments Read
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimit-Policy'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
        application/json:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
    201FilePaymentsCreated:
      description: File Payments Created
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimit-Policy'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
        application/json:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBWriteFileResponse3'
    401Error:
      description: Unauthorized
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    429Error:
      description: Too Many Requests
      headers:
        Retry-After:
          description: Number in seconds to wait
          schema:
            type: integer
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    200FilePaymentsFilePaymentIdReportFileRead:
      description: 'File Payments Read


        ASPSP will specify all available content types

        '
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimit-Policy'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/File'
        application/json:
          schema:
            $ref: '#/components/schemas/File'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/File'
    409Error:
      description: Conflict
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: Header containing a detached JWS signature of the body of the payload.
          required: true
          schema:
            type: string
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBErrorResponse1'
    405Error:
      description: Method Not Allowed
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
    200FilePaymentsFilePaymentIdPaymentDetailsRead:
      description: Payment Details Read
      headers:
        x-fapi-interaction-id:
          description: An RFC4122 UID used as a correlation id.
          required: true
          schema:
            type: string
        x-jws-signature:
          description: 'Header containing a detached JWS signature of the body of the payload.

            '
          required: true
          schema:
            type: string
        RateLimit-Policy:
          $ref: '#/components/headers/RateLimit-Policy'
        RateLimit:
          $ref: '#/components/headers/RateLimit'
      content:
        application/json; charset=utf-8:
          schema:
            $ref: '#/components/schemas/OBWritePaymentDetailsResponse1'
        application/json:
          schema:
            $ref: '#/components/schemas/OBWritePaymentDetailsResponse1'
        application/jose+jwe:
          schema:
            $ref: '#/components/schemas/OBWritePaymentDetailsResponse1'
  schemas:
    OBSupplementaryData1:
      type: object
      properties: {}
      additionalProperties: true
      description: Additional information that can not be captured in the structured fields and/or any other specific block.
    OBStatusReason:
      type: object
      properties:
        StatusReasonCode:
          type: string
          description: "Specifies the status reason in a code form. \nFor a full list of values refer to `OBExternalStatusReason1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)"
          minLength: 1
          maxLength: 4
          example: ERIN
        StatusReasonDescription:
          description: Description supporting the StatusReasonCode.
          type: string
          minLength: 1
          maxLength: 500
        Path:
          type: string
          description: Path is optional but relevant when the status reason refers to an object/field and hence conditional to provide JSON path.
          minLength: 1
          maxLength: 500
    OBInternalAccountIdentification4Code:
      description: Name of the identification scheme, in a coded form as published in an external list. For a full list of values refer to `OBInternalAccountIdentification4Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      type: string
      x-namespaced-enum:
      - UK.OBIE.BBAN
      - UK.OBIE.IBAN
      - UK.OBIE.PAN
      - UK.OBIE.Paym
      - UK.OBIE.SortCodeAccountNumber
      - UK.OBIE.Wallet
    Links:
      type: object
      additionalProperties: false
      description: Links relevant to the payload
      properties:
        Self:
          type: string
          format: uri
        First:
          type: string
          format: uri
        Prev:
          type: string
          format: uri
        Next:
          type: string
          format: uri
        Last:
          type: string
          format: uri
      required:
      - Self
    OBInternalLocalInstrument1Code:
      description: 'User community specific instrument.

        Usage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level. For a full list of values refer to `OBInternalLocalInstrument1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)'
      type: string
      x-namespaced-enum:
      - UK.OBIE.BACS
      - UK.OBIE.BalanceTransfer
      - UK.OBIE.CHAPS
      - UK.OBIE.Euro1
      - UK.OBIE.FPS
      - UK.OBIE.Link
      - UK.OBIE.MoneyTransfer
      - UK.OBIE.Paym
      - UK.OBIE.SEPACreditTransfer
      - UK.OBIE.SEPAInstantCreditTransfer
      - UK.OBIE.SWIFT
      - UK.OBIE.Target2
    OBWritePaymentDetails1:
      type: object
      required:
      - PaymentTransactionId
      - Status
      - StatusUpdateDateTime
      properties:
        PaymentTransactionId:
          type: string
          minLength: 1
          maxLength: 210
          description: Unique identifier for the transaction within a servicing institution. This identifier is both unique and immutable.
        Status:
          $ref: '#/components/schemas/ExternalPaymentTransactionStatus1Code'
        StatusUpdateDateTime:
          type: string
          format: date-time
          description: 'Date and time at which the status was assigned to the transfer.

            '
        StatusDetail:
          type: object
          description: Payment status details as per underlying Payment Rail.
          required:
          - Status
          properties:
            LocalInstrument:
              $ref: '#/components/schemas/OBInternalLocalInstrument1Code'
            Status:
              $ref: '#/components/schemas/ExternalPaymentTransactionStatus1Code'
            StatusReason:
              description: Reason Code provided for the status of a transfer. For a full list of values see code values for `OBExternalStatusReason1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
              type: string
              minLength: 1
              maxLength: 4
            StatusReasonDescription:
              description: Reason provided for the status of a transfer. For a full list of values see the code name entries for `OBExternalStatusReason1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets).
              type: string
              minLength: 1
              maxLength: 256
    OBInternalPaymentChargeType1Code:
      description: Charge type, in a coded form. For a full list of values refer to `OBInternalPaymentChargeType1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      type: string
      x-namespaced-enum:
      - UK.OBIE.CHAPSOut
    OBRemittanceInformationStructured:
      type: object
      properties:
        ReferredDocumentInformation:
          type: array
          items:
            $ref: '#/components/schemas/OBReferredDocumentInformation'
        ReferredDocumentAmount:
          $ref: '#/components/schemas/OBActiveCurrencyAndAmount_SimpleType'
        CreditorReferenceInformation:
          description: Reference information provided by the creditor to allow the identification of the underlying documents.
          type: object
          properties:
            Code:
              $ref: '#/components/schemas/ExternalCreditorReferenceType1Code'
            Issuer:
              description: Entity that assigns the identification.
              type: string
              minLength: 1
              maxLength: 35
            Reference:
              description: Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction.
              type: string
              minLength: 1
              maxLength: 35
        Invoicer:
          $ref: '#/components/schemas/Identification_3'
        Invoicee:
          $ref: '#/components/schemas/Identification_4'
        TaxRemittance:
          description: Provides remittance information about a payment made for tax-related purposes.
          type: string
          maxLength: 140
          minLength: 1
        AdditionalRemittanceInformation:
          description: Additional information, in free text form, to complement the structured remittance information.
          type: array
          items:
            type: string
            maxLength: 140
            minLength: 1
          maxItems: 3
    Name:
      description: Name by which an agent is known and which is usually used to identify that agent.
      type: string
      minLength: 1
      maxLength: 140
    Identification_1:
      description: Unique identification, as assigned by the creditor, to unambiguously identify the mandate.
      type: string
      minLength: 1
      maxLength: 35
    File:
      type: object
      additionalProperties: false
      properties: {}
    PostBox:
      description: Information that locates and identifies a box in a post office assigned to a person or organization, where letters for them are kept until called for.
      type: string
      minLength: 1
      maxLength: 16
    OBPostalAddress7:
      type: object
      additionalProperties: false
      description: Information that locates and identifies a specific address, as defined by postal services.
      properties:
        AddressType:
          $ref: '#/components/schemas/OBAddressType2Code'
        Department:
          $ref: '#/components/schemas/Department'
        SubDepartment:
          $ref: '#/components/schemas/SubDepartment'
        StreetName:
          $ref: '#/components/schemas/StreetName'
        BuildingNumber:
          $ref: '#/components/schemas/BuildingNumber'
        BuildingName:
          $ref: '#/components/schemas/BuildingName'
        Floor:
          $ref: '#/components/schemas/Floor'
        UnitNumber:
          $ref: '#/components/schemas/UnitNumber'
        Room:
          $ref: '#/components/schemas/Room'
        PostBox:
          $ref: '#/components/schemas/PostBox'
        TownLocationName:
          $ref: '#/components/schemas/TownName'
        DistrictName:
          $ref: '#/components/schemas/DistrictName'
        CareOf:
          $ref: '#/components/schemas/CareOf'
        PostCode:
          $ref: '#/components/schemas/PostCode'
        TownName:
          $ref: '#/components/schemas/TownName'
        CountrySubDivision:
          $ref: '#/components/schemas/CountrySubDivision'
        Country:
          $ref: '#/components/schemas/CountryCode'
        AddressLine:
          type: array
          items:
            description: Information that locates and identifies a specific address, as defined by postal services, presented in free format text.
            type: string
            minLength: 1
            maxLength: 70
          minItems: 0
          maxItems: 7
    ExternalDocumentType1Code:
      type: string
      minLength: 1
      maxLength: 4
      description: Specifies the document type as published in an external document type code list. For more information see `ExternalDocumentType1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      enum:
      - CINV
      - CNFA
      - CONT
      - CREN
      - DEBN
      - DISP
      - DNFA
      - HIRI
      - INVS
      - MSIN
      - PROF
      - PUOR
      - QUOT
      - SBIN
      - SPRR
      - TISH
    OBExternalStatusReason1Code:
      description: Low level textual error code, for all enum values see `OBExternalStatusReason1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      type: string
      minLength: 4
      maxLength: 4
      example: U001
    OBRemittanceInformation2:
      type: object
      description: Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system
      properties:
        Structured:
          type: array
          items:
            $ref: '#/components/schemas/OBRemittanceInformationStructured'
        Unstructured:
          type: array
          description: Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.
          items:
            type: string
            maxLength: 140
            minLength: 1
    OBErrorResponse1:
      description: An array of detail error codes, and messages, and URLs to documentation to help remediation.
      type: object
      additionalProperties: false
      properties:
        Id:
          description: A unique reference for the error instance, for audit purposes, in case of unknown/unclassified errors.
          type: string
          minLength: 1
          maxLength: 40
        Code:
          description: Deprecated <br>High level textual error code, to help categorise the errors.
          type: string
          minLength: 1
          example: 400 BadRequest
          maxLength: 40
        Message:
          description: Deprecated <br>Brief Error message
          type: string
          minLength: 1
          example: There is something wrong with the request parameters provided
          maxLength: 500
        Errors:
          items:
            $ref: '#/components/schemas/OBError1'
          type: array
          minItems: 1
      required:
      - Errors
    OBUltimateDebtor1:
      description: Ultimate party that owes an amount of money to the (ultimate) creditor.
      type: object
      properties:
        Name:
          description: Name by which a party is known and which is usually used to identify that party.
          type: string
          minLength: 1
          maxLength: 140
        Identification:
          description: Identification assigned by an institution.
          type: string
          minLength: 1
          maxLength: 256
        LEI:
          $ref: '#/components/schemas/LEI'
        SchemeName:
          $ref: '#/components/schemas/OBInternalAccountIdentification4Code'
        PostalAddress:
          $ref: '#/components/schemas/OBPostalAddress7'
    OBReferredDocumentInformation:
      type: object
      properties:
        Code:
          $ref: '#/components/schemas/ExternalDocumentType1Code'
        Issuer:
          description: Identification of the issuer of the reference document type.
          type: string
          maxLength: 35
          minLength: 1
        Number:
          description: Identification of the type specified for the referred document line.
          type: string
          maxLength: 35
          minLength: 1
        RelatedDate:
          description: Date associated with the referred document line.
          type: string
          format: date-time
        LineDetails:
          description: Set of elements used to provide the content of the referred document line.
          type: array
          items:
            type: string
            minLength: 1
            maxLength: 2048
    Room:
      description: Information that locates and identifies a room to form part of an address
      type: string
      minLength: 1
      maxLength: 70
    UnitNumber:
      description: Number that identifies the unit of a specific address .
      type: string
      minLength: 1
      maxLength: 16
    OBInternalChargeBearerType1Code:
      description: Specifies which party/parties will bear the charges associated with the processing of the payment transaction. For a full list of values refer to `OBInternalChargeBearerType1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      type: string
      enum:
      - BorneByCreditor
      - BorneByDebtor
      - FollowingServiceLevel
      - Shared
    Department:
      description: Identification of a division of a large organisation or building.
      type: string
      minLength: 1
      maxLength: 70
    ActiveOrHistoricCurrencyCode:
      description: A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 "Codes for the representation of currencies and funds".
      type: string
      pattern: ^[A-Z]{3,3}$
    ExternalProxyAccountType1Code:
      description: Specifies the external proxy account type code, as published in the proxy account type external code set.<br /> For a full list of values see `ExternalProxyAccountType1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
      type: string
      enum:
      - TELE
      - EMAL
      - DNAM
      - CINC
      - COTX
      - COID
      - CUST
      - DRLC
      - EIDN
      - EWAL
      - PVTX
      - LEIC
      - MBNO
      - NIDN
      - CCPT
      - SHID
      - SOSE
      - TOKN
      - UBIL
      - VIPN
      - BIID
    OBWritePaymentDetailsResponse1:
      type: object
      required:
      - Data
      properties:
        Data:
          type: object
          additionalProperties: false
          properties:
            PaymentStatus:
              type: array
              items:
                $ref: '#/components/schemas/OBWritePaymentDetails

# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/santander-uk/refs/heads/main/openapi/santander-uk-file-payments-api-openapi.yml