Skip to content

Default and per-asset settings

Most syndicates own one asset. Multi-asset syndicates are the minority. Syndik8 is built around that shape: when a syndicate has a single asset, billing settings live in one place — on the syndicate. There is no separate asset-level billing screen. The fields on the Billing & Rates screen are just called Billing, Minimum Usage, Event Fees, and Usage Capture and Billing.

When a syndicate adds a second asset, the UI changes. Those same syndicate-level settings stay where they were, but the headings are relabelled with a “Default” prefix — Default Billing, Default Minimum Usage, Default Event Fees, Default Usage Capture and Billing. At the same time, a new per-asset billing screen appears for every asset. On each asset’s screen you can either leave the value empty (in which case the syndicate default applies) or enter a value that overrides the default for that asset only.

The result: single-asset syndicates never see the word “default” and never have to navigate between syndicate and asset settings. Multi-asset syndicates get a single place to set shared defaults and a simple override mechanism for anything that differs.

  • Owner and admin — view and change both the syndicate defaults and each asset’s per-asset overrides.
  • Members — see the rates in effect for any booking they create. Cannot change the settings.
  • Treasurers (admins) — same as admin.

The settings live in two places once a syndicate has more than one asset:

  • Syndicate defaults: Syndicate → Settings → Billing & Rates. Route: /syndicates/:syndicateId/settings/billing.
  • Per-asset override: Assets → [asset] → Billing. Route: /syndicates/:syndicateId/assets/:assetId/billing.

On a single-asset syndicate, only the first one exists.

Every field in this table follows the default-then-override cascade. The column labels here are the multi-asset versions; on a single-asset syndicate the same fields appear without the “Default” prefix.

Setting (multi-asset label)Stored key
Default usage rateusage_rate
Default shortfall rateshortfall_rate
Default weekday minimum usageweekday_min_usage
Default weekend minimum usageweekend_min_usage
Default event fees (landing, touch-and-go, etc.)event_fees
Default usage capture modetime_capture_mode
Default billing basisbilling_basis
Default engine meter labelengine_meter_label
Default clock time labelclock_time_label
Default taxi minutesdefault_taxi_minutes
Currencycurrency
Max Advance Booking Daysmax_advance_booking_days

All of the above live in the syndicate’s default_billing map. Per-asset overrides are rows in the asset_billing_configs table.

Billing scheme definitions (name, dues amount, rate modifier type and value) are always syndicate-wide. See Payments & Schemes.

Billing scheme rates — the numeric rate that applies when an asset is booked by a member on that scheme — cascade per asset:

  • Single-asset syndicate: the Billing & Rates screen shows a Per-Scheme Rates table directly. You edit the single asset’s scheme rates there.
  • Multi-asset syndicate: the Per-Scheme Rates section is replaced with a note that tells you to configure rates on each asset individually. Each asset carries its own asset_scheme_rate_overrides rows.

These syndicate settings apply uniformly to every asset in the syndicate. They cannot be overridden per asset:

  • Require booking approval (requires_booking_approval)
  • Minimum booking duration (min_booking_duration_minutes)
  • Require admin confirmation for squawks (require_squawk_confirmation)
  • Show member names on bookings (show_member_names_on_bookings)
  • Usage log visibility (usage_log_visibility)
  • Share usage photos with all members (share_usage_photos)
  • Single-asset syndicate → no “Default” label, no asset-level billing screen. The complexity is hidden entirely.
  • The instant you add a second asset, the UI changes. Section headings on Billing & Rates gain the “Default” prefix. Each asset gets its own billing screen with the same fields, where an empty value means “fall back to the syndicate default”.
  • If you later delete the second asset, the syndicate returns to single-asset mode. The “Default” prefix disappears, and the asset-level screen goes away. The stored values on the remaining asset are preserved but aren’t shown anywhere distinct — they merge back into the syndicate view.
  • Precedence for any usage calculation (where the fields cascade): asset_billing_configs.<field>syndicates.settings['default_billing'].<field> → system default. The first non-null value in that chain wins.
  • The snapshot rule still applies. When a usage log is saved, the resolved rates at that moment are snapshotted onto the log. Later changes to the default or the override do not back-date a booking’s charge. See Finalisation rules.
  • Currency is a cascading field but in practice is always syndicate-level. Currency is set once on Payments & Schemes and applies to every asset’s billing.