What was built
Advertising sales do not fit a standard CRM. A deal is not one amount, it is a set of positions booked into specific issues of specific titles, each consuming limited physical or online capacity on a fixed publication date. This project models that in HubSpot and runs the whole order process on it, replacing MediaSuite and the spreadsheets around it.
| Area | Description |
|---|---|
| Object model | Custom objects for Medien, Erscheinungstermine, Kapazität and the ad positions on a deal, with the associations that let a booking reserve capacity and a cancellation release it |
| Capacity generator | A web UI that turns a new Erscheinungstermin into its capacity records and all four associations, instead of a manual cascade |
| Coded quote templates | Five templates on a custom HubSpot child theme covering Angebot, Auftrag and the credit-note variants, driven by the kv_aktion field on the deal |
| Storno & Verschiebung | Cancellations and postponements of already-invoiced positions become separate Gutschrift deals rather than edits to history, with the slot mirror kept consistent |
| Invoicing | Order data pushed onward into BMD, so the accounting system receives what sales agreed |
| MediaSuite migration | Objects, products, publication dates and capacities imported by script, with encoding remediation, dry runs, rollback records, duplicate merging and a delta import at cutover |
| Data repair | Backfill scripts fixed as real data surfaced problems: owner mapping, discount fields, Format and Land mapping, status sync, deals arriving without a customer |
| MobileForce | Objekt classification pushed from HubSpot into the MobileForce inventory so both sides name the same thing |
The migration ran in parallel with live selling, so the sequence mattered more than the speed: import, validate, reconcile against the source, then cut over.
Tech stack
| Technology | Role |
|---|---|
| HubSpot | Custom objects, coded quote templates, workflows, deals |
| Make.com | Integrations around the HubSpot core |
| BMD | The accounting system receiving order and invoice data |
| Shopware | Article lookups for the shop side |
Project stats: 194 tasks, ~115h, running since April 2026.
Recently touched
- 2026-09-05 BMD Products & PriCat sync (BMD→HubSpot) Open
- 2026-09-05 Order 2.0 outbound — build + push (kv_aktion=abrechnen) In Progress
- 2026-09-03 BMD SharePoint exchange + custom-code file helper (logging) Open
- 2026-09-03 Abo recurring invoicing (per billing cycle, next-billing-date driven) Open
- 2026-09-03 Abo Versand pipeline (Beleg/Ausgabe) + delivery automation Open
Other projects in this case study
Inxmail Migration
Moving the publisher's newsletter estate off Inxmail into HubSpot: around 220,000 contacts across 22 lists, for two companies, without losing the consent record that makes sending them legal in the…
Read case studyWhat we built
- Field mapping
- Lists to subscriptions
- Suppression
- Tags & sources
- GDPR record
- Preference pages
Newsletter
The editorial side of the publisher's newsletter operation in HubSpot, running alongside the Inxmail migration: the specs for what each newsletter contains, and the tooling the editors need to…
Read case studyWhat we built
- Newsletter specs
- Shopware companion
- Unsubscribe footer
- Marketing permissions
HubSpot Onboarding
The first phase with Kommunalverlag: getting the sales side of an Austrian publishing house onto HubSpot and getting the team to actually use it, before the far larger subscription and ad-booking…
Read case studyWhat we built
- Analysis
- Sales pipeline
- Products & quotes
- Contact import
- First automation
- User onboarding