Skip to Content
Odoo model

loyalty.program

Loyalty Program. Defined in module loyalty; exists in Odoo 16, 17, 18, 19, 20. Across the upgrade steps we tracked: 6 fields added, 0 removed, 0 renamed.

  1. Odoo 16 loyalty
  2. Odoo 17 loyalty
  3. Odoo 18 loyalty
  4. Odoo 19 loyalty
  5. Odoo 20 loyalty

Odoo 16 to 17

Community only All changes in this step

Fields added (2)

FieldTypeModule
date_fromdateloyalty
pricelist_idsmany2manyloyalty

Odoo 17 to 18

Community only All changes in this step

Now also inherits pos.load.mixin (fields from these parents are listed on their own pages).

Odoo 18 to 19

Community + Enterprise All changes in this step

Fields added (1)

FieldTypeModule
show_non_published_product_warningbooleanwebsite_sale_loyalty

Odoo 19 to 20

Community + Enterprise All changes in this step

Fields added (3)

FieldTypeModule
expire_afterintegerloyalty
once_per_userbooleanloyalty
partner_idsmany2manyloyalty

All fields declared on loyalty.program (40)

Fields this model declares itself in any version, with the versions they exist in. Inherited fields (mail.thread and other mixins) are on the parent model's page.

present not present not covered (Enterprise, Odoo 16 and 17)

Show all 40 fields
FieldTypeLabelModule1617181920
activebooleanloyalty
applies_onselectionloyalty
available_onbooleanAvailable Onloyalty
communication_plan_idsone2many loyalty.mailloyalty
company_idmany2one res.companyCompanyloyalty
coupon_countintegerloyalty
coupon_count_displaycharItemsloyalty
coupon_idsone2many loyalty.cardloyalty
currency_idmany2one res.currencyCurrencyloyalty
currency_symbolcharloyalty
date_fromdateStart Dateloyalty
date_todateEnd dateloyalty
ecommerce_okbooleanAvailable on Websitewebsite_sale_loyalty
expire_afterintegerloyalty
is_nominativebooleanloyalty
is_payment_programbooleanloyalty
limit_usagebooleanLimit Usageloyalty
mail_template_idmany2one mail.templateEmail templateloyalty
max_usageintegerloyalty
namecharProgram Nameloyalty
once_per_userbooleanOnce per userloyalty
order_countintegersale_loyalty
partner_idsmany2many res.partnerUsed byloyalty
payment_program_discount_product_idmany2one product.productDiscount Productloyalty
portal_point_namecharloyalty
portal_visiblebooleanloyalty
pos_config_idsmany2many pos.configPoint of Salespos_loyalty
pos_okbooleanPoint of salepos_loyalty
pos_order_countintegerPoS Order Countpos_loyalty
pos_report_print_idmany2one ir.actions.reportPrint Reportpos_loyalty
pricelist_idsmany2many product.pricelistPricelistloyalty
program_typeselectionloyalty
reward_idsone2many loyalty.rewardRewardsloyalty
rule_idsone2many loyalty.ruleConditional rulesloyalty
sale_okbooleanSalessale_loyalty
sequenceintegerloyalty
show_non_published_product_warningbooleanwebsite_sale_loyalty
total_order_countintegerTotal Order Countloyalty
triggerselectionloyalty
trigger_product_idsmany2manyloyalty
Coverage. Odoo 16 to 17 and 17 to 18 compare Community modules only (the Enterprise 16 and 17 sources are not available to us). Odoo 18 to 19 and 19 to 20 include Community and Enterprise modules. Everything here comes from a static read of the Odoo source code: a field counts as removed only when no parent model, mixin or delegated model still provides it. Fields created dynamically at run time can be missed, and entries we could not confirm are marked as low confidence.