Verträge & Compliance
Vereinbarungen, Verträge, Anhänge und Zahlungspläne — automatisieren Sie Vertragsabläufe.
Vereinbarung
Endpoints
| GET | /agreements | Ruft die Sammlung der Agreement-Ressourcen ab. |
| POST | /agreements | Erstellt eine Agreement-Ressource. |
| GET | /agreements/{id} | Ruft eine Agreement-Ressource ab. |
| PATCH | /agreements/{id} | Aktualisiert die Agreement-Ressource. |
| GET | /agreements/action-needed | Ruft die Sammlung der Agreement-Ressourcen ab. |
| GET | /agreements/without-file | Ruft die Sammlung der Agreement-Ressourcen ab. |
| GET | /agreements/without-file/active | Ruft die Sammlung der Agreement-Ressourcen ab. |
Schemafelder
| Feld | Typ | Beschreibung |
|---|---|---|
| employee | string,null (iri-reference) | |
| type | string | |
| variant | string | |
| amount | number | |
| minutesPerWeek | integer | |
| jobSize | integer | |
| amountType | string | |
| billingType | string | |
| positionName | stringnull | |
| position | string,null (iri-reference) | |
| dateFrom | string (date-time) | |
| dateTo | string,null (date-time) | |
| currency | string (iri-reference) | |
| cost | string,null (iri-reference) | |
| hoursPerWeek | integer |
Vertrag
Endpoints
| GET | /contracts | Ruft die Sammlung der Contract-Ressourcen ab. |
| POST | /contracts | Erstellt eine Contract-Ressource. |
| GET | /contracts/{id} | Ruft eine Contract-Ressource ab. |
| PATCH | /contracts/{id} | Aktualisiert die Contract-Ressource. |
| DELETE | /contracts/{id} | Entfernt die Contract-Ressource. |
| GET | /contracts/{id}/documents | Ruft eine Contract-Ressource ab. |
| POST | /contracts/{id}/invoice-from-virtual-line | Create an Invoice from a virtual (unmaterialized) row of a recurring contract's schedule preview. |
| POST | /contracts/{id}/send-for-signature | Send the contract's existing uploaded document to the signature middleware. |
| GET | /contracts/{id}/signature-status | Live per-signer signing status for a contract. |
Schemafelder
| Feld | Typ | Beschreibung |
|---|---|---|
| name | string | |
| direction | string | |
| counterparty | string,null (iri-reference) | |
| project | string,null (iri-reference) | |
| currency | string (iri-reference) | |
| totalAmount | stringnull | |
| dateFrom | string,null (date-time) | |
| dateTo | string,null (date-time) | |
| cyclic | boolean | Marks the contract as a recurring/ongoing relationship rather than a one-shot deal — e.g. a monthly retainer, ongoing security service, or indefinite tenancy. When true, dateTo is conventionally left null (open-ended) until the contract is actually terminated. The flag is advisory: the system doesn't auto-generate PaymentScheduleLines from a cadence; consumers (UI badges, calendar rendering) decide how to present cyclic contracts. |
| notes | stringnull | |
| description | stringnull | |
| signatureEnvelopeId | stringnull | |
| signatureStatus | stringnull | |
| signatureSentAt | string,null (date-time) | |
| signatureCompletedAt | string,null (date-time) |
Vertragsanhang
Endpoints
| GET | /contract-attachments | Ruft die Sammlung der ContractAttachment-Ressourcen ab. |
| POST | /contract-attachments | Erstellt eine ContractAttachment-Ressource. |
| GET | /contract-attachments/{id} | Ruft eine ContractAttachment-Ressource ab. |
| POST | /contract-attachments/{id}/mark-reviewed | Erstellt eine ContractAttachment-Ressource. |
| GET | /contract-attachments/{id}/preview | Preview contract attachment file |
| POST | /contract-attachments/{id}/reanalyze | Erstellt eine ContractAttachment-Ressource. |
| POST | /contract-attachments/create-base64 | Erstellt eine ContractAttachment-Ressource. |
Schemafelder
| Feld | Typ | Beschreibung |
|---|---|---|
| id | string | |
| contract | string (iri-reference) | |
| organizationId | string | Organization is mapped on a separate EntityManager (central DB), so a Doctrine ManyToOne would reference an entity the default EM cannot resolve and any query touching this row would 500 with a MappingException. Store the organization ID as a plain VARCHAR(8) column instead — the same shape the migration already defined and the pattern the rest of `src/Entity/` uses for cross-EM references. Resolve the actual Organization entity via OrganizationRepository (central EM) at the call site. |
| filename | string | |
| mimeType | string | |
| size | integer | |
| storagePath | string | |
| status | string | |
| kind | string | |
| analysisResult | arraynull | |
| analysisSummary | arraynull | |
| reviewedAt | string,null (date-time) | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| contractId | stringnull | Surfaces the linked contract's id in the response so the FE can navigate to /contracts/{id} after a successful upload. The ManyToOne `$contract` field itself stays unexposed (no Groups) to keep the contract-attachment:read payload narrow — exposing the full Contract entity here would leak unrelated fields and require an extra serialization group. |
| file | string |
Zahlungsplanposition
Endpoints
| GET | /contracts/{contractId}/payment-schedule-lines | Ruft die Sammlung der PaymentScheduleLine-Ressourcen ab. |
| GET | /payment-schedule-lines | Ruft die Sammlung der PaymentScheduleLine-Ressourcen ab. |
| POST | /payment-schedule-lines | Erstellt eine PaymentScheduleLine-Ressource. |
| GET | /payment-schedule-lines/{id} | Ruft eine PaymentScheduleLine-Ressource ab. |
| PATCH | /payment-schedule-lines/{id} | Aktualisiert die PaymentScheduleLine-Ressource. |
| DELETE | /payment-schedule-lines/{id} | Entfernt die PaymentScheduleLine-Ressource. |
| POST | /payment-schedule-lines/{id}/invoice | Create an Invoice from this contract schedule line. |
Schemafelder
| Feld | Typ | Beschreibung |
|---|---|---|
| id | string | |
| date | string (date-time) | |
| amount | string | |
| note | stringnull | |
| source | string | |
| invoice | mixed | Inverse side of Invoice.paymentScheduleLine. Read-only — set when the "Create invoice" button issues an Invoice from this line; the unique index on the owning side guarantees at most one Invoice per line. |