CINXE.COM

Submit your Apps and Themes | Odoo Apps Store

<!DOCTYPE html> <html lang="en-US" data-website-id="1" data-main-object="ir.ui.view(411,)"> <head> <meta charset="utf-8"/> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="mobile-web-app-capable" content="yes"/> <meta name="generator" content="Odoo"/> <meta name="google-site-verification" content="pgjyH0qvN69B0m_HrTKV6h8TVnbRXp5etEHo19unPy4"/> <meta property="og:type" content="website"/> <meta property="og:title" content="Submit your Apps and Themes | Odoo Apps Store"/> <meta property="og:site_name" content="Odoo Apps Store"/> <meta property="og:url" content="https://apps.odoo.com/apps/upload"/> <meta property="og:image" content="https://apps.odoo.com/web/image/website/1/social_default_image?unique=7270798"/> <meta name="twitter:card" content="summary_large_image"/> <meta name="twitter:title" content="Submit your Apps and Themes | Odoo Apps Store"/> <meta name="twitter:image" content="https://apps.odoo.com/web/image/website/1/social_default_image/300x300?unique=7270798"/> <link rel="canonical" href="https://apps.odoo.com/apps/upload"/> <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin=""/> <title>Submit your Apps and Themes | Odoo Apps Store</title> <link type="image/x-icon" rel="shortcut icon" href="//apps.odoocdn.com/web/image/website/1/favicon?unique=7270798"/> <link rel="preload" href="//apps.odoocdn.com/web/static/src/libs/fontawesome/fonts/fontawesome-webfont.woff2?v=4.7.0" as="font" crossorigin=""/> <link type="text/css" rel="stylesheet" href="/web/assets/1/77d171f/web.assets_frontend.min.css"/> <script id="web.layout.odooscript" type="text/javascript"> var odoo = { csrf_token: "26ca9a10fe653991c4b6760f568dd43cd067da8do1773978733", debug: "", }; </script> <script type="text/javascript"> odoo.__session_info__ = {"is_admin": false, "is_system": false, "is_public": true, "is_website_user": true, "uid": null, "is_frontend": true, "profile_session": null, "profile_collectors": null, "profile_params": null, "show_effect": true, "currencies": {"1": {"symbol": "\u20ac", "position": "after", "digits": [69, 2]}, "152": {"symbol": "\u00a3", "position": "before", "digits": [69, 2]}, "25": {"symbol": "$", "position": "after", "digits": [69, 2]}, "21": {"symbol": "\u20b9", "position": "after", "digits": [69, 2]}, "3": {"symbol": "$", "position": "before", "digits": [69, 2]}}, "bundle_params": {"lang": "en_US", "website_id": 1}, "test_mode": false, "websocket_worker_version": "18.0-3", "translationURL": "/website/translations", "cache_hashes": {"translations": "2d5ea1c8502b1cd36963e62454dbd0bd83e270d3"}, "geoip_country_code": "SG", "geoip_phone_code": 65, "lang_url_code": "en_US"}; if (!/(^|;\s)tz=/.test(document.cookie)) { const userTZ = Intl.DateTimeFormat().resolvedOptions().timeZone; document.cookie = `tz=${userTZ}; path=/`; } </script> <script type="text/javascript" defer="defer" src="/web/assets/1/425536e/web.assets_frontend_minimal.min.js" onerror="__odooAssetError=1"></script> <script type="text/javascript" defer="defer" data-src="/web/assets/1/2eebccc/web.assets_frontend_lazy.min.js" onerror="__odooAssetError=1"></script> <noscript> <style> /* Prevent animated elements hiding */ .o_animate_in_children > * { opacity: 1!important; -webkit-transform: scale(1)!important; -ms-transform: scale(1)!important; transform: scale(1)!important; } </style> </noscript> </head> <body> <div id="wrapwrap" class=" o_submit_your_apps_and_themes "> <a class="o_skip_to_content btn btn-primary rounded-0 visually-hidden-focusable position-absolute start-0" href="#wrap">Skip to Content</a> <header id="top" data-anchor="true" data-name="Header" data-extra-items-toggle-aria-label="Extra items button" class=" o_no_autohide_menu o_header_fixed o_main_header o_not_editable o_main_header" style=" "> <div class="o_main_header_main top_menu" id="top_menu"> <a class="float-start o_logo" href="/"><span class="visually-hidden sr-only">Odoo</span></a> <a href="#" role="button" class="o_mobile_menu_toggle d-inline-block d-md-none"> <i class="fa fa-bars" focusable="false"></i><span class="visually-hidden sr-only">Menu</span> </a> <ul class="o_header_buttons list-unstyled"> <li class="nav-item d-md-none"> </li> <li class="nav-item o_no_autohide_item"> <a href="/web/login" class="nav-link">Sign in</a> </li> <li class="nav-item o_no_autohide_item"> <a class="btn btn-primary btn-sm text-nowrap trial_link" href="https://www.odoo.com/trial">Try it free</a> </li> </ul> <ul class="o_primary_nav"> <li class="dropdown"> <a href="#" aria-label="Apps: use the dropdown menu to switch apps" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false" class="dropdown-toggle">Apps</a> <div class="start-0 dropdown-menu o_secondary_nav" data-bs-parent="o_primary_nav"> <div class="container"> <div class="row"> <div class="col-md-3 o_finance_apps "> <div class="o_nav_app_family">Finance</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/accounting">Accounting</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/invoicing">Invoicing</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/expenses">Expenses</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/spreadsheet">Spreadsheet (BI)</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/documents">Documents</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/sign">Sign</a></li> </ul> </div> <div class="col-md-3 o_sale_apps "> <div class="o_nav_app_family">Sales</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/crm">CRM</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/sales">Sales</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/point-of-sale-shop">POS Shop</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/point-of-sale-restaurant">POS Restaurant</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/subscriptions">Subscriptions</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/rental">Rental</a></li> </ul> </div> <div class="col-md-3 o_website_apps "> <div class="o_nav_app_family">Websites</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/website">Website Builder</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/ecommerce">eCommerce</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/blog">Blog</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/forum">Forum</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/live-chat">Live Chat</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/elearning">eLearning</a></li> </ul> </div> <div class="col-md-3 o_inventory_apps "> <div class="o_nav_app_family">Supply Chain</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/inventory">Inventory</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/manufacturing">Manufacturing</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/plm">PLM</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/purchase">Purchase</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/maintenance">Maintenance</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/quality">Quality</a></li> </ul> </div> </div> <div class="row"> <div class="col-md-3 o_hr_apps "> <div class="o_nav_app_family">Human Resources</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/employees">Employees</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/recruitment">Recruitment</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/time-off">Time Off</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/appraisals">Appraisals</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/referrals">Referrals</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/fleet">Fleet</a></li> </ul> </div> <div class="col-md-3 o_marketing_apps "> <div class="o_nav_app_family">Marketing</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/social-marketing">Social Marketing</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/email-marketing">Email Marketing</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/sms-marketing">SMS Marketing</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/events">Events</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/marketing-automation">Marketing Automation</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/surveys">Surveys</a></li> </ul> </div> <div class="col-md-3 o_services_apps "> <div class="o_nav_app_family">Services</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/project">Project</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/timesheet">Timesheets</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/field-service">Field Service</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/helpdesk">Helpdesk</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/planning">Planning</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/appointments">Appointments</a></li> </ul> </div> <div class="col-md-3 o_productivity_apps "> <div class="o_nav_app_family">Productivity</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/app/discuss">Discuss</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/approvals">Approvals</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/iot">IoT</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/voip">VoIP</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/knowledge">Knowledge</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/app/whatsapp">WhatsApp</a></li> </ul> </div> </div> </div> <span class="o_store_link d-md-flex justify-content-md-center"> <a class="mx-md-3 px-3 dropdown-item" href="/apps/modules"><i class="fa fa-cube fa-fw me-2"></i>Third party apps</a> <a class="mx-md-3 px-3 dropdown-item" href="https://www.odoo.com/app/studio"><i class="fa fa-pencil fa-fw me-2"></i>Odoo Studio</a> <a href="https://www.odoo.sh" class="mx-md-3 px-3"><i class="fa fa-cloud fa-fw me-2"></i>Odoo Cloud Platform</a> </span> </div> </li> <li class="dropdown"> <a href="#" aria-label="Industries: use the dropdown menu to find links to industries related pages" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false" class="dropdown-toggle">Industries</a> <div class="start-0 dropdown-menu o_secondary_nav" data-bs-parent="o_primary_nav"> <div class="container"> <div class="row"> <div class="col-md-3 o_retail_industries "> <div class="o_nav_ind_family">Retail</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/book-store">Book Store</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/clothing-store">Clothing Store</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/hardware-shop">Hardware Store</a></li> </ul> </div> <div class="col-md-3 o_services_industries "> <div class="o_nav_ind_family">Services</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/odoo-partner">Odoo Partner</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/real-estate">Real Estate</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/talent-acquisition">Talent Acquisition</a></li> </ul> </div> <div class="col-md-3 o_hospitality_industries "> <div class="o_nav_ind_family">Hospitality</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/bar-pub">Bar and Pub</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/fast-food">Fast Food</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/fine-dining-restaurant">Fine Dining Restaurant</a></li> </ul> </div> <div class="col-md-3 o_health_industries "> <div class="o_nav_ind_family">Health & Fitness</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/fitness-center">Fitness Center</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/sports-club">Sports Club</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/wellness-practitioners">Wellness Practitioners</a></li> </ul> </div> </div> <div class="row"> <div class="col-md-3 o_supply_chain_industries "> <div class="o_nav_ind_family">Supply Chain</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/beverage-distributor">Beverage distributor</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/corporate-gifts">Corporate Gifts</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/custom-furniture-production">Custom Furniture Production</a></li> </ul> </div> <div class="col-md-3 o_construction_industries "> <div class="o_nav_ind_family">Construction</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/industries/construction">Construction</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/gardening">Gardening</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/industries/solar-energy">Solar Energy</a></li> </ul> </div> <div class="col-md-6 x_wd d-none d-lg-flex align-self-end"> <img src="//apps.odoocdn.com/openerp_website/static/src/img/arrows/grey_arrow_sm_02.svg" height="40px" class="rotate-70 me-3 mt-3 mb-n2" alt="" loading="lazy"/> <div class="display-6 text-primary">...and many more!</div> </div> </div> </div> <span class="o_store_link d-md-flex justify-content-md-center"> <a class="mx-md-3 px-3 dropdown-item" href="https://www.odoo.com/trial?industry"><i class="fa fa-cube fa-fw me-2"></i>Browse all Industries</a> </span> </div> </li> <li class="dropdown"> <a href="#" aria-label="Community: use the dropdown menu to find links to community related pages" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false" class="dropdown-toggle">Community</a> <div class="start-0 dropdown-menu o_secondary_nav pb-0" data-bs-parent="o_primary_nav"> <div class="container"> <div class="row"> <div class="col-md-3 o_learn_com"> <div class="o_nav_com_family">Learn</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/slides/all/tag/odoo-tutorials-9">Tutorials</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/page/docs">Documentation</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/slides/all?slide_category=certification">Certifications</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/training-events">Training</a></li> <li><a class="dropdown-item" href="https://www.odoo.fm" target="_blank">Podcast</a></li> </ul> <div class="o_nav_com_family mt-lg-5">Empower Education</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/education/program">Education Program</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/education/scale-up-business-game">Scale Up! Business Game</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/education/visit-odoo">Visit Odoo</a></li> </ul> </div> <div class="col-md-3 o_software_com"> <div class="o_nav_com_family">Get the Software</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/page/download">Download</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/page/editions">Compare Editions</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/page/release-notes">Releases</a></li> </ul> </div> <div class="col-md-3 o_collab_com"> <div class="o_nav_com_family">Collaborate</div> <ul> <li><a class="dropdown-item" href="https://github.com/odoo">Github</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/forum/help-1">Forum</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/events">Events</a></li> <li><a class="dropdown-item" href="https://github.com/odoo/odoo/wiki/Translations">Translations</a></li> </ul> <ul class="pt-lg-3"> <li><a class="dropdown-item" href="https://www.odoo.com/become-a-partner">Become a Partner</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/accounting-firms/register">Register your Accounting Firm</a></li> </ul> </div> <div class="col-md-3 o_services_com"> <div class="o_nav_com_family">Get Services</div> <ul> <li><a class="dropdown-item" href="https://www.odoo.com/partners">Find a Partner</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/accounting-firms">Find an Accountant</a></li> </ul> <ul class="pt-lg-3"> <li><ul class="pt-lg-3"> <li> <a target="_blank" href="https://www.odoo.com/r/meeting">Get a Tailored Demo</a> </li> </ul> </li> <li><a class="dropdown-item" href="https://www.odoo.com/blog/customer-reviews-6">Customer References</a></li> </ul> <ul class="pt-lg-3"> <li><a class="dropdown-item" href="https://www.odoo.com/pricing-packs">Implementation Services</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/page/developers-on-demand">Development Services</a></li> <li><a class="dropdown-item" href="https://www.odoo.com/help">Support</a></li> <li><a class="dropdown-item" href="//upgrade.odoo.com">Upgrades</a></li> </ul> </div> </div> </div> <span class="o_header_social"> <div class="social_icons"> <a target="_blank" href="https://github.com/odoo/odoo" class="d-inline dropdown-item"><i class="fa fa-fw fa-github" focusable="false"></i><span class="visually-hidden sr-only">Github</span></a> <a target="_blank" href="https://www.youtube.com/channel/UCkQPikELWZFLgQNHd73jkdg" class="d-inline dropdown-item"><i class="fa fa-fw fa-youtube-play" focusable="false"></i><span class="visually-hidden sr-only">Youtube</span></a> <a target="_blank" href="https://twitter.com/Odoo" class="d-inline dropdown-item"><i class="fa fa-fw fa-twitter" focusable="false"></i><span class="visually-hidden sr-only">Twitter</span></a> <a target="_blank" href="https://www.linkedin.com/company/odoo" class="d-inline dropdown-item"><i class="fa fa-fw fa-linkedin" focusable="false"></i><span class="visually-hidden sr-only">Linkedin</span></a> <a target="_blank" href="https://www.instagram.com/odoo.official" class="d-inline dropdown-item"><i class="fa fa-fw fa-instagram" focusable="false"></i><span class="visually-hidden sr-only">Instagram</span></a> <a target="_blank" href="https://www.facebook.com/odoo" class="d-inline dropdown-item"><i class="fa fa-fw fa-facebook" focusable="false"></i><span class="visually-hidden sr-only">Facebook</span></a> <a target="_blank" href="https://www.tiktok.com/@odoo" class="d-inline dropdown-item"> <svg xmlns="http://www.w3.org/2000/svg" style="width: 15px; margin-top: -3px;" class="custom-tiktok" viewBox="0 0 2859 3333" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"><path d="M2081 0c55 473 319 755 778 785v532c-266 26-499-61-770-225v995c0 1264-1378 1659-1932 753-356-583-138-1606 1004-1647v561c-87 14-180 36-265 65-254 86-398 247-358 531 77 544 1075 705 992-358V1h551z"></path></svg> </a> <a target="_blank" href="//podcast.odoo.com" class="d-inline dropdown-item"><i class="fa fa-fw fa-spotify" focusable="false"></i><span class="visually-hidden sr-only">Spotify</span></a> </div> <div> <a class="d-inline dropdown-item" href="tel:+3222903490"><i class="fa fa-phone text-muted me-1"></i>+32 2 290 34 90</a><ul class="pt-lg-3"> <li> <a target="_blank" href="https://www.odoo.com/r/meeting">Get a Tailored Demo</a> </li> </ul> </div> </span> </div> </li> <li><a href="https://www.odoo.com/pricing">Pricing</a></li> <li><a href="https://www.odoo.com/contactus">Contact</a></li> </ul> </div> </header> <main> <div id="wrap" class="js_apps_submit_repo"> <section class="mb-3"> <div class="container"> <div class="row"> <div class="col-lg-2 mt-1"> <a href="/apps" class="btn btn-primary mt-4"><i class="fa fa-arrow-left"></i> Back to Apps</a> </div> <div class="col-lg-10"> <h1 class="display-3 mt-4"> Submit your <b>Apps</b> & <b>Themes</b> </h1> </div> </div> </div> </section> <section class="bg-200 mb-3"> <div class="container"> <div class="row"> <div class="col-lg-8 offset-lg-2 mt-3 mb-3"> <h3 class="mt-0 mb-2">Register your Git repository</h3> <p class="mb-0"><b>Please <a href="/web/login?redirect=/apps/upload">sign in</a> to be able to register a repository.</b></p> </div> </div> </div> </section> <section> <div class="container"> <div class="row"> <div class="col-lg-8 offset-lg-2"> <section class="s_faq_collapse pt32 pb32 o_colored_level" data-snippet="s_faq_collapse" data-name="Accordion" style="background-image: none;"> <div class="container"> <div id="app_maintainer_faq" class="accordion" role="tablist" aria-multiselectable="true"> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_01" href="#maintainer_faq_01" role="tab" data-bs-toggle="collapse" aria-expanded="true" aria-controls="maintainer_faq_01" class="card-header" data-bs-target="#maintainer_faq_01">Want to sell your own module?</a> <div id="maintainer_faq_01" class="collapse show" role="tabpanel" aria-labelledby="heading_maintainer_faq_01" aria-expanded="true" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>It is possible to sell your own module on our Apps platform. You can start selling your modules very easily by adding a <code>price</code> and a <code>currency</code> keys in your module manifest like <code>'price': 49.99,</code> and <code>'currency': 'EUR',</code> for example. Supported currencies are EUR and USD. We require that the modules sold on our Apps platform is the lowest (or the same) price on the web, have a proper description, complete with screenshots of the functionalities and an overall nice presentation page. Please refer to the following section for more informations on how to achieve this goal. We reserve the rights to unpublish modules which do not conform to these criterias until they receive a proper presentation page.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_02" href="#maintainer_faq_02" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_02" class="card-header" data-bs-target="#maintainer_faq_02">How much should I sell my module for?</a> <div id="maintainer_faq_02" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_02" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Don't be afraid to value your work as it should be ! If people need the feature of your module, they will pay for it. In any case it will make them gain development time so you should not undervalue your work. We think 100 euros is a good starting point.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_03" href="#maintainer_faq_03" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_03" class="card-header" data-bs-target="#maintainer_faq_03">How to set up an icon, cover image and description for your modules?</a> <div id="maintainer_faq_03" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_03" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Like <a href="/apps/themes/13.0/theme_enark/" class="btn btn-sm btn-primary"><b>Theme Enark</b></a> or <a href="/apps/themes/13.0/theme_treehouse/" class="btn btn-sm btn-primary"><b>Theme Treehouse</b></a></p> <p>Starting from version 8.0, the module icon needs to be located at <code>static/description/icon.png</code> in the module folder. The cover image (thumbnail) location is defined in the <code>images</code> key of the manifest, like <code>'images': ['images/main_screenshot.png'],</code> for example. The rich-text HTML description comes from the <code>static/description/index.html</code> file in the module folder. It is recommended to start with <a href="https://github.com/odoo/odoo/blob/11.0/addons/crm/static/description/index.html"><b>this official template</b></a>.</p> <p>To have a big screenshot in your theme, you need to have more than one picture in <code>'images': ['images/main_1.png', 'images/main_2.png', 'images/main_screenshot.png']</code>, and the first picture with a name ending with '_screenshot' will be selected and displayed as big screenshot.<br/> The purpose of this screenshot format is to show a full demo page and not your company logo larger.</p> <p class="text-danger text-bold"><i class="fa fa-warning"></i> The only image file formats allowed in your module description are png, gif, and jpeg.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_03b" href="#maintainer_faq_03b" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_03b" class="card-header" data-bs-target="#maintainer_faq_03b">My module icon is not displayed. It shows a white cube instead, why?</a> <div id="maintainer_faq_03b" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_03b" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Either your icon is not in the right place (<code>static/description/icon.png</code> since Odoo 8.0), or its format is not PNG. Please note that changing the file extension of an image does not change its format. For example, renaming icon.ico into icon.png will not work. You need to actually convert the image type.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_04" href="#maintainer_faq_04" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_04" class="card-header" data-bs-target="#maintainer_faq_04">How to set a license and display a license file for your module?</a> <div id="maintainer_faq_04" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_04" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Like <a href="/apps/themes/8.0/theme_clean/" class="btn btn-sm btn-primary"><b>Theme Clean</b></a></p> <p>The license is defined in the <code>license</code> key of the manifest (<code>__manifest__.py</code> as of Odoo 10, <code>__openerp__.py</code> for older series), like <code>'license': 'AGPL-3',</code> for example. Possible values are <code>GPL-3</code>, <code>AGPL-3</code>, <code>LGPL-3</code>, <a href="//apps.odoocdn.com/loempia/static/examples/LICENSE"><code>OPL-1</code></a>, <code>Other OSI approved licence</code>, <code>Other proprietary</code>. The license file is loaded from the <code>LICENSE</code> file at the root of your module or, if there is none, at the root of your repository. The license file will only be displayed if the license is not a well known open source one, that is: <code>OPL-1</code>, <code>Other OSI approved licence</code>, <code>Other proprietary</code>. If no license information is provided in the manifest, we will use Other Proprietary as default value.</p> <p>The following table shows the compatibility between licenses:</p> <table class="table table-striped"> <thead> <tr> <td><b>Module license</b></td> <td><b>Compatible dependencies licenses</b></td> </tr> </thead> <tbody> <tr> <td>AGPL-3</td> <td>AGPL-3, GPL-3, LGPL-3</td> </tr> <tr> <td>GPL-3</td> <td>GPL-3, LGPL-3</td> </tr> <tr> <td>LGPL-3</td> <td>LGPL-3, OPL-1, OEEL-1, Other OSI approved licence, Other proprietary</td> </tr> <tr> <td>OPL-1</td> <td>LGPL-3, OPL-1, OEEL-1, Other OSI approved licence, Other proprietary</td> </tr> <tr> <td>Other OSI approved licence</td> <td>LGPL-3, OEEL-1, OPL-1, Other OSI approved licence, Other proprietary</td> </tr> <tr> <td>Other proprietary</td> <td>LGPL-3, OEEL-1, OPL-1, Other OSI approved licence, Other proprietary</td> </tr> <tr> <td>OEEL-1</td> <td>LGPL-3, OEEL-1</td> </tr> </tbody> </table> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_04a" href="#maintainer_faq_04a" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_04a" class="card-header" data-bs-target="#maintainer_faq_04a">How to display a documentation for your modules?</a> <div id="maintainer_faq_04a" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_04a" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Like <a href="/apps/modules/8.0/crm_voip/" class="btn btn-sm btn-primary"><b>Odoo VOIP</b></a></p> <p>The documentation is automatically loaded from the <code>doc/index.rst</code> file in the module folder. It needs to be a valid, pure rst file.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_04b" href="#maintainer_faq_04b" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_04b" class="card-header" data-bs-target="#maintainer_faq_04b">Are there any specific rules that Apps authors must observe?</a> <div id="maintainer_faq_04b" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_04b" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p> We do not currently review every module published, but we do take action when users report abusive behavior. You will usually know when you cross the line, but here are some examples of things that would cause your modules to be removed from the store: <ul> <li>R1. Stealing data from the users, copying other developers' work without permission and without giving proper credit (according to the license terms), cheating on the ratings system, are all examples of abusive behavior that will get your modules removed;</li> <li>R2. Modules that download code in any form, or modules that install or launch other executable code will be removed. This includes obfuscated/encrypted code.</li> <li>R3. Modules that include undocumented or hidden features inconsistent with the module description will be removed.</li> <li>R4. Modules that collect information without user consent (such as usage statistics) will be removed unless the description of the module explicitly mentions <i>what</i> is collected and links to the applicable Privacy Policy. </li> <li>R5. Modules that harm the image and/or reputation of another author will be removed, such as a module that doesn't work and is attributed to another author. </li> <li>R6. Modules for which you don't provide support to customer who bought it, such as a customer asking for help configuring the module or who encounters a bug when using it. </li> </ul> This is not an exhaustive list, so please use common sense, and do not hesitate to <a href="mailto:apps@odoo.com">ask us</a> if you are unsure about crossing the line. We respect and value your work, but we also want to create a great platform that is safe and trustworthy for all Odoo users! For this reason, we also have <a href="/apps/vendor-guidelines" target="_blank"><b>Vendor Guidelines</b></a>. </p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_05" href="#maintainer_faq_05" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_05" class="card-header" data-bs-target="#maintainer_faq_05">How do I get paid for my modules purchases?</a> <div id="maintainer_faq_05" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_05" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>You will get 70% of your modules revenues on our Apps platform. You can either opt-in for automatic monthly payments or manually send us an invoice. Your sales will be accounted for in a PO that you can see in your <a href="//odoo.com/my/sales"><b>sales dashboard</b></a>. During each month, we will close the POs that have reached or exceeded 400 euros unredeemed sales. If you have enabled the automatic redeem method in your account, we will pay the invoice in the following days. If you have not, then you will receive an email from us notifying you that we are waiting for an invoice from you. The invoice must include the PO reference that you will receive by email and, obviously, the amounts must match. Please do not send us invoices for PO that are still Opened; you need to wait for our system to close the PO and notify you. Please note that since we are making international SWIFT transfers, the payment may take several days or weeks, especially if you are outside of Europe.<br/> Clearly, the automatic payment method is the easiest, but you need to make sure with your local lawyer that you can receive money on your account without providing an invoice to justify that money.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_05a" href="#maintainer_faq_05a" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_05a" class="card-header" data-bs-target="#maintainer_faq_05a">How do I format the URL of my repository?</a> <div id="maintainer_faq_05a" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_05a" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p> All repositories URL's will follow the standard <a href="https://en.wikipedia.org/wiki/List_of_URI_schemes">ssh URI scheme</a>. There are two reasons to this standardization. <ul> <li>We will remove sensitive information (password) from the URL;</li> <li>This standardization avoids the accidental duplication of repositories.</li> </ul> Following the standard, the url will look like <code>ssh://git@gitServer(:port)/mypath#version</code>. In the event that the registration fails due to a badly formatted url, please make sure that you only use the <i>colon</i> to define the port or the URL, if no port is to be defined, use <i>slash</i> to separate <code>gitServer</code> from <code>mypath</code>. </p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_06" href="#maintainer_faq_06" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_06" class="card-header" data-bs-target="#maintainer_faq_06">Your repository is private?</a> <div id="maintainer_faq_06" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_06" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>To publish your modules on our platform, we need to be allowed to read from your repository. If you are on <a href="https://github.com/"><b>Github</b></a>, you can simply authorize our <a href="https://github.com/online-odoo"><b>online-odoo</b></a> user (NOT odoo-online) on your repository (the authorization must be done on the repository specifically, not the entire company). If you are on <a href="https://gitlab.com/"><b>Gitlab</b></a>, you can authorize our <a href="https://gitlab.com/OdooApps"><b>OdooApps (apps@odoo.com)</b></a> user. If you use Bitbucket or another service, you will need to authorize our <a target="_blank" href="/apps/repository-keys"><b>public SSH key</b></a> instead. Don't forget to use the SSH url of your repository when registering it to allow us to identify using ssh. For example for GitHub, it should be something like <code>ssh://git@github.com/odoo/odoo#9.0</code>.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_07" href="#maintainer_faq_07" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_07" class="card-header" data-bs-target="#maintainer_faq_07">You deleted a module from your repository but it still shows up in Odoo Apps?</a> <div id="maintainer_faq_07" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_07" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>We intentionally keep deleted modules for safekeeping. If you really want that we remove your modules from Odoo Apps, please issue your request to <a href="mailto:apps@odoo.com"><b>apps@odoo.com</b></a>. We will however continue to keep those modules if people have already bought them, or if another module depends on it. We can simply hide the module in those cases.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_07b" href="#maintainer_faq_07b" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_07b" class="card-header" data-bs-target="#maintainer_faq_07b">Can third-party apps be installed on Odoo.sh?</a> <div id="maintainer_faq_07b" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_07b" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Odoo.sh works alongside an online git repository. By default, only free apps can be installed on Odoo.sh because the underlying git repository is public. However, if the underlying repository is set to be private instead, then paid apps can be installed on an Odoo.sh instance.</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_07c" href="#maintainer_faq_07c" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_07c" class="card-header" data-bs-target="#maintainer_faq_07c">Can I have modules that depend on another?</a> <div id="maintainer_faq_07c" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_07c" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Yes. If the dependencies are from Odoo Enterprise, Community, your own, or another vendor, and are published in the App Store (except for Odoo apps).<br/> The price to the buyer will include the cost of your app plus the cost of each dependency.<br/> It is also possible to depend on an unpublished app. This way you can have a base module and customers are only going to download it when they buy one of the apps that depends on it. To do it remember to keep the base app free. </p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_08" href="#maintainer_faq_08" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_08" class="card-header" data-bs-target="#maintainer_faq_08">You previously registered a Bzr repository and want to replace it by your new Git one?</a> <div id="maintainer_faq_08" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_08" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Please contact <a href="mailto:apps@odoo.com"><b>apps@odoo.com</b></a> with the urls of both the old Bzr repository and the new Git one, we will take care of everything!</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_09" href="#maintainer_faq_09" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_09" class="card-header" data-bs-target="#maintainer_faq_09">Any other question?</a> <div id="maintainer_faq_09" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_09" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Please contact <a href="mailto:apps@odoo.com"><b>apps@odoo.com</b></a> with all the details and we'll be happy to help you get on track!</p> </div> </div> </div> <div class="card bg-white" data-name="Item"> <a id="heading_maintainer_faq_10" href="#maintainer_faq_10" role="tab" data-bs-toggle="collapse" aria-expanded="false" aria-controls="maintainer_faq_10" class="card-header" data-bs-target="#maintainer_faq_10">Does Odoo take a commission on my sales?</a> <div id="maintainer_faq_10" class="collapse" role="tabpanel" aria-labelledby="heading_maintainer_faq_10" aria-expanded="false" data-bs-parent="#app_maintainer_faq"> <div class="card-body"> <p>Yes. Odoo S.A. takes a 30% commission on all sales on Odoo Apps and a 25% commission on each In-App Purchase (IAP) transactions. Please, consult our <a href="/apps/vendor-guidelines" target="_blank">Vendor Guidelines</a> for more information.</p> </div> </div> </div> </div> </div> </section> </div> </div> </div> </section> </div> <input id="url_cart" type="hidden" value="https://www.odoo.com"/> <div id="o_shared_blocks" class="oe_unremovable"></div> </main> <footer id="bottom" data-anchor="true" data-name="Footer" class="o_footer o_colored_level o_cc o_footer_slideout"> <div id="footer" class="container o_not_editable "> <span class="o_logo o_logo_inverse d-block mx-auto o_footer_logo my-5"></span> <div class="row"> <div class="col-12 col-lg-7 col-xl-6"> <div class="row"> <div class="col-12 col-md-4 mb-3 mb-md-0"> <div class="row"> <div class="col-6 col-md-12"> <span class="o_footer_title">Community</span> <ul class="o_footer_links list-unstyled"> <li><a href="https://www.odoo.com/slides/all/tag/odoo-tutorials-9">Tutorials</a></li> <li><a href="https://www.odoo.com/page/docs">Documentation</a></li> <li><a href="https://www.odoo.com/forum/help-1">Forum</a></li> </ul> </div> <div class="col-6 col-md-12"> <span class="o_footer_title">Open Source</span> <ul class="o_footer_links list-unstyled"> <li><a href="https://www.odoo.com/page/download">Download</a></li> <li class="divider"></li> <li><a href="https://github.com/odoo/odoo">Github</a></li> <li><a href="https://runbot.odoo.com/">Runbot</a></li> <li><a href="https://github.com/odoo/odoo/wiki/Translations">Translations</a></li> </ul> </div> </div> </div> <div class="col-6 col-md-4"> <span class="o_footer_title">Services</span> <ul class="o_footer_links list-unstyled"> <li><a href="https://www.odoo.sh">Odoo.sh Hosting</a></li> <li class="divider"></li> <li><a href="https://www.odoo.com/help">Support</a></li> <li><a href="https://upgrade.odoo.com">Upgrade</a></li> <li><a href="https://www.odoo.com/page/developers-on-demand">Custom Developments</a></li> <li><a href="https://www.odoo.com/education/program">Education</a></li> <li class="divider"></li> <li><a href="https://www.odoo.com/accounting-firms">Find an Accountant</a></li> <li class="divider"></li> <li><a href="https://www.odoo.com/partners">Find a Partner</a></li> <li><a href="https://www.odoo.com/become-a-partner">Become a Partner</a></li> </ul> </div> <div class="col-6 col-md-4 mb-4"> <span class="o_footer_title">About us</span> <ul class="o_footer_links list-unstyled"> <li><a href="https://www.odoo.com/page/about-us">Our company</a></li> <li><a href="https://www.odoo.com/page/brand-assets">Brand Assets</a></li> <li><a href="https://www.odoo.com/contactus">Contact us</a></li> <li><a href="https://www.odoo.com/jobs">Jobs</a></li> <li class="divider"></li> <li><a href="https://www.odoo.com/events">Events</a></li> <li><a href="//podcast.odoo.com">Podcast</a></li> <li><a href="https://www.odoo.com/blog">Blog</a></li> <li><a href="https://www.odoo.com/blog/6">Customers</a></li> <li class="divider"></li> <li><a href="https://www.odoo.com/legal">Legal</a> <span class="small text-muted">•</span> <a href="https://www.odoo.com/privacy">Privacy</a></li> <li><a href="https://www.odoo.com/security">Security</a></li> </ul> </div> </div> </div> <div class="col-12 col-lg-5 col-xl-5 offset-xl-1"> <div class="d-flex align-items-center justify-content-between"> </div> <hr class="mt-3 mb-4"/> <p class="small text-muted">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.</p> <p class="small text-muted mb-4">Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.</p> <div class="o_footer_social_media mb-4"> <a target="_blank" href="https://www.facebook.com/odoo" class="me-3"><i class="fa fa-fw fa-facebook"></i></a> <a target="_blank" href="https://twitter.com/Odoo" class="me-3"><i class="fa fa-fw fa-twitter"></i></a> <a target="_blank" href="https://www.linkedin.com/company/odoo" class="me-3"><i class="fa fa-fw fa-linkedin"></i></a> <a target="_blank" href="https://github.com/odoo/odoo" class="me-3"><i class="fa fa-fw fa-github"></i></a> <a target="_blank" href="https://www.instagram.com/odoo.official" class="me-3"><i class="fa fa-fw fa-instagram"></i></a> <a target="_blank" href="https://www.tiktok.com/@odoo" class="me-3"><i class="fa fa-fw fa-tiktok"></i></a> <a target="_blank" class="me-3" href="tel:+3222903490"><i class="fa fa-fw fa-phone"></i></a> </div> </div> </div> </div> <div class="o_footer_copyright o_not_editable"> <div class="container py-3"> <div class="row"> <div class="col-sm text-center text-sm-start text-muted"> <span class="o_footer_copyright_name me-2"><a class="small" href="https://www.odoo.com/app/website">Website made with <span class="o_logo o_logo_inverse o_logo_15"></span></a></span> </div> </div> </div> </div> </footer> </div> <script name="plausible" defer="defer" src="https://download.odoo.com/js/plausi_odoo.js" data-domain="odoo.com"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10