Skip to main content

Customers

Customers represent students or entities that receive invoices in the system. Each customer record contains personal identification, contact information, and critical accounting identifiers used for financial system integration. Customers are linked to studies (academic programs) and have associated addresses for billing and correspondence purposes.

Customer Properties

PropertyTypeDescription
idGUIDUnique identifier
firstNamestringFirst name
lastNamestringLast name
matriculationIdstringMatriculation number
cmsStudentIdstringExternal system ID
emailstringEmail address
debtorNumberstringDebtor number
creditorNumberstringCreditor number
receivableAccountIdGUIDReceivable account
prepaymentAccountIdGUIDPrepayment account

Address Properties

Customers can have multiple addresses with different purposes. Each address has a type that indicates its use, such as billing, home, or correspondence. The system allows marking one address as the default for each customer.

PropertyTypeDescription
idGUIDUnique identifier
customerIdGUIDCustomer reference
addressTypestringAddress type
streetstringStreet address
citystringCity
postalCodestringPostal code
countrystringCountry
isDefaultbooleanDefault address flag

API Endpoints

GET /customers
GET /customers/{id}

Response Example

{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"firstName": "John",
"lastName": "Doe",
"matriculationId": "MAT-2024-001",
"cmsStudentId": "CMS-123456",
"email": "[email protected]",
"debtorNumber": "DEB-12345",
"creditorNumber": null,
"receivableAccountId": "e5f6a7b8-c9d0-1234-ef12-345678901234",
"prepaymentAccountId": "f6a7b8c9-d0e1-2345-f123-456789012345",
"addresses": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"customerId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"addressType": "Billing",
"street": "123 Main Street",
"city": "Springfield",
"postalCode": "12345",
"country": "USA",
"isDefault": true
},
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678902",
"customerId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"addressType": "Home",
"street": "456 Oak Avenue",
"city": "Springfield",
"postalCode": "12346",
"country": "USA",
"isDefault": false
}
]
}

Debtor Numbers

The debtor number is a critical field for accounting system integration and financial reconciliation. This identifier is used by external financial systems to track customer accounts receivable and match payments to outstanding invoices. Debtor numbers are typically synchronized from the campus management system and must be unique across all customers. When integrating with ERP systems or generating financial reports, the debtor number serves as the primary key for linking billing data to the broader financial system.

Address Types

The address type field categorizes addresses according to their intended use. Billing addresses are used for invoice delivery and payment correspondence. Home addresses represent the customer's primary residence. Correspondence addresses are used for general communications that are not specifically related to billing. The system allows customers to have multiple addresses of different types, providing flexibility for various communication and billing scenarios while maintaining organized contact information.

Customer Snapshots in Invoices

When an invoice is created, the system captures a snapshot of the customer's current information and stores it directly on the invoice record. This includes the customer's full name, email address, and billing address at the time of invoice creation. This snapshot approach ensures that invoices maintain accurate historical records even if the customer's information changes later. For example, if a customer moves to a new address after an invoice is issued, the invoice will still show the address that was current when the invoice was created, providing an accurate record for both the customer and the institution.