Agicap Supplier Invoices API

The Supplier Invoices API from Agicap — 2 operation(s) for supplier invoices.

OpenAPI Specification

agicap-supplier-invoices-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  contact: {}
  title: Clients AR Account reports Supplier Invoices API
  version: v1
servers:
- url: https://api.agicap.com
- url: https://api.agicap.internal
tags:
- name: Supplier Invoices
paths:
  /public/business-documents/v1/entities/{entityid}/connections/{connectionid}/supplier-invoices:
    get:
      operationId: SupplierInvoice_GetSupplierInvoices
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      - description: Number of items per page (max 10 000)
        in: query
        name: pagesize
        schema:
          description: Number of items per page (max 10 000)
          format: int32
          type: integer
      - description: Page index
        in: query
        name: pageindex
        schema:
          description: Page index
          format: int32
          type: integer
      - description: Unique identifier of the document in the data source
        explode: false
        in: query
        name: externalids
        schema:
          description: Unique identifier of the document in the data source
          items:
            type: string
          type: array
        style: form
      - description: Will return only documents updated **after** this date
        in: query
        name: updatedsince
        schema:
          description: Will return only documents updated **after** this date
          format: date-time
          type: string
      - description: 'Filter on status. Possible values : draft, due, paid, cancelled, deleted'
        explode: false
        in: query
        name: status
        schema:
          description: 'Filter on status. Possible values : draft, due, paid, cancelled, deleted'
          items:
            type: string
          type: array
        style: form
      responses:
        '200':
          content:
            application/json:
              example:
                items:
                - accounting:
                    accountCode: Account code
                    accountNumber: Account number
                    amount: 100
                    currency: EUR
                  amounts:
                    dueAmount: 80
                    taxesAmount: 20
                    totalAmount: 200
                  counterParty:
                    id: id
                    name: counter party name
                  currency: EUR
                  dueDate: '2025-03-07T14:30:10+00:00'
                  erpIdentificationFields:
                    erp field 1: value 1
                    erp field 2: value 2
                  expectedPaymentDate: '2025-03-07T14:30:10+00:00'
                  externalId: Some External Id
                  hasReadable: false
                  id: d062b351-99ac-413a-9bf9-509498499a18
                  instalments:
                  - accountingAmount:
                      amount: 100
                      currency: EUR
                    amounts:
                      dueAmount: 80
                      taxesAmount: 20
                      totalAmount: 200
                    dueDate: '2024-12-07T14:30:10+00:00'
                    erpIdentificationFields:
                      erp field 1: value 1
                      erp field 2: value 2
                    externalId: Some External Id
                    issueDate: '2024-02-06T14:30:10+00:00'
                    label: client invoice label
                    metadata:
                      additional field: additional info
                    paymentDate: '2024-03-07T14:30:10+00:00'
                    paymentMethod: Credit Card
                    status: due
                  invoiceNumber: '00341001'
                  issueDate: '2024-02-06T14:30:10+00:00'
                  label: supplier invoice label
                  metadata:
                    additional field: additional info
                  paymentDate: '2025-03-07T14:30:10+00:00'
                  status: due
                pagination:
                  pageIndex: 1
                  pageItemsCount: 7
                  pageSize: 10
                  totalItemsCount: 7
              schema:
                $ref: '#/components/schemas/SupplierInvoiceDtoPageDto'
          description: Supplier invoices
        '401':
          description: Unauthorized request.
        '403':
          description: Forbidden request.
        '429':
          description: Too many requests. Please try again later.
        '500':
          content:
            application/problem+json:
              schema:
                properties:
                  detail:
                    description: Details of the error
                    nullable: true
                    type: string
                  instance:
                    nullable: true
                    type: string
                  status:
                    description: Code status
                    nullable: true
                    type: integer
                  title:
                    description: Name of the error
                    nullable: true
                    type: string
                  type:
                    description: Type of error
                    nullable: true
                    type: string
                type: object
          description: An internal server occurred.
      security:
      - bearer_client_credentials:
        - agicap:public-api
      - bearer_client_credentials:
        - agicap:public-api
      - bearerAuth: []
      summary: Get supplier invoices
      tags:
      - Supplier Invoices
    post:
      operationId: SupplierInvoice_CreateSupplierInvoices
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      requestBody:
        content:
          application/*+json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 80
                taxesAmount: 20
                totalAmount: 200
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 80
                  taxesAmount: 20
                  totalAmount: 200
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                issueDate: '2024-02-06T14:30:10+00:00'
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDto'
              type: array
          application/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 80
                taxesAmount: 20
                totalAmount: 200
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 80
                  taxesAmount: 20
                  totalAmount: 200
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                issueDate: '2024-02-06T14:30:10+00:00'
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDto'
              type: array
          text/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 80
                taxesAmount: 20
                totalAmount: 200
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 80
                  taxesAmount: 20
                  totalAmount: 200
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                issueDate: '2024-02-06T14:30:10+00:00'
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDto'
              type: array
      responses:
        '201':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/CreatedDocumentDto'
                type: array
          description: Ids of the created documents, associated with the provided external identifiers
        '401':
          description: Unauthorized request.
        '403':
          description: Forbidden request.
        '429':
          description: Too many requests. Please try again later.
        '500':
          content:
            application/problem+json:
              schema:
                properties:
                  detail:
                    description: Details of the error
                    nullable: true
                    type: string
                  instance:
                    nullable: true
                    type: string
                  status:
                    description: Code status
                    nullable: true
                    type: integer
                  title:
                    description: Name of the error
                    nullable: true
                    type: string
                  type:
                    description: Type of error
                    nullable: true
                    type: string
                type: object
          description: An internal server occurred.
      security:
      - bearer_client_credentials:
        - agicap:public-api
      - bearer_client_credentials:
        - agicap:public-api
      - bearerAuth: []
      summary: Create supplier invoices
      tags:
      - Supplier Invoices
    put:
      description: 'To mark an invoice as paid, update it with the following value : `"status": "paid"` and `"dueAmount": 0`<br><br>To delete an invoice, update it with the following value : `"status" = "deleted"`'
      operationId: SupplierInvoice_UpdateSupplierInvoices
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      requestBody:
        content:
          application/*+json:
            schema:
              items:
                $ref: '#/components/schemas/UpdateSupplierInvoiceDto'
              type: array
          application/json:
            schema:
              items:
                $ref: '#/components/schemas/UpdateSupplierInvoiceDto'
              type: array
          text/json:
            schema:
              items:
                $ref: '#/components/schemas/UpdateSupplierInvoiceDto'
              type: array
      responses:
        '401':
          description: Unauthorized request.
        '403':
          description: Forbidden request.
        '429':
          description: Too many requests. Please try again later.
        '500':
          content:
            application/problem+json:
              schema:
                properties:
                  detail:
                    description: Details of the error
                    nullable: true
                    type: string
                  instance:
                    nullable: true
                    type: string
                  status:
                    description: Code status
                    nullable: true
                    type: integer
                  title:
                    description: Name of the error
                    nullable: true
                    type: string
                  type:
                    description: Type of error
                    nullable: true
                    type: string
                type: object
          description: An internal server occurred.
      security:
      - bearer_client_credentials:
        - agicap:public-api
      - bearer_client_credentials:
        - agicap:public-api
      - bearerAuth: []
      summary: Update supplier invoices
      tags:
      - Supplier Invoices
  /public/business-documents/v2/entities/{entityid}/connections/{connectionid}/supplier-invoices:
    get:
      operationId: SupplierInvoice_GetSupplierInvoicesV2
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      - description: Number of items per page (max 10 000)
        in: query
        name: pagesize
        schema:
          description: Number of items per page (max 10 000)
          format: int32
          type: integer
      - description: Page index
        in: query
        name: pageindex
        schema:
          description: Page index
          format: int32
          type: integer
      - description: Unique identifier of the document in the data source
        explode: false
        in: query
        name: externalids
        schema:
          description: Unique identifier of the document in the data source
          items:
            type: string
          type: array
        style: form
      - description: Will return only documents updated **after** this date
        in: query
        name: updatedsince
        schema:
          description: Will return only documents updated **after** this date
          format: date-time
          type: string
      - description: 'Filter on status. Possible values : draft, due, paid, cancelled, deleted'
        explode: false
        in: query
        name: status
        schema:
          description: 'Filter on status. Possible values : draft, due, paid, cancelled, deleted'
          items:
            type: string
          type: array
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupplierInvoiceDtoV2PageDto'
          description: Supplier invoices
        '401':
          description: Unauthorized request.
        '403':
          description: Forbidden request.
        '429':
          description: Too many requests. Please try again later.
        '500':
          content:
            application/problem+json:
              schema:
                properties:
                  detail:
                    description: Details of the error
                    nullable: true
                    type: string
                  instance:
                    nullable: true
                    type: string
                  status:
                    description: Code status
                    nullable: true
                    type: integer
                  title:
                    description: Name of the error
                    nullable: true
                    type: string
                  type:
                    description: Type of error
                    nullable: true
                    type: string
                type: object
          description: An internal server occurred.
      security:
      - bearer_client_credentials:
        - agicap:public-api
      - bearer_client_credentials:
        - agicap:public-api
      - bearerAuth: []
      summary: Get supplier invoices
      tags:
      - Supplier Invoices
    post:
      operationId: SupplierInvoice_CreateSupplierInvoicesV2
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      requestBody:
        content:
          application/*+json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 100
                taxesAmount: 20
                totalAmount: 120
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 100
                  taxesAmount: 20
                  totalAmount: 120
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDtoV2'
              type: array
          application/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 100
                taxesAmount: 20
                totalAmount: 120
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 100
                  taxesAmount: 20
                  totalAmount: 120
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDtoV2'
              type: array
          text/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 100
                taxesAmount: 20
                totalAmount: 120
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 100
                  taxesAmount: 20
                  totalAmount: 120
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/CreateSupplierInvoiceDtoV2'
              type: array
      responses:
        '201':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/CreatedDocumentDto'
                type: array
          description: Ids of the created documents, associated with the provided external identifiers
        '401':
          description: Unauthorized request.
        '403':
          description: Forbidden request.
        '429':
          description: Too many requests. Please try again later.
        '500':
          content:
            application/problem+json:
              schema:
                properties:
                  detail:
                    description: Details of the error
                    nullable: true
                    type: string
                  instance:
                    nullable: true
                    type: string
                  status:
                    description: Code status
                    nullable: true
                    type: integer
                  title:
                    description: Name of the error
                    nullable: true
                    type: string
                  type:
                    description: Type of error
                    nullable: true
                    type: string
                type: object
          description: An internal server occurred.
      security:
      - bearer_client_credentials:
        - agicap:public-api
      - bearer_client_credentials:
        - agicap:public-api
      - bearerAuth: []
      summary: Create supplier invoices
      tags:
      - Supplier Invoices
    put:
      description: 'To mark an invoice as paid, update it with the following value : `"status": "paid"` and `"dueAmount": 0`<br><br>To delete an invoice, update it with the following value : `"status" = "deleted"`'
      operationId: SupplierInvoice_UpdateSupplierInvoicesV2
      parameters:
      - description: Agicap entity unique identifier
        in: path
        name: entityid
        required: true
        schema:
          description: Agicap entity unique identifier
          type: string
      - description: The connection unique identifier
        in: path
        name: connectionid
        required: true
        schema:
          description: The connection unique identifier
          format: uuid
          type: string
      requestBody:
        content:
          application/*+json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 100
                taxesAmount: 20
                totalAmount: 120
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              id: d062b351-99ac-413a-9bf9-509498499a19
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 100
                  taxesAmount: 20
                  totalAmount: 120
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/UpdateSupplierInvoiceDtoV2'
              type: array
          application/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
                dueAmount: 100
                taxesAmount: 20
                totalAmount: 120
              counterParty:
                id: id
                name: counter party name
              currency: EUR
              dueDate: '2025-03-07T14:30:10+00:00'
              erpIdentificationFields:
                erp field 1: value 1
                erp field 2: value 2
              expectedPaymentDate: '2025-03-07T14:30:10+00:00'
              externalId: Some External Id
              id: d062b351-99ac-413a-9bf9-509498499a19
              instalments:
              - accountingAmount:
                  amount: 100
                  currency: EUR
                amounts:
                  dueAmount: 100
                  taxesAmount: 20
                  totalAmount: 120
                dueDate: '2024-12-07T14:30:10+00:00'
                erpIdentificationFields:
                  erp field 1: value 1
                  erp field 2: value 2
                externalId: Some External Id
                label: supplier invoice label
                metadata:
                  additional field: additional info
                paymentDate: '2024-03-07T14:30:10+00:00'
                paymentMethod: Credit Card
                status: due
              invoiceNumber: '00341001'
              issueDate: '2024-02-06T14:30:10+00:00'
              label: supplier invoice label
              metadata:
                additional field: additional info
              paymentDate: '2025-03-07T14:30:10+00:00'
              status: due
            schema:
              items:
                $ref: '#/components/schemas/UpdateSupplierInvoiceDtoV2'
              type: array
          text/json:
            example:
            - accounting:
                accountCode: Account code
                accountNumber: Account number
                amount: 100
                currency: EUR
              amounts:
  

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/agicap/refs/heads/main/openapi/agicap-supplier-invoices-api-openapi.yml