Invoice
Contains the invoicing data of a client for a single calendar month regarding the performed benefits of a given service area
type Invoice {
area: ServiceArea!
asBremenStatusLog: [AsBremenStatusLogEntry!]!
auditLog: [AuditLogEntry!]!
awaitingSendingToRecipient: Boolean!
bankAccount: ClientBankAccount
canceledAt: Date @deprecated
cancellationReason: String @deprecated
careDegreeChanged: Boolean!
careDegreeLevel: CareDegreeLevel
clearingRejection: ClearingRejection
client: Client!
clientDebtorNumberMissing: Boolean!
dtaInstruction: Document
dtaNumber: String
dtaPayload: Document
dtaSheet: Document
fundingAgencyDebtorNumberMissing: Boolean!
hints: [String!]
id: InvoiceID!
invoiceDocument: Document
invoiceNumber: String
issuedAt: Date
month: Date!
odooUrl: Url
paymentCondition: String!
pdfUrl: String
performanceReport: DividedPerformanceReport
positions: [InvoicePosition!]!
protocolMessages: [InvoiceProtocolMessage!]!
recipient: MailingAddress
recipientIK: InstitutionCode
recipientType: InvoiceRecipientType
reversal: InvoiceReversal
reversalInvoiceNumber: String @deprecated
reversalPdfUrl: String @deprecated
sendAt: LocalDateTime
socialFactoringStatus: SocialFactoringInvoiceStatus
socialFactoringTransmission: SocialFactoringInvoiceTransmission
splitFrom: Invoice
splitInto: [Invoice!]!
status: InvoiceStatus!
total: Float!
type: InvoiceType!
}
Fields
Invoice.area ● ServiceArea! non-null enum
The service area, which the invoice corresponds to (e.g. SGB_V_HKP, PRIVATE, ...)
Invoice.asBremenStatusLog ● [AsBremenStatusLogEntry!]! non-null object
List of AS Bremen Status Logs.
If AS Bremen API is disabled this will always return an empty list.
Invoice.auditLog ● [AuditLogEntry!]! non-null object
Audit log entries for this invoice.
Invoice.awaitingSendingToRecipient ● Boolean! non-null scalar
true if the invoice is ISSUED and the platform still has to send it to its Kostenträger —
which it does only for an invoice sent through the DTA.
An invoice of a factoring park goes on the stack when it is issued, so it can be transmitted to SozialFactoring before its Kasse has seen it; the stack uses this to say so. It is a signal only and keeps nothing off the stack.
Always false for an invoice to the client — a private invoice, the Eigenanteil, rent — which
has no Kostenträger. Also false for an invoice to a Beihilfestelle or a Sozialamt: those leave
the platform by another route, so whether they have gone out cannot be known, and flagging them
would never stop. It therefore means "not yet sent by us", not "not yet sent".
Invoice.bankAccount ● ClientBankAccount object
The SEPA mandate of the client which applies to this invoice, resolved from Odoo by service area, invoice type and reference date. The reference date is the issue date of the invoice, or the current date as long as the invoice is not issued yet.
Null if the client has no valid mandate matching the invoice.
Invoice.canceledAt ● Date deprecated scalar
Use reversal.date instead.
(Optional) Date when this invoice was canceled.
Invoice.cancellationReason ● String deprecated scalar
Use reversal.reason instead.
(Optional) Reason why this invoice was canceled.
Invoice.careDegreeChanged ● Boolean! non-null scalar
Flag set to the invoices with incorrect basis, whose client's care degree level has changed
Invoice.careDegreeLevel ● CareDegreeLevel enum
The care degree of the client used to create this invoice.
Invoice.clearingRejection ● ClearingRejection object
Why the receiving institution rejected the invoice sent per email (Emailverfahren). Only set while the status is
CLEARING_REJECTED.
Invoice.client ● Client! non-null object
Reference to the client, to whom the invoice belongs
Invoice.clientDebtorNumberMissing ● Boolean! non-null scalar
true if the invoice's client has no debtor number. SozialFactoring needs it as the insureeKey
of every invoice, whoever the invoice is owed by, so it is required for an invoice to a Kasse as
well as for a private one. Checked against the numbers stored now.
SozialFactoring refuses a transmit and a FactoJson download carrying such an invoice, with
SOCIAL_FACTORING_CLIENT_DEBTOR_NUMBER_MISSING; the stack uses this to say so beforehand.
Always false for a legacy invoice.
Invoice.dtaInstruction ● Document object
The DTA document containing meta information about this invoice. It's called a AUFTRAG file.
Invoice.dtaNumber ● String scalar
The data transfer number of the invoice. This is available after the invoice is issued and the DTA is successfully created.
Invoice.dtaPayload ● Document object
The DTA document containing payload information about this invoice. It's always in context with the instruction file.
Invoice.dtaSheet ● Document object
The accompanying sheet which is send to the receiving office via mail (post office).
It contains information about the client, the sender, the recipient and the corresponding DTA file.
It's called a Begleitzettel.
Invoice.fundingAgencyDebtorNumberMissing ● Boolean! non-null scalar
true if the funding agency this invoice is owed by has no DATEV debtor number.
SozialFactoring refuses a transmit and a FactoJson download carrying such an invoice, with
SOCIAL_FACTORING_FUNDING_AGENCY_DEBTOR_NUMBER_MISSING; the stack uses this to say so
beforehand. Always false for a private invoice, whose debtor is the client (see
clientDebtorNumberMissing), for a legacy invoice, and for an invoice whose funding agency
cannot be found by its IK.
Invoice.hints ● [String!] list scalar
All hints and comments regarding the invoice (e.g. if data is not complete or consistent). This is usually used in combination with the following status: WARNING, DATA_ERROR and TECHNICAL_ERROR.
Invoice.id ● InvoiceID! non-null scalar
Unique identifier
Invoice.invoiceDocument ● Document object
The invoice as a PDF file
Invoice.invoiceNumber ● String scalar
Continuously generated number of the invoice. This is not available for drafts.
Invoice.issuedAt ● Date scalar
The date this invoice was issued. This is not available for drafts.
Invoice.month ● Date! non-null scalar
Which calendar month is covered by the given invoice
Invoice.odooUrl ● Url scalar
Link to the invoice in odoo.
Invoice.paymentCondition ● String! non-null scalar
Payment condition of the invoice.
Invoice.pdfUrl ● String scalar
Link to the PDF document of the invoice in Odoo
Invoice.performanceReport ● DividedPerformanceReport object
(Optional) The associated performance report for this invoice.
It's only present for invoices of type CARE_SERVICE.
Invoice.positions ● [InvoicePosition!]! non-null object
List of the single positions of this invoice.
Invoice.protocolMessages ● [InvoiceProtocolMessage!]! non-null object
Protocol messages recorded during invoice processing (e.g. DTA creation, sending).
Invoice.recipient ● MailingAddress scalar
The recipient of this issue. Can be null if required data is missing.
Invoice.recipientIK ● InstitutionCode scalar
The institution code of the recipient. Only available if the recipient is a funding agency.
Invoice.recipientType ● InvoiceRecipientType enum
Type of the recipient.
Invoice.reversal ● InvoiceReversal object
The reversal (Stornorechnung) that cancelled this invoice. Null unless the status is STORNO.
The reversal is a document of its own in accounting, with its own number and date. It always reverses the whole invoice, so its positions are the positions of this invoice.
Invoice.reversalInvoiceNumber ● String deprecated scalar
Use reversal.invoiceNumber instead.
(Optional) Invoice number of the reversed invoice.
Invoice.reversalPdfUrl ● String deprecated scalar
Use reversal.pdfUrl instead.
(Optional) Link to the PDF document of the reversed invoice.
Invoice.sendAt ● LocalDateTime scalar
The date this invoice was send to the recipient. If it's send again this value is refreshed. This is not available for drafts.
Invoice.socialFactoringStatus ● SocialFactoringInvoiceStatus enum
How far this invoice has come on its way to SozialFactoring, or null if it was never released
for factoring.
Independent of status, which tracks the invoice towards its Kostenträger.
Invoice.socialFactoringTransmission ● SocialFactoringInvoiceTransmission object
The transmission that put this invoice at SozialFactoring, or null unless its
socialFactoringStatus is TRANSMITTED.
An invoice can be carried by several files over time: a refused transmission leaves its files
behind, and a later one sends the invoice again. The one returned is the earliest transmission of
the invoice's park that got through as a whole — every one of its files UPLOADED — and one of
whose files carried the invoice's number. That is the transmission which made the invoice
TRANSMITTED; later ones skip it. A file of a refused transmission is therefore never returned,
neither a WITHDRAWN one nor one left UPLOADED because its withdrawal failed.
Also null for a TRANSMITTED invoice whose file cannot be found, rather than a guessed one.
Invoice.splitFrom ● Invoice object
The invoice from which this invoice was split, if this invoice is a result of a correction split.
Invoice.splitInto ● [Invoice!]! non-null object
The invoices that were created by splitting this invoice.
Invoice.status ● InvoiceStatus! non-null enum
Current status of the invoice
Invoice.total ● Float! non-null scalar
The total sum of all invoice positions
Invoice.type ● InvoiceType! non-null enum
Variant of the invoice.
Returned By
appendInvoicePosition mutation ● invoice query ● invoices query
Member Of
Client object ● CorrectInvoicePayload object ● Invoice object ● InvoiceCollection object ● ReleaseInvoiceForSocialFactoringPayload object ● RemoveInvoiceFromSocialFactoringStackPayload object ● ResidentialPark object ● SocialFactoringStackFile object ● TransmitToSocialFactoringPayload object