Step 15 Channels

Purpose (Product)

  • Allow landlords to choose which booking channels (OTAs) they want to distribute their property to, enabling multi-channel distribution and maximizing booking potential.

  • Channels include Hububb (free), Airbnb (free), Booking.com (£4/month), Vrbo ($10/month), Expedia ($25/month), and Agoda ($25/month).

  • Some channels are included in management tiers, while others require additional monthly fees. Channels marked as "Coming Soon" are disabled.

UX Flow (What the user sees)

  • A vertical list of channel cards, each showing: channel logo, name, pricing, and toggle switch.

  • Hububb and Airbnb are pre-selected by default. Channels included in the selected management tier show "Included" instead of pricing.

  • Toggle switches allow enabling/disabling channels, except for channels included in the management tier (locked) or coming soon (disabled).

  • Validation requires at least one channel selection before proceeding.

System Flow (How it works)


APIs Called

GET /api/management-tiers

  • Method: GET

  • Response: Array of management tier objects with services

  • Used to determine included channels and pricing

PATCH /api/properties/{id}

  • Method: PATCH

  • Payload: { connectionRequests: [{ type: string, status: "PENDING" }] }

  • Response: Updated property object

  • Idempotent: Yes

  • Retries: Standard axios retry logic


QA Checklist

Basic functionality:

Channel states:

Management tier integration:

Data persistence:

Error handling:

UX/UI:


Open Questions / TODOs

chevron-rightBusiness logichashtag
  • Should we show estimated monthly costs based on selected channels?

  • How do we handle channel-specific requirements (e.g., minimum photos, specific amenities)?

  • Should we implement channel performance analytics?

chevron-rightUX improvementshashtag
  • Should we show channel-specific setup requirements?

  • Would channel recommendations based on property type/location be valuable?

  • Should we implement channel comparison features?

chevron-rightIntegration considerationshashtag
  • How do we handle channel-specific validation requirements?

  • Should we implement channel-specific onboarding flows?

  • How do we handle channel connection failures during setup?

Last updated