Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

✅ eLearning feature request : Revoke course access when subscription is closed or canceled

Subscribe

Get notified when there's activity on this post

This question has been flagged
subscriptionupgraderequesteLearningfeature request
1497 Views
Avatar
Nicolas LAURENT

I want to sell access to my online course by subscription, and I want the student to have access to the course only when their subscription is active. I want the access to be revoked if the subscription is closed or canceled.

This seems to be a pretty basic functionnality regarding an eLearning platform, but I've looked up for tutorials, and it's not a native Odoo functionnality. I've asked Deepseek how to manage that, and it seems that I need Odoo Studio to customize (details below).

How to submit this functionnality to be included in a future update?

______________________________

In Odoo, by default, when a subscription ends, the client’s access to the course linked to that subscription is not automatically revoked. Odoo does not natively handle the automatic revocation of course access based on subscription status. However, you can configure this behavior using custom development or automated actions. Here’s a detailed explanation of what happens by default and how you can manage course access when a subscription ends:

1. Default Behavior in Odoo

  • Subscription Ends: When a subscription ends, Odoo marks it as expired or canceled, but it does not automatically revoke access to the course.
  • Course Access: The client retains access to the course unless you manually revoke it or implement a custom solution.

2. Why This Happens

  • Odoo’s Subscription and eLearning modules are not tightly integrated by default.
  • There is no native functionality to automatically link subscription status to course access.

3. How to Automatically Revoke Course Access When a Subscription Ends

To automatically revoke course access when a subscription ends, you can use one of the following approaches:

a. Automated Actions

  1. Create an Automated Action:
    • Go to Settings > Technical > Automation > Automated Actions.
    • Create a new automated action triggered when a subscription is expired or canceled.
  2. Update Course Access:
    • Use the automated action to update the client’s access to the course.
    • Example: Set a custom field (e.g., has_access) to False when the subscription ends.
  3. Restrict Access:
    • Use Record Rules to restrict access to the course based on the has_access field.

b. Custom Development

  1. Create a Custom Field:
    • Add a custom field (e.g., subscription_active) to the res.partner model to track subscription status.
  2. Update Subscription Status:
    • Use a custom module or script to update the subscription_active field when a subscription ends.
  3. Restrict Course Access:
    • Override the access logic for the course to check the subscription_active field.
    • Example: If subscription_active is False, deny access to the course.

c. Odoo Studio (Custom Edition Only)

If you’re using the Custom Edition (29.9 €/month), you can use Odoo Studio to create a custom workflow that links subscription status to course access.

4. Example Workflow

Here’s an example of how you can implement this functionality:

  1. Create a Custom Field:
    • Add a custom field (e.g., subscription_active) to the res.partner model.
  2. Automate Subscription Status Updates:
    • Use an automated action to update the subscription_active field when a subscription ends.
    • Example:
      python
      Copy
      from odoo import models, fields
      
      class Subscription(models.Model):
          _inherit = 'sale.subscription'
      
          def update_subscription_status(self):
              for subscription in self:
                  partner = subscription.partner_id
                  if subscription.state in ['closed', 'canceled']:
                      partner.write({'subscription_active': False})
  3. Restrict Course Access:
    • Use a record rule to restrict access to the course based on the subscription_active field.
    • Example:
      xml
      Copy
      <record id="restrict_course_access" model="ir.rule">
          <field name="name">Restrict Course Access</field>
          <field name="model_id" ref="model_slide_channel"/>
          <field name="domain_force">[('subscription_active', '=', True)]</field>
          <field name="groups" eval="[(4, ref('base.group_user'))]"/>
      </record>
      Run HTML

5. Notify the Client

  • Use Email Templates to notify the client when their subscription ends and their course access is revoked.
  • Example: Send an email when the subscription_active field is set to False.

6. Testing

  • Test the setup by creating a subscription, linking it to a course, and verifying access is revoked when the subscription ends.

Conclusion

By default, Odoo does not automatically revoke course access when a subscription ends. However, you can implement this functionality using automated actions, custom development, or Odoo Studio (if you’re using the Custom Edition). If you need assistance, consider hiring an Odoo developer to create a custom solution tailored to your needs.

0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
✅ eLearning subscription feature request: Gradual access to course conditioned by number of subcription renewals
subscription eLearning feature request
Avatar
0
Mar 25
1611
✅ Events feature request : "Every other" recurrence pattern
upgrade request events Feature feature request
Avatar
0
Mar 25
1621
Charge for Elearning courses through a subscription method
subscription courses eLearning
Avatar
Avatar
1
Jul 25
2792
Keep old Subscription functionality when upgrading to new version Solved
subscription upgrade functionality
Avatar
Avatar
2
Oct 24
1507
Event Coupon Subscription feature request: How to set up a subscription product to issue a fixed number of time-limited coupons that expire with the subscription and cannot be rolled over?
subscription events coupons feature request
Avatar
Avatar
1
Mar 25
1502
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now