Skip to main content

Configuring Content Sources on reselling rules

Product Management avatar
Written by Product Management
Updated this week

⚠️ Testing flag required - Feature will not work without Nezasa activation

Overview

The Content Sources on Reselling Rules feature enables sellers to control which content sources are available to resellers in Peer-to-Peer (P2P) reselling scenarios.

This ensures that resellers can only access content sources that the seller has properly configured and authorised, preventing configuration mismatches and operational issues.

Business Problem Solved

In P2P reselling, configuration mismatches occur when:

  • Resellers have content sources configured that sellers only have because they're on the marketplace

  • Resellers use content sources that sellers haven't configured at all

  • This creates impossible combinations between reseller and seller configurations

Solution Benefits

  • Broader P2P Ecosystem: More customers can participate without complex configurations

  • Consistent Pricing: Maintains seller's pricing strategy and accurate supplier visibility

  • Operational Efficiency: Reduces configuration errors and streamlines the reselling process

  • Clear Accountability: Ensures proper ownership and supplier visibility

Architecture Overview

P2P Reselling Structure

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    P2P Sharing    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   SELLER (Module Owner) β”‚ ────────────────► β”‚ RESELLER (Itinerary Owner) β”‚
β”‚                         β”‚                   β”‚                         β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚                   β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚     Template        β”‚ β”‚                   β”‚ β”‚     Template        β”‚ β”‚
β”‚ β”‚   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚ β”‚                   β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
β”‚ β”‚   β”‚   Module    β”‚   β”‚ β”‚                   β”‚ β”‚ β”‚  Shared Module  β”‚ β”‚ β”‚
β”‚ β”‚   β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚   β”‚ β”‚                   β”‚ β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚
β”‚ β”‚   β”‚ β”‚Hotels   β”‚ β”‚   β”‚ β”‚    ──────────────►│ β”‚ β”‚ β”‚Hotels       β”‚ β”‚ β”‚ β”‚
β”‚ β”‚   β”‚ β”‚Transfer β”‚ β”‚   β”‚ β”‚                   β”‚ β”‚ β”‚ β”‚Transfers    β”‚ β”‚ β”‚ β”‚
β”‚ β”‚   β”‚ β”‚Activity β”‚ β”‚   β”‚ β”‚                   β”‚ β”‚ β”‚ β”‚Activities   β”‚ β”‚ β”‚ β”‚
β”‚ β”‚   β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚   β”‚ β”‚                   β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚
β”‚ β”‚   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚ β”‚                   β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
β”‚ β”‚                     β”‚ β”‚                   β”‚ β”‚                     β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚                   β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
β”‚           β”‚             β”‚                   β”‚ β”‚ β”‚  Own Modules    β”‚ β”‚ β”‚
β”‚          DC             β”‚                   β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
β”‚           β”‚             β”‚                   β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”‚                   β”‚           β”‚             β”‚
β”‚      β”‚B2Bβ”‚B2C β”‚        β”‚                   β”‚          DC             β”‚
β”‚      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β”‚                   β”‚           β”‚             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                   β”‚      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”‚
                                              β”‚      β”‚B2Bβ”‚B2C β”‚        β”‚
                                              β”‚      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β”‚
                                              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Terminology

  • Seller (Module Owner): The supplier of modules/products to resellers

  • Reseller (Itinerary Owner): Uses seller's modules in their own itineraries

  • Content Sources: External suppliers (e.g., Hotelbeds, TravelgateX, Musement)

How It Works

Support video of E2E process

Private Beta - Setup details summary

  • Step 1 - Seller/Module Owner decides on the reselling rule.

  • Step 2 - Module Owner configures the content source/s for accommodation, activities and transfers and rental cards in STG and PROD.

  • Step 3 - Module Owner informs Nezasa of the update.

  • Step 4 - Nezasa enables testing flag snd saves the content source configuration on the reselling rule.

  • Step 5 - Nezasa informs both seller and reseller the beta is now enabled and ready for testing. Ensures reseller knows what the seller has configured for test purposes.

  • Step 6 - Reseller configures the markup override option via another separate new testing flag in general setting. Recommended when using seller's content sources.

  • Step 7 - Reseller/Itinerary Owner instantiates an itinerary with modules from the seller and checks to make sure the offers are coming from the content source configured by the seller and no one else. Checks customer care to ensure correct markups applied and correct supplier shows on components in Customer Care.

Content Source Priority Logic

  1. Seller Configuration: Seller configures content sources in reselling rules

  2. Override Mechanism: When reseller uses shared modules, seller's content sources override reseller's DC configuration

  3. Supplier Attribution: Itineraries show seller as supplier, not original content source

  4. Markup Application: Special markup rules apply for P2P scenarios

Key Changes Implemented

  1. Content sources become part of supply reselling rules - stored per product type

  2. Seller control - Module owners control exactly which content sources are used

  3. Override behavior - Seller's content sources used instead of reseller's DC config

  4. Markup simplification - Component source ignored for tour operator markup calculations

Configuration Steps

Step 1: Access Reselling Rules - Module Owner

  1. Navigate to Settings in your admin panel

  2. Go to RESELLING section in the left sidebar

  3. Click on Rules

  4. Locate your connected supply rule or create a new one

Navigation Path: Settings β†’ Reselling β†’ Rules

ebd468e2-504d-46b1-93c4-53f86da430a5.png

Step 2: Configure Connected Supply Rule - Module Owner

  1. Partner: Select or enter the partner name (e.g., "World of Travel")

  2. Rule Name: Enter descriptive name (e.g., "connected supply")

  3. Supply Source: Select "Connected Supply" from dropdown

  4. Distribution Channels: Configure as needed (leave empty to cover all DCs)

  5. Valid From/To: Set date range for rule validity

Step 3: Configure Content Sources by Product Type - Module Owner

The interface provides tabs for each product type:

c1f4633d-24f3-4451-862b-dded168bdabe.png

🏨 Accommodations Tab

  1. Click on Accommodations tab

  2. In Content sources field, select your preferred accommodation suppliers

    • Example: Select "TravelgateX"

  3. Choose list type:

    • Deny-List: All products except the following ones

    • Allow-List: Only applicable for selected products

🎯 Activities Tab

  1. Click on Activities tab

  2. Select content source for activities

    • Example: Select "Musement"

  3. Configure allow/deny list as needed

πŸš— Transfers Tab

  1. Click on Transfers tab

  2. Select transfer content source

    • Example: Select "Holidaytaxis"

  3. Configure list preferences

Step 4: Nezasa to enable testing flag. - Nezasa

  • [ ] Access Level: Administrator access to settings - General settings not DC.

  • [ ] Feature Flag: Nezasa testing flag must be enabled (contact support for this)

  • [ ] P2P Setup: Supply relationship established between seller and reseller

  • [ ] Content Sources: Seller must have content sources properly configured

008100e9-fcce-44d9-ab34-55d1224208a0.png

Step 5: Validation and Save - Nezasa or Module Owner

  1. Validation Check: Ensure each product type has at least one content source assigned

    • ❌ Error: "Must assign at least one content source for each product type"

    • βœ… Success: All tabs have content sources configured

  2. Save Configuration: Click SAVE button at bottom right

⚠️ Validation enforcement - All product types must have at least one content source assigned (except rental cards where reselling is not supported)

When the testing flag is enabled and a module is resold to another company, the content sources picked by the reseller will be limited to those configured by the seller if the reseller instantiates an itinerary with that module.

Reseller Perspective - Itinerary Owner/Reseller

Important to state that in the resellers DC content source settings - they can of course have a completely different configuration of their content sources.

1be58b33-446b-4919-972a-8ce407173155.png

What our aim is here is to restrict the reseller only when in the relevant reselling mode with a P2P module owner.

Step 5 (relevant only to the reseller): Configure P2P Markup Settings

Navigate to Distribution General Settings to configure markup behavior:

  1. Go to Settings β†’ Distribution Channels β†’ General Settings

  2. Find P2P Markup Settings section

008100e9-fcce-44d9-ab34-55d1224208a0.png
  1. Configure the markup override option:

    Option A: Enable General Markup Only

    • βœ… Checked: Apply general markup (e.g., 5%) only

    • Ignores seller's content source-specific markups

    • Recommended when using seller's content sources

    Option B: Use Specific Content Source Markups

    • ❌ Unchecked: Apply specific content source markups (e.g., 10% for Hotelbeds)

    • Uses detailed markup configurations

    • May cause conflicts with seller's configurations

Configuration Examples

Example 1: Fun Travel (Seller) β†’ Ruby Tours (Reseller)

Seller Configuration (Fun Travel):

Connected Supply Rule: "Ruby Tours Partnership"
β”œβ”€β”€ Accommodations: TravelgateX
β”œβ”€β”€ Activities: Musement  
β”œβ”€β”€ Transfers: Holidaytaxis
└── Rental Cars: SunnyCars

Result: When Ruby Tours uses Fun Travel's modules:

  • TravelgateX accommodation offers appear even if Ruby Tours doesn't have TravelgateX

  • Supplier shown as "Fun Travel" not "TravelgateX"

  • Ruby Tours' general markup (5%) applied instead of specific TravelgateX markup (10%)

Example 2: Multi-Supplier Setup

Seller Configuration:

Rule: "Premium Partners"
β”œβ”€β”€ Accommodations: [TravelgateX, Hotelbeds, Booking.com]
β”œβ”€β”€ Activities: [Musement, Viator]
β”œβ”€β”€ Transfers: [Holidaytaxis, Jayride]
└── Rental Cars: [SunnyCars, Europcar]

Deny-List Configuration: Exclude specific properties/products while allowing most content

Testing and Validation

Testing Checklist

βœ… Feature Flag Validation

  • [ ] Testing flag enabled by Nezasa support

  • [ ] Content source fields visible in UI

  • [ ] Validation messages appear when saving

βœ… Content Source Configuration

  • [ ] Each product type has at least one content source

  • [ ] Save operation completes successfully

  • [ ] No validation errors displayed

βœ… P2P Functionality

  • [ ] Reseller can access seller's modules

  • [ ] Seller's content sources override reseller's configuration

  • [ ] Correct supplier attribution in itineraries

  • [ ] Appropriate markup application

βœ… Content Source Override

  • [ ] Seller's content sources take priority

  • [ ] Reseller's marketplace connections ignored

  • [ ] Only seller's inventory and contracts used

βœ… Markup Calculation

  • [ ] Content sources ignored in markup calculation

  • [ ] General markup applied when setting enabled

  • [ ] Specific markups used when setting disabled

Troubleshooting

Common Issues and Solutions

Problem: Content Sources Field Not Visible

Symptoms:

  • Cannot see content sources configuration options

  • Settings appear but don't function

Solutions:

  1. Check Feature Flag: Contact Nezasa support to enable testing flag

  2. Clear Browser Cache: Refresh page after flag activation

  3. Verify Permissions: Ensure admin access to reselling settings

Problem: "Must assign content source for each product type" Error

Symptoms:

  • Error message when trying to save

  • Cannot enable connected supply rule

Solutions:

  1. Check All Tabs: Verify each product type (Accommodations, Activities, Transfers) has content source

  2. Minimum Requirement: Assign at least one content source per product type

  3. Validation Order: Complete all tabs before saving

Problem: Content Sources Not Overriding on Reseller Side

Symptoms:

  • Reseller still sees their own content sources

  • Seller's content sources not appearing

Solutions:

  1. Verify Rule Status: Ensure connected supply rule is active and within date range

  2. Check Module Association: Confirm module is properly shared via P2P

  3. Clear Cache: Both seller and reseller should clear application cache

  4. Testing Flag: Verify flag is enabled system-wide

Problem: Incorrect Supplier Attribution

Symptoms:

  • Original content source shown instead of seller

  • Supplier information incorrect in itineraries

Solutions:

  1. Rule Configuration: Verify connected supply rule is properly configured

  2. Module Sharing: Ensure module is shared through proper P2P mechanism

  3. Content Source Mapping: Check content source assignments in rule

Problem: Markup Conflicts

Symptoms:

  • Unexpected markup percentages applied

  • Pricing inconsistencies

Solutions:

  1. Check P2P Markup Setting: Configure general vs. specific markup preference

  2. Review Markup Hierarchy: Understand general vs. content-source-specific markups

  3. Test Both Settings: Try both enabled/disabled states for P2P markup setting

Frequently Asked Questions

Where can the new "content sources" field be found in the settings?

The new "content sources" field can be found in the settings under "reselling rules" and then within the "connected supply rule."

What happens if a product type is left blank in the content sources settings when the testing flag is enabled?

If a product type is left blank in the content sources settings when the testing flag is enabled, an error message will be displayed, indicating that you must assign at least one content source for each product type.

What needs to be enabled on the Nezasa side for the content sources feature to work?

For the content sources feature to work, a "testing flag" needs to be enabled on the Nezasa side. Contact Nezasa support to activate this flag.

When a module is resold, what supplier is displayed in the itinerary?

When a module is resold, the supplier displayed in the itinerary will be the seller of the module, not the original content source.

What is the purpose of the new setting for markups in a P2P context, found under distribution general settings?

The purpose of the new setting for markups in a P2P context, found under distribution general settings, is to allow resellers to ignore markups that are specific to a content source when that content source originates from the seller's configuration rather than their own. This enables the reseller to apply only their general markups in such cases, rather than the seller's specific content source markups.

What is the consequence of not having a content source assigned for each product type when the testing flag is enabled?

If the testing flag is enabled and you do not have a content source assigned for each product type, an error message will be displayed, and you will not be able to save the settings or enable the content rule.

Can I test this feature without the Nezasa testing flag?

No, the feature will not function without the testing flag being enabled by Nezasa support. The interface may show the fields, but validation and functionality will not work.

What happens to my existing P2P relationships when I enable this feature?

Existing P2P relationships will continue to work, but you'll need to configure content sources for each connected supply rule to take advantage of the new functionality and avoid validation errors.

Can I use different content sources for different resellers?

Yes, you can create separate connected supply rules for different resellers, each with their own content source configurations.

How do I know if the content source override is working correctly?

Test by having the reseller create an itinerary with your shared module. The content sources that appear should match what you configured in the reselling rule, not what the reseller has configured in their DC.

Support and Contact

Technical Support

  • Feature Flag Activation: Contact Nezasa support team

  • Configuration Issues: Check troubleshooting section or contact support

  • Integration Problems: Verify P2P setup and rule configuration

Best Practices

  • Test Thoroughly: Use both seller and reseller accounts to validate functionality

  • Document Configurations: Keep record of content source assignments per rule

  • Monitor Performance: Check that content sources are responding appropriately

  • Regular Reviews: Periodically review and update content source configurations

Technical Details

System Behavior & Logic

Content Source Resolution Priority

When a reseller uses a shared module, the system follows this logic:

  1. Check if in reselling mode - Is the module owned by a different company?

  2. Verify feature flag - Is the supplier's testing flag enabled?

  3. Override mechanism - Use supplier's configured content sources instead of reseller's

  4. Fallback handling - If supplier sources unavailable, system returns meaningful error

Data Storage & Validation

  • Content sources stored per product type on each connected supply reselling rule

  • Validation enforced only when testing flag is enabled

  • Mandatory assignment - Each active product type must have at least one content source

  • Inventory special case - Inventory rules automatically get NEZASA content source

Markup Calculation Changes

  • Tour Operator Base Markups - Supplier-specific markups ignored, general markups applied

  • Custom Markup Categories - Content source rules ignored when in reselling mode

  • Pricing Consistency - Reseller sees predictable markup application regardless of supplier's source

System Requirements & Constraints

Technical Requirements

  • Feature Flag Dependency - Nezasa testing flag must be enabled at Tour Operator level

  • Content Source Availability - Supplier's content sources must be properly configured and responding

  • P2P Relationship - Connected supply relationship must exist between supplier and reseller

  • Module Sharing - Modules must be properly shared through P2P mechanism

Business Logic Constraints

  • Marketplace Exclusion - Supplier's marketplace connections completely ignored for reselling

  • Inventory Priority - Only supplier's own inventory and private contracts can be resold

  • No Dynamic Switching - Cannot fallback to reseller's sources if supplier's are unavailable

  • Attribution Consistency - Supplier always shown as component source, never original provider

Error Scenarios & Handling

Configuration Errors

  • Missing Content Sources - "Must assign at least one content source for each product type"

Migration & Deployment

WIP

Existing Customer Impact

  • Backward Compatibility - Existing P2P relationships continue working during migration

  • Phased Rollout - Testing flag allows gradual enablement per tour operator

  • Data Migration Required - All existing reselling rules must be updated with content sources

  • Customer Communication - Suppliers need to configure content sources before flag activation

Production Readiness

  • Feature Flag Removal - Testing flag will be removed once all customers migrated

  • Data Type Evolution - Content sources will change from optional to required

  • Legacy Cleanup - Fake credentials and workarounds will be removed

  • Monitoring Requirements - New error types and performance metrics to track

Did this answer your question?