CustomerController
Provides delta-synchronisation for customer profiles, exposes loyalty discount structures and supports inbound customer creation from POS channels as well as Visma ERP integrations.
| Endpoint | Description | Request | Response |
|---|---|---|---|
GET /api/Customer/GetCustomers |
Returns customers created or updated inside the requested time window. | Query: Dates with LastExecutedDate, CurrentDate and optional paging metadata. |
List of Customer entities without related custom fields. |
GET /api/Customer/GetAllCustomers |
Provides the full customer master including custom fields for first-time synchronisation. | None. | List of Customer objects with their Customer_CustomField values populated. |
GET /api/Customer/GetCustomerDiscount |
Returns discount cards, discount groups and customer discount mappings updated within the specified timeframe. | Query: Dates delta window. |
CustomerDiscountData with CustomerCards, DiscountGroups and CustomerDiscountGroups. |
GET /api/Customer/GetCompany |
Exposes the tenant company metadata resolved for the authenticated user. | None. | Company entity from the master database. |
GET /api/Customer/GenerateDBBackup |
Triggers a SQL backup of the tenant database, downloads it locally on the server and streams the .bak file back to the caller. |
None. | Binary stream (application/octet-stream) containing the database backup. |
POST /api/Customer/PostCustomer |
Creates or updates a customer record submitted from the POSSUM POS application. | Body: single Customer with contact details and balance metadata. |
HTTP 200 on success; HTTP 417 when persistence fails. |
POST /api/Customer/PostVismaCustomer |
Bulk upserts customers received from Visma, matching on the ExternalId when available. |
Body: array of Customer objects from the Visma export. |
HTTP 200 once all customers are synchronised; HTTP 417 if an exception is thrown. |
SubscriptionController
Lets integrations verify whether a tenant's subscription is active before allowing POS login or data sync.
| Endpoint | Description | Request | Response |
|---|---|---|---|
GET /api/Subscription/GetSubscription |
Checks the subscription table for the supplied company GUID and confirms that the status is active. |
Query: companyGuid string (GUID). |
true when the subscription exists and is active, otherwise false. |
DepositHistoryController
Synchronises deposit ledger movements between back office and tills, enabling accurate gift card and deposit balances.
| Endpoint | Description | Request | Response |
|---|---|---|---|
GET /api/DepositHistory/GetDepositHistory |
Fetches deposit transactions created during the provided window with paging support. | Query: Dates including PageNo and PageSize. |
List of DepositHistory entries ordered by creation date. |
POST /api/DepositHistory/PostDepositHistory |
Creates or updates a deposit transaction captured offline by a POS terminal. | Body: DepositHistory object. |
HTTP 200 when persisted; HTTP 417 for validation or persistence errors. |