openapi: 3.0.0
info:
contact: {}
title: Clients AR Account reports Client Invoices API
version: v1
servers:
- url: https://api.agicap.com
- url: https://api.agicap.internal
tags:
- name: Client Invoices
paths:
/public/business-documents/v1/entities/{entityid}/connections/{connectionid}/client-invoices:
get:
operationId: ClientInvoice_GetClientInvoices
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
financingSolution: null
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: client 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/ClientInvoiceDtoPageDto'
description: Client 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 client invoices
tags:
- Client Invoices
post:
operationId: ClientInvoice_CreateClientInvoices
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
financingSolution: null
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDto'
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
financingSolution: null
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDto'
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
financingSolution: null
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDto'
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 client invoices
tags:
- Client Invoices
put:
description: 'To mark an invoice as paid, update it with the following value : `"status": "paid"` and `"dueAmount": 0`
To delete an invoice, update it with the following value : `"status" = "deleted"`'
operationId: ClientInvoice_UpdateClientInvoices
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/UpdateClientInvoiceDto'
type: array
application/json:
schema:
items:
$ref: '#/components/schemas/UpdateClientInvoiceDto'
type: array
text/json:
schema:
items:
$ref: '#/components/schemas/UpdateClientInvoiceDto'
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 client invoices
tags:
- Client Invoices
/public/business-documents/v2/entities/{entityid}/connections/{connectionid}/client-invoices:
get:
operationId: ClientInvoice_GetClientInvoicesV2
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/ClientInvoiceDtoV2PageDto'
description: Client 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 client invoices
tags:
- Client Invoices
post:
operationId: ClientInvoice_CreateClientInvoices
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
financingSolution: null
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDtoV2'
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
financingSolution: null
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDtoV2'
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
financingSolution: null
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/CreateClientInvoiceDtoV2'
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 client invoices
tags:
- Client Invoices
put:
description: 'To mark an invoice as paid, update it with the following value : `"status": "paid"` and `"dueAmount": 0`
To delete an invoice, update it with the following value : `"status" = "deleted"`'
operationId: ClientInvoice_UpdateClientInvoices
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
financingSolution: null
id: d062b351-99ac-413a-9bf9-509498499a18
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/UpdateClientInvoiceDtoV2'
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
financingSolution: null
id: d062b351-99ac-413a-9bf9-509498499a18
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/UpdateClientInvoiceDtoV2'
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
financingSolution: null
id: d062b351-99ac-413a-9bf9-509498499a18
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
financingSolution: Factoring
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: client invoice label
metadata:
additional field: additional info
paymentDate: '2025-03-07T14:30:10+00:00'
status: due
schema:
items:
$ref: '#/components/schemas/UpdateClientInvoiceDtoV2'
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 client invoices
tags:
- Client Invoices
components:
schemas:
InstalmentAccountingAmountDto:
additionalProperties: false
properties:
amount:
description: Accounting amount in the accounting currency.
format: double
nullable: true
type: number
currency:
description: Accounting currency of the instalment
nullable: true
type: string
title: AccountingAmount
type: object
ClientInvoiceDtoV2:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDto'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDto'
counterParty:
$ref: '#/components/schemas/CounterPartyDto'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
hasReadable:
description: Has a readable file attached
type: boolean
id:
description: Unique identifier generated by Agicap
format: uuid
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDtoV2'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
nullable: true
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
nullable: true
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- currency
- externalId
- id
- status
title: ClientInvoice
type: object
AccountingDtoV2:
additionalProperties: false
properties:
accountCode:
description: Represents the account Code of the Third Party Account the invoice is linked to.
nullable: true
type: string
accountNumber:
description: Represents the account number of the invoice. It is used to classify financial activities and balances within the General Ledger.
nullable: true
type: string
amount:
description: Represents the total amount of the invoice in the accounting currency. (amount must be positive)
format: double
nullable: true
type: number
currency:
description: Represents the currency code in ISO 4217 format used in the accounting process (which can be different from the invoice currency).
nullable: true
type: string
title: InvoiceAccounting
type: object
CounterPartyDtoV2:
additionalProperties: false
properties:
id:
description: Unique identifier of the linked Counterpart (Supplier / Client) in the source data
minLength: 1
type: string
name:
description: Name of the linked Counterpart (Supplier / Client)
minLength: 1
type: string
required:
- id
- name
title: CounterParty
type: object
CreatedDocumentDto:
additionalProperties: false
properties:
externalId:
type: string
id:
format: uuid
type: string
title: CreatedDocument
type: object
UpdateClientInvoiceDtoV2:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDtoV2'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDtoV2'
counterParty:
$ref: '#/components/schemas/CounterPartyDtoV2'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
id:
description: Unique identifier generated by Agicap
format: uuid
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDtoV2'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
minLength: 1
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- counterParty
- currency
- dueDate
- externalId
- id
- invoiceNumber
- issueDate
- status
title: UpdateClientInvoice
type: object
UpdateClientInvoiceDto:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDto'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDto'
counterParty:
$ref: '#/components/schemas/CounterPartyDto'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
id:
description: Unique identifier generated by Agicap
format: uuid
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDto'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
nullable: true
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
nullable: true
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- currency
- externalId
- id
- status
title: UpdateClientInvoice
type: object
ClientInvoiceDtoPageDto:
additionalProperties: false
properties:
items:
items:
$ref: '#/components/schemas/ClientInvoiceDto'
type: array
pagination:
$ref: '#/components/schemas/PaginationMetadataDto'
title: Page
type: object
ClientInvoiceInstalmentDtoV2:
additionalProperties: false
properties:
accountingAmount:
$ref: '#/components/schemas/InstalmentAccountingAmountDto'
amounts:
$ref: '#/components/schemas/InstalmentAmountsDtoV2'
dueDate:
description: Instalment due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
externalId:
description: Unique identifier of the instalment in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution name
nullable: true
type: string
label:
description: Instalment label
nullable: true
type: string
metadata:
additionalProperties:
type: string
nullable: true
type: object
paymentDate:
description: Payment date of the instalment
format: date-time
nullable: true
type: string
paymentMethod:
description: Payment method used for the instalment
nullable: true
type: string
status:
description: 'Possible values : draft, due, partiallyPaid, paid, cancelled, paymentInProgress'
minLength: 1
type: string
required:
- amounts
- externalId
- status
title: ClientInvoiceInstalment
type: object
CreateClientInvoiceDtoV2:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDtoV2'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDtoV2'
counterParty:
$ref: '#/components/schemas/CounterPartyDtoV2'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDtoV2'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
minLength: 1
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- counterParty
- currency
- dueDate
- externalId
- invoiceNumber
- issueDate
- status
title: CreateClientInvoice
type: object
ClientInvoiceInstalmentDto:
additionalProperties: false
properties:
accountingAmount:
$ref: '#/components/schemas/InstalmentAccountingAmountDto'
amounts:
$ref: '#/components/schemas/InstalmentAmountsDto'
dueDate:
description: Instalment due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
externalId:
description: Unique identifier of the instalment in the source data
minLength: 1
type: string
issueDate:
description: Instalment issue date in ISO 8601 format
format: date-time
nullable: true
type: string
label:
description: Instalment label
nullable: true
type: string
metadata:
additionalProperties:
type: string
nullable: true
type: object
paymentDate:
description: Payment date of the instalment
format: date-time
nullable: true
type: string
paymentMethod:
description: Payment method used for the instalment
nullable: true
type: string
status:
description: 'Possible values : draft, due, partiallyPaid, paid, cancelled, paymentInProgress'
minLength: 1
type: string
required:
- amounts
- externalId
- status
title: ClientInvoiceInstalment
type: object
PaginationMetadataDto:
additionalProperties: false
properties:
pageIndex:
description: Current page index
format: int32
type: integer
pageItemsCount:
description: Number of items on the current page
format: int32
type: integer
pageSize:
description: Page size (items per page)
format: int32
type: integer
totalItemsCount:
description: Total number of items
format: int32
type: integer
title: PaginationMetadata
type: object
CounterPartyDto:
additionalProperties: false
properties:
id:
description: Unique identifier of the linked Counterpart (Supplier / Client) in the source data
nullable: true
type: string
name:
description: Name of the linked Counterpart (Supplier / Client)
nullable: true
type: string
title: CounterParty
type: object
InstalmentAmountsDtoV2:
additionalProperties: false
properties:
dueAmount:
description: Instalment due amount in the document currency. (amount must be positive)
format: double
type: number
taxesAmount:
description: Instalment taxes amount in the document currency. (amount must be positive)
format: double
type: number
totalAmount:
description: Instalment total amount in the document currency. (amount must be positive)
format: double
type: number
required:
- dueAmount
- taxesAmount
- totalAmount
title: InstalmentAmounts
type: object
AmountsWithDueAmountDtoV2:
additionalProperties: false
properties:
dueAmount:
description: Due amount in the document currency. (amount must be positive)
format: double
type: number
taxesAmount:
description: Taxes amount in the document currency. (amount must be positive)
format: double
type: number
totalAmount:
description: Total amount in the document currency. (amount must be positive)
format: double
type: number
required:
- dueAmount
- taxesAmount
- totalAmount
title: AmountsWithDueAmount
type: object
ClientInvoiceDtoV2PageDto:
additionalProperties: false
properties:
items:
items:
$ref: '#/components/schemas/ClientInvoiceDtoV2'
type: array
pagination:
$ref: '#/components/schemas/PaginationMetadataDto'
title: Page
type: object
AmountsWithDueAmountDto:
additionalProperties: false
properties:
dueAmount:
description: Due amount in the document currency.
format: double
nullable: true
type: number
taxesAmount:
description: Taxes amount in the document currency
format: double
nullable: true
type: number
totalAmount:
description: Total amount in the document currency.
format: double
type: number
required:
- totalAmount
title: AmountsWithDueAmount
type: object
InstalmentAmountsDto:
additionalProperties: false
properties:
dueAmount:
description: Instalment due amount in the document currency.
format: double
nullable: true
type: number
taxesAmount:
description: Instalment taxes amount in the document currency
format: double
nullable: true
type: number
totalAmount:
description: Instalment total amount in the document currency.
format: double
type: number
required:
- totalAmount
title: InstalmentAmounts
type: object
ClientInvoiceDto:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDto'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDto'
counterParty:
$ref: '#/components/schemas/CounterPartyDto'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
hasReadable:
description: Has a readable file attached
type: boolean
id:
description: Unique identifier generated by Agicap
format: uuid
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDto'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
nullable: true
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
nullable: true
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- currency
- externalId
- id
- status
title: ClientInvoice
type: object
CreateClientInvoiceDto:
additionalProperties: false
properties:
accounting:
$ref: '#/components/schemas/AccountingDto'
amounts:
$ref: '#/components/schemas/AmountsWithDueAmountDto'
counterParty:
$ref: '#/components/schemas/CounterPartyDto'
currency:
description: Currency code in ISO 4217 format
minLength: 1
type: string
dueDate:
description: Due date in ISO 8601 format
format: date-time
nullable: true
type: string
erpIdentificationFields:
additionalProperties:
type: string
nullable: true
type: object
expectedPaymentDate:
description: Expected Payment date in ISO 8601 format
format: date-time
nullable: true
type: string
externalId:
description: Unique identifier of the document in the source data
minLength: 1
type: string
financingSolution:
description: Financing solution information
nullable: true
type: string
instalments:
items:
$ref: '#/components/schemas/ClientInvoiceInstalmentDto'
nullable: true
type: array
invoiceNumber:
description: Document number in the source data
nullable: true
type: string
issueDate:
description: Issue date in ISO 8601 format
format: date-time
nullable: true
type: string
label:
description: Label of the document
nullable: true
type: string
metadata:
additionalProperties:
type: string
description: Additional metadata as a JSON Object
nullable: true
type: object
paymentDate:
description: Payment in full date in ISO 8601 format
format: date-time
nullable: true
type: string
status:
description: 'Possible values : draft, due, paid, cancelled, deleted'
minLength: 1
type: string
required:
- amounts
- currency
- externalId
- status
title: CreateClientInvoice
type: object
AccountingDto:
additionalProperties: false
properties:
accountCode:
description: Represents the account Code of the Third Party Account the invoice is linked to.
nullable: true
type: string
accountNumber:
description: Represents the account number of the invoice. It is used to classify financial activities and balances within the General Ledger.
nullable: true
type: string
amount:
description: Represents the total amount of the invoice in the accounting currency.
format: double
nullable: true
type: number
currency:
description: Represents the currency used in the accounting process (which can be different from the invoice currency).
nullable: true
type: string
title: InvoiceAccounting
type: object
securitySchemes:
bearer:
bearerFormat: JWT
scheme: bearer
type: http
bearerAuth:
bearerFormat: OPAQUE
scheme: bearer
type: http