Xentral Liability API

Returns a collection with all liabilities.

OpenAPI Specification

xentral-liability-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Xentral Account Liability API
  version: v0.1
  description: Xentral is an ERP platform.
  contact:
    name: Xentral
    url: https://xentral.com
    email: api@xentral.com
servers:
- url: https://{xentralId}.xentral.biz
  description: Your Xentral Instance
  variables:
    xentralId:
      default: xentral
- url: https://{domain}
  description: Xentral at a custom domain
  variables:
    domain:
      default: xentral.com
security:
- BearerAuth: []
tags:
- name: Liability
  description: Returns a collection with all liabilities.
paths:
  /api/v1/liabilities:
    post:
      tags:
      - Liability
      operationId: liability.create
      summary: Create liability
      description: Creates a single new liability.
      requestBody:
        description: Create a liability object
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - supplier
              properties:
                date:
                  x-description-missing: true
                  type: string
                  format: date
                  nullable: true
                supplier:
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  properties:
                    id:
                      type: string
                      pattern: \d+
                      example: '17'
                      description: Resource identifier.
                  description: Supplier reference
                supplierInvoiceNumber:
                  type: string
                  description: The invoice number issued by the supplier
                receiptDate:
                  description: The date when the supplier invoice was received by the recipient
                  type: string
                  format: date-time
                  nullable: true
                serviceDate:
                  description: The date on which the service was provided
                  type: string
                  format: date
                  nullable: true
                status:
                  description: Workflow status of the liability
                  type: string
                  nullable: false
                  enum:
                  - open
                  - paid
                  example: open
                clarificationCase:
                  type: boolean
                  description: A boolean flag to mark the liability as a clarification case, e.g. to check the deferred account assignments or open questions
                clarificationReason:
                  type: string
                  description: A string that specifies the reason or justification provided for the clarification case in the liability process.
                release:
                  type: boolean
                  description: A boolean flag with which the goods delivery is confirmed as complete and the traffic light is switched to green.
                invoiceRelease:
                  type: boolean
                  description: A boolean flag with which the accounting check of the incoming document is confirmed as complete and correct for tax purposes and the traffic light is switched to green.
                internalComment:
                  type: string
                  description: A text field for adding internal comments or notes related to the liability, not visible to external parties.
                financials:
                  type: object
                  additionalProperties: false
                  description: financial information
                  example:
                    amountGross:
                      amount: '100.0'
                      currency: EUR
                    amountNet:
                      amount: '90.0'
                      currency: EUR
                    freightCharge: 10
                    taxation: VAT
                    taxes:
                      normalTax:
                        rate: 19
                        amount: 19
                      reducedTax:
                        rate: 7
                        amount: 7
                      customTax1:
                        rate: 8.1
                        amount: 50.5
                      customTax2:
                        rate: 10
                        amount: 50.5
                    paymentTerms:
                      dueDate: '2020-01-31'
                      earlyPaymentDate: '2020-01-15'
                      earlyPaymentDiscount: 2
                      earlyPaymentDiscountAmount: 2
                    bookingText: Liability booking text
                    payment:
                      methodName: Bank transfer
                      paidAmount: 100
                      paidOnDate: '2020-01-01'
                      discountReceived: 2
                    glAccount: '123456'
                    costCenter: '123456'
                  properties:
                    amountGross:
                      description: Money object with amount and currency
                      example:
                        amount: '13.37'
                        currency: EUR
                      type: object
                      additionalProperties: false
                      properties:
                        amount:
                          description: A string representing the amount
                          type: string
                          format: float
                          example: '24.99'
                        currency:
                          type: string
                          pattern: '[A-Z]{3}'
                          enum:
                          - EUR
                          - USD
                          - JPY
                          - BGN
                          - CZK
                          - DKK
                          - GBP
                          - HUF
                          - PLN
                          - RON
                          - SEK
                          - CHF
                          - ISK
                          - NOK
                          - HRK
                          - RUB
                          - TRY
                          - AUD
                          - BRL
                          - CAD
                          - CNY
                          - HKD
                          - IDR
                          - ILS
                          - INR
                          - KRW
                          - MXN
                          - MYR
                          - NZD
                          - PHP
                          - SGD
                          - THB
                          - ZAR
                          - ARS
                          - CLP
                          - SAR
                          - AED
                          - QAR
                          description: Currency matches one of currency values as specified in ISO-4217.
                          example: PLN
                    amountNet:
                      description: Money object with amount and currency
                      example:
                        amount: '13.37'
                        currency: EUR
                      type: object
                      additionalProperties: false
                      properties:
                        amount:
                          description: A string representing the amount
                          type: string
                          format: float
                          example: '24.99'
                        currency:
                          type: string
                          pattern: '[A-Z]{3}'
                          enum:
                          - EUR
                          - USD
                          - JPY
                          - BGN
                          - CZK
                          - DKK
                          - GBP
                          - HUF
                          - PLN
                          - RON
                          - SEK
                          - CHF
                          - ISK
                          - NOK
                          - HRK
                          - RUB
                          - TRY
                          - AUD
                          - BRL
                          - CAD
                          - CNY
                          - HKD
                          - IDR
                          - ILS
                          - INR
                          - KRW
                          - MXN
                          - MYR
                          - NZD
                          - PHP
                          - SGD
                          - THB
                          - ZAR
                          - ARS
                          - CLP
                          - SAR
                          - AED
                          - QAR
                          description: Currency matches one of currency values as specified in ISO-4217.
                          example: PLN
                    freightCharge:
                      type: number
                      format: float
                      description: Freight costs
                    taxation:
                      x-description-missing: true
                      type: string
                    taxes:
                      type: object
                      additionalProperties: false
                      properties:
                        normalTax:
                          type: object
                          additionalProperties: false
                          nullable: true
                          properties:
                            rate:
                              type: number
                              description: percentual rate
                            amount:
                              type: number
                              format: float
                              description: absolut amount
                        reducedTax:
                          type: object
                          additionalProperties: false
                          nullable: true
                          properties:
                            rate:
                              type: number
                              description: percentual rate
                            amount:
                              type: number
                              format: float
                              description: absolut amount
                        customTax1:
                          type: object
                          additionalProperties: false
                          nullable: true
                          properties:
                            rate:
                              type: number
                              description: percentual rate
                            amount:
                              type: number
                              format: float
                              description: absolut amount
                        customTax2:
                          type: object
                          additionalProperties: false
                          nullable: true
                          properties:
                            rate:
                              type: number
                              description: percentual rate
                            amount:
                              type: number
                              format: float
                              description: absolut amount
                    paymentTerms:
                      x-description-missing: true
                      type: object
                      additionalProperties: false
                      properties:
                        dueDate:
                          type: string
                          format: date
                          nullable: true
                        earlyPaymentDate:
                          type: string
                          format: date
                          nullable: true
                        earlyPaymentDiscount:
                          type: number
                          format: float
                        earlyPaymentDiscountAmount:
                          type: number
                          format: float
                    bookingText:
                      description: header booking text
                      type: string
                    payment:
                      type: object
                      additionalProperties: false
                      properties:
                        methodName:
                          x-description-missing: true
                          type: string
                        paidAmount:
                          type: number
                          format: float
                        paidOnDate:
                          type: string
                          format: date
                          nullable: true
                        discountReceived:
                          type: number
                          format: float
                      description: payment information
                    glAccount:
                      type: string
                      nullable: true
                      description: ledger account
                    costCenter:
                      type: string
                      nullable: true
                      description: cost center
                assignedPurchaseOrders:
                  x-description-missing: true
                  type: array
                  nullable: true
                  items:
                    type: object
                    additionalProperties: false
                    required:
                    - id
                    - project
                    properties:
                      id:
                        type: string
                        pattern: \d+
                        example: '17'
                        description: Resource identifier.
                      number:
                        type: string
                      amountGross:
                        type: number
                        format: float
                      amountNet:
                        type: number
                        format: float
                      project:
                        type: object
                        additionalProperties: false
                        description: related project ID
                        required:
                        - id
                        properties:
                          id:
                            type: string
                            pattern: \d+
                            example: '17'
                            description: Resource identifier.
                      salesOrder:
                        type: object
                        nullable: true
                        additionalProperties: false
                        required:
                        - id
                        properties:
                          id:
                            type: string
                            pattern: \d+
                            example: '17'
                            description: Resource identifier.
                      costCenter:
                        type: string
                bookingText:
                  description: header booking text
                  type: string
                project:
                  type: object
                  additionalProperties: false
                  description: related project ID
                  properties:
                    id:
                      type: string
                      pattern: \d+
                      example: '17'
                      description: Resource identifier.
                accounting:
                  type: array
                  items:
                    type: object
                    additionalProperties: false
                    properties:
                      glAccount:
                        type: string
                        pattern: \d+
                        example: '17'
                        description: Resource identifier.
                      bookingText:
                        type: string
                        description: 1st accounting entry text
                      amount:
                        description: Money object with amount and currency
                        example:
                          amount: '13.37'
                          currency: EUR
                        type: object
                        additionalProperties: false
                        properties:
                          amount:
                            description: A string representing the amount
                            type: string
                            format: float
                            example: '24.99'
                          currency:
                            type: string
                            pattern: '[A-Z]{3}'
                            enum:
                            - EUR
                            - USD
                            - JPY
                            - BGN
                            - CZK
                            - DKK
                            - GBP
                            - HUF
                            - PLN
                            - RON
                            - SEK
                            - CHF
                            - ISK
                            - NOK
                            - HRK
                            - RUB
                            - TRY
                            - AUD
                            - BRL
                            - CAD
                            - CNY
                            - HKD
                            - IDR
                            - ILS
                            - INR
                            - KRW
                            - MXN
                            - MYR
                            - NZD
                            - PHP
                            - SGD
                            - THB
                            - ZAR
                            - ARS
                            - CLP
                            - SAR
                            - AED
                            - QAR
                            description: Currency matches one of currency values as specified in ISO-4217.
                            example: PLN
                      tax:
                        type: object
                        description: percentual tax rate
                        additionalProperties: false
                        properties:
                          rate:
                            type: number
                            format: float
                      costCenter:
                        type: string
                paymentTerms:
                  x-description-missing: true
                  type: object
                  additionalProperties: false
                  properties:
                    dueDate:
                      type: string
                      format: date
                      nullable: true
                    earlyPaymentDate:
                      type: string
                      format: date
                      nullable: true
                    earlyPaymentDiscount:
                      type: number
                      format: float
                payment:
                  type: object
                  additionalProperties: false
                  properties:
                    methodName:
                      x-description-missing: true
                      type: string
                    paidAmount:
                      type: number
                      format: float
                    paidOnDate:
                      type: string
                      format: date
                      nullable: true
                    discountReceived:
                      type: number
                      format: float
                  description: payment information
                positions:
                  type: array
                  items:
                    type: object
                    additionalProperties: false
                    required:
                    - product
                    - price
                    - tax
                    properties:
                      sort:
                        description: The position of the position in the list
                        type: number
                        minimum: 0
                      number:
                        type: string
                      purchaseOrder:
                        type: object
                        additionalProperties: false
                        nullable: true
                        properties:
                          id:
                            type: string
                            pattern: \d+
                            example: '17'
                            description: Resource identifier.
                      product:
                        type: object
                        additionalProperties: false
                        required:
                        - id
                        properties:
                          id:
                            type: string
                            pattern: \d+
                            example: '17'
                            description: Resource identifier.
                          supplierProductNumber:
                            type: string
                      deliveryDate:
                        description: The date the position was delivered
                        type: string
                        format: date
                        nullable: true
                      quantity:
                        description: The quantity of the position
                        type: number
                        minimum: 0
                      unit:
                        type: string
                      packagingUnit:
                        type: string
                      price:
                        description: Money object with amount and currency
                        example:
                          amount: '13.37'
                          currency: EUR
                        type: object
                        additionalProperties: false
                        properties:
                          amount:
                            description: A string representing the amount
                            type: string
                            format: float
                            example: '24.99'
                          currency:
                            type: string
                            pattern: '[A-Z]{3}'
                            enum:
                            - EUR
                            - USD
                            - JPY
                            - BGN
                            - CZK
                            - DKK
                            - GBP
                            - HUF
                            - PLN
                            - RON
                            - SEK
                            - CHF
                            - ISK
                            - NOK
                            - HRK
                            - RUB
                            - TRY
                            - AUD
                            - BRL
                            - CAD
                            - CNY
                            - HKD
                            - IDR
                            - ILS
                            - INR
                            - KRW
                            - MXN
                            - MYR
                            - NZD
                            - PHP
                            - SGD
                            - THB
                            - ZAR
                            - ARS
                            - CLP
                            - SAR
                            - AED
                            - QAR
                            description: Currency matches one of currency values as specified in ISO-4217.
                            example: PLN
                      costCenter:
                        type: string
                      tax:
                        type: object
                        additionalProperties: false
                        required:
                        - rate
                        properties:
                          vatCategory:
                            description: The category of the value added tax
                            type: string
                          rate:
                            description: Tax rate in percent
                            type: number
                            format: float
                            minimum: 0
                            nullable: false
                          taxText:
                            type: string
                            nullable: true
            examples:
              create liability:
                value:
                  date: '2024-01-01'
                  supplier:
                    id: '123456'
                  supplierInvoiceNumber: '123456'
                  receiptDate: '2024-01-01T12:00:00Z'
                  status: open
                  clarificationCase: true
                  clarificationReason: Awaiting customer confirmation on pricing details.
                  release: true
                  invoiceRelease: false
                  internalComment: Priority customer. Expedite processing once clarification is received.
                  financials:
                    amountGross:
                      amount: '100.0'
                      currency: EUR
                    freightCharge: 10
                    taxation: VAT
                    taxes:
                      normalTax:
                        rate: 19
                        amount: 19
                      reducedTax:
                        rate: 7
                        amount: 7
                      customTax1:
                        rate: 8.1
                        amount: 50.5
                      customTax2:
                        rate: 10
                        amount: 50.5
                    paymentTerms:
                      dueDate: '2020-01-31'
                      earlyPaymentDate: '2020-01-15'
                      earlyPaymentDiscount: 2
                    bookingText: Liability booking text
                    payment:
                      methodName: Bank transfer
                      paidAmount: 100
                      paidOnDate: '2020-01-01'
                      discountReceived: 2
                    glAccount: '123456'
                    costCenter: '123456'
                  assignedPurchaseOrders:
                  - id: '123456'
                    number: '123456'
                    amountGross: 100
                    amountNet: 100
                    project:
                      id: '123456'
                    salesOrder:
                      id: '123456'
                    costCenter: '123456'
                  bookingText: Liability booking text
                  project:
                    id: '123456'
                  accounting:
                  - glAccount: '123456'
                    bookingText: Liability booking text
                    amount:
                      amount: '100.0'
                      currency: EUR
                    tax:
                      rate: 19
                    costCenter: '123456'
                  paymentTerms:
                    dueDate: '2020-01-31'
                    earlyPaymentDate: '2020-01-15'
                  positions:
                  - sort: 1
                    number: '123456'
                    purchaseOrder:
                      id: '123456'
                    product:
                      id: '123456'
                      supplierProductNumber: '123456'
                    deliveryDate: '2024-01-01'
                    quantity: 1
                    unit: pcs
                    packagingUnit: pcs
                    price:
                      amount: '100.0'
                      currency: EUR
                    costCenter: '123456'
                    tax:
                      vatCategory: 19%
                      rate: 19
                      taxText: VAT 19%
      responses:
        '201':
          description: Resource successfully created response
          headers:
            Location:
              schema:
                type: string
                example: https://example.xentral.biz/api/users/17
              description: URI of the created resource
          content:
            text/html:
              schema:
                type: string
                enum:
                - ''
                nullable: true
        '400':
          description: IETF RFC 9457 Problem API compliant response
          content:
            application/problem+json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  required:
                  - type
                  - title
                  - violations
                  properties:
                    type:
                      type: string
                      enum:
                      - https://api.xentral.biz/problems/request-validation
                    title:
                      type: string
                      minLength: 1
                      example: Request payload validation failed.
                    violations:
                      oneOf:
                      - type: array
                        items:
                          type: object
                          example:
                            username:
                            - This value should not be blank.
                            email:
                            - This value is not a valid email address.
                        description: This field will be a mirrored request payload with only invalid fields and values replaced by error messages.
                      - type: object
                        example:
                          _:
                          - This value should contain at most `9` elements.
                        description: This field will be a mirrored request payload with only invalid fields and values replaced by error messages.
                - type: object
                  additionalProperties: false
                  required:
                  - type
                  - title
                  - messages
                  properties:
                    type:
                      type: string
                      enum:
                      - https://api.xentral.biz/problems/generic-validation
                    title:
                      type: string
                      minLength: 1
                    messages:
                      type: array
                      items:
                        type: string
                - type: object
                  additionalProperties: false
                  required:
                  - type
                  - title
                  - messages
                  properties:
                    type:
                      type: string
                      enum:
                      - https://api.xentral.biz/problems/conflict
                    title:
                      type: string
                      minLength: 1
                    messages:
                      type: array
                      items:
                        type: string
                - type: object
                  additionalProperties: false
                  required:
                  - type
                  - title
                  - items
                  properties:
                    type:
                      type: string
                      enum:
                      - https://api.xentral.biz/problems/conflictItems
                    title:
                      type: string
                      minLength: 1
                    items:
                      type: array
                      items:
                        type: object
                        additionalProperties: false
                        required:
                       

# --- truncated at 32 KB (126 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/xentral/refs/heads/main/openapi/xentral-liability-api-openapi.yml