# Xentral

> How Xentral hands products and deliveries to BatteryPass through its REST API and webhooks.

> [!NOTE]
> This page describes an integration pattern. BatteryPass ships no connector for Xentral and has no partnership with
> Xentral; nothing here is a vendor approval.

Xentral's REST API signs in with personal access tokens. Create a technical user for the integration, so the token does
not stop working when a colleague leaves, and keep it in a vault.

Webhooks can be managed through the API and tell the middleware about new products or deliveries. Signing of the
deliveries was not checked, so the middleware checks sender and content and reads the record through the API before it
acts. Serial numbers of finished production go into a file with the `generic-csv` preset and are staged as in
[units from production](https://passport.kabin.sh/docs/en/integrations/workflows/units-from-production).

## Interfaces and how they were checked

- **Vendor:** Xentral ERP Software
- **Cloud:** Xentral (REST API)

Sign-in with personal access tokens; create a technical user for the integration.

An integration pattern, not a connector: BatteryPass ships no ERP connector and holds no vendor certification.

| Interface                                                                                          | Protocol | Sign-in | Events                | Objects                                                            | Checked                                         |
| -------------------------------------------------------------------------------------------------- | -------- | ------- | --------------------- | ------------------------------------------------------------------ | ----------------------------------------------- |
| [`REST API`](https://developer.xentral.com/reference/authentication) (Products, stock, deliveries) | REST     | Token   | none                  | Product/material master, Batch/serial number, Delivery/goods issue | checked in the vendor documentation, 24/10/2026 |
| [`Webhooks`](https://developer.xentral.com/reference/webhooks) (Manage and receive webhooks)       | REST     | Token   | Webhooks (not signed) | Product/material master, Delivery/goods issue                      | checked in the vendor documentation, 24/10/2026 |

**Notes**

- `Webhooks`: Signing of deliveries not checked; the middleware checks sender and content before it acts.

**Import presets: Generic CSV file** (`generic-csv`): For any ERP and for files a middleware writes itself: GTIN, serial number, manufacturing date, facility (name or GLN), model version and battery status, with German and English column names.

| Column in the export                                          | Field in BatteryPass                                      |
| ------------------------------------------------------------- | --------------------------------------------------------- |
| `GTIN` (also EAN, GTIN-13, GTIN-14)                           | GTIN (GS1) `identification.gtin`                          |
| `Serial number` (also Seriennummer, serial_number)            | Serial number `identification.serial_number`              |
| `Manufacturing date` (also Herstelldatum, manufacturing_date) | Manufacturing date `identification.manufacturing_date`    |
| `Facility` (also Produktionsstätte, Facility GLN, Werk-GLN)   | Place of manufacture `identification.manufacturing_place` |
| `Model version` (also Modellversion, model_version)           | Model version `model_version`                             |
| `Battery status` (also Batteriestatus, battery_status)        | Battery status `identification.battery_status`            |

## Workflows

- [Units from production](https://passport.kabin.sh/docs/en/integrations/workflows/units-from-production.md): Serial numbers from the production confirmation or goods receipt are staged as an import; members review, commit and approve before any passport appears. Key scopes: import
- [Passport links back into the ERP](https://passport.kabin.sh/docs/en/integrations/workflows/passport-links-to-erp.md): The middleware follows the change feed and writes the GS1 Digital Link and the passport status to the serial number record in the ERP, so labels and delivery papers carry it. Key scopes: read
- [Returns and repairs as lifecycle events](https://passport.kabin.sh/docs/en/integrations/workflows/returns-and-repairs.md): Completed repairs, inspections and component replacements from service or return orders appear as events in the unit's history. Key scopes: read, condition
- [Product change leads to a new model version](https://passport.kabin.sh/docs/en/integrations/workflows/product-change.md): A change to the product master in the ERP triggers a notification; a member creates a new model version in BatteryPass. Declared data is never written automatically. Key scopes: read
