TIP: You can type at any time to perform a new search.
Members
membership · odoo/odoo
- Repository
- odoo/odoo · module folder
- Module version
- 1.0
- Category
- Sales/Sales
- Folder size
- 1.7 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://www.odoo.com/app/forum
- Last tracking update
- 2026-08-15 22:24:34
- Authors
- Maintainers
- None
- Committers
- Raphael Collet, Odoo Translation Bot, Odoo Online, Jorge Pinna Puissant, Rémy Voet (ryv), Tiffany Chang (tic), Gorash, Habib (ayh), Louis Wicket (wil), Thomas Becquevort (thbe), Gauthier Wala (gawa), Arnaud Sibille, omra-odoo, Youssef Bashandy, kcv-odoo, Louis (wil), Ezzuldin Zaky (ezza), Krzysztof Magusiak (krma), pajo
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- crm_membership, membership_delegated_partner, membership_extension, membership_initial_fee, membership_prorate, oca_all, website_event_membership_restriction, website_membership
- Description
This module allows you to manage all operations for managing memberships. ========================================================================= It supports different kind of members: -------------------------------------- * Free member * Associated member (e.g.: a group subscribes to a membership for all subsidiaries) * Paid members * Special member prices It is integrated with sales and accounting to allow you to automatically invoice and send propositions for membership renewal.
Code Analysis ⓘ
Views touched (12)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
membership_members_tree |
Members | res.partner | list | New |
membership_product_search_form_view |
membership.product.search.form | product.template | search | New |
membership_products_form |
Membership Products | product.template | form | New |
membership_products_kanban |
product.template.kanban | product.template | kanban | New |
membership_products_tree |
Membership products | product.template | list | New |
report_membership_view_tree |
report.membership.view.list | report.membership | list | New |
view_membership_invoice_view |
membership.invoice.view.form | membership.invoice | form | New |
view_partner_form |
res.partner.form.inherit | res.partner | form | Inherits base.view_partner_form |
view_report_membership_graph1 |
report.membership.graph1 | report.membership | graph | New |
view_report_membership_pivot |
report.membership.pivot | report.membership | pivot | New |
view_report_membership_search |
report.membership.search | report.membership | search | New |
view_res_partner_member_filter |
res.partner.select | res.partner | search | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (7)
New fields (0)
No new fields.
Public methods (3)-
button_cancel(self) -
button_draft(self) -
write(self, vals)
New fields (0)
No new fields.
Public methods (2)-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (2)
-
member_priceFloatmin_display_digits='Product Price'required=Truestring='Member Price' -
product_idMany2one → product.productrequired=Truestring='Membership' args: 'product.product'
-
membership_invoice(self) -
onchange_product(self)@api.onchange('product_id')This function returns value of product's member price based on product id.
New fields (11)
-
account_invoice_idMany2one → account.movereadonly=Truerelated='account_invoice_line.move_id'string='Invoice' args: 'account.move' -
account_invoice_lineMany2one → account.move.lineondelete='cascade'readonly=Truestring='Account Invoice line' args: 'account.move.line' -
company_idMany2one → res.companyreadonly=Truerelated='account_invoice_line.move_id.company_id'store=Truestring='Company' args: 'res.company' -
dateDatehelp='Date on which member has joined the membership'string='Join Date' -
date_cancelDatestring='Cancel date' -
date_fromDatereadonly=Truestring='From' -
date_toDatereadonly=Truestring='To' -
member_priceFloathelp='Amount for the membership'min_display_digits='Product Price'required=Truestring='Membership Fee' -
membership_idMany2one → product.productrequired=Truestring='Membership' args: 'product.product' -
partnerMany2one → res.partnerindex=Trueondelete='cascade'string='Partner' args: 'res.partner' -
stateSelectioncompute='_compute_state'help='It indicates the membership status.\n-Non Member: A member who has not applied for any membership.\n-Cancelled Member: A member who has cancelled his membership.\n-Old Member: A member whose membership date has expired.\n-Waiting Member: A member who has applied for the membership and whose invoice is going to be created.\n-Invoiced Member: A member whose invoice has been created.\n-Paid Member: A member who has paid the membership amount.'store=Truestring='Membership Status' args: STATE
No public methods.
New fields (3)
-
membershipBooleanhelp='Check if the product is eligible for membership.' -
membership_date_fromDatehelp='Date from which membership becomes active.'string='Membership Start Date' -
membership_date_toDatehelp='Date until which membership remains active.'string='Membership End Date'
No public methods.
New fields (14)
-
associate_member_idMany2one → res.partnerreadonly=Truestring='Associate Member' args: 'res.partner' -
company_idMany2one → res.companyreadonly=Truestring='Company' args: 'res.company' -
date_toDatereadonly=Truestring='End Date' -
membership_idMany2one → product.productreadonly=Truestring='Membership Product' args: 'product.product' -
membership_stateSelectionreadonly=Truestring='Current Membership State' args: STATE -
num_invoicedIntegerreadonly=Truestring='# Invoiced' -
num_paidIntegerreadonly=Truestring='# Paid' -
num_waitingIntegerreadonly=Truestring='# Waiting' -
partner_idMany2one → res.partnerreadonly=Truestring='Member' args: 'res.partner' -
quantityIntegerreadonly=True -
start_dateDatereadonly=Truestring='Start Date' -
tot_earnedFloatdigits=0readonly=Truestring='Earned Amount' -
tot_pendingFloatdigits=0readonly=Truestring='Pending Amount' -
user_idMany2one → res.usersreadonly=Truestring='Salesperson' args: 'res.users'
-
init(self)Create the view
New fields (8)
-
associate_memberMany2one → res.partnerhelp='A member with whom you want to associate your membership.It will consider the membership state of the associated member.'string='Associate Member' args: 'res.partner' -
free_memberBooleanhelp='Select if you want to give free membership.'string='Free Member' -
member_linesOne2many → membership.membership_linestring='Membership' args: 'membership.membership_line', 'partner' -
membership_amountFloatdigits=(16, 2)help='The price negotiated by the partner'string='Membership Amount' -
membership_cancelDatecompute='_compute_membership_state'help='Date on which membership has been cancelled'store=Truestring='Cancel Membership Date' -
membership_startDatecompute='_compute_membership_state'help='Date from which membership becomes active.'store=Truestring='Membership Start Date' -
membership_stateSelectioncompute='_compute_membership_state'help='It indicates the membership state.\n-Non Member: A partner who has not applied for any membership.\n-Cancelled Member: A member who has cancelled his membership.\n-Old Member: A member whose membership date has expired.\n-Waiting Member: A member who has applied for the membership and whose invoice is going to be created.\n-Invoiced Member: A member whose invoice has been created.\n-Paying member: A member who has paid the membership fee.'recursive=Truestore=Truestring='Current Membership Status' args: membership.STATE -
membership_stopDatecompute='_compute_membership_state'help='Date until which membership remains active.'store=Truestring='Membership End Date'
-
create_membership_invoice(self, product, amount)Create Customer Invoice of Membership for partners.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…