| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 407 |
| Technical Name |
xpt_text_snippets |
| License | LGPL-3 |
| Website | https://xpedyt.pl |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 407 |
| Technical Name |
xpt_text_snippets |
| License | LGPL-3 |
| Website | https://xpedyt.pl |
Text Snippets
Define reusable text once — insert it anywhere in Odoo with a // keystroke or a single click in the chatter.
Overview
Sales reps, support agents, and operations staff type the same sentences dozens of times every day — order confirmations, shipping updates, payment reminders, apology templates. There is no built-in way to store these phrases in Odoo and insert them in a single action, regardless of which text field you are in.
Text Snippets solves this. Create a library of reusable text fragments —
global ones shared with the whole company or personal ones just for you — then type
// in any text field to get an instant searchable dropdown.
Pick a snippet and it replaces the // at the cursor. No clipboard, no switching
tabs, no retyping.
Type // — anywhere
The trigger works in every text input, textarea, and rich-text field across the entire
Odoo backend — chatter messages, internal notes, description fields, search bars, form
inputs. The moment you type //, a dropdown appears listing your available
snippets. Keep typing to filter by title or shortcut keyword. Click a snippet to insert it.
Press Escape to dismiss.
Snippets are loaded and cached locally (refreshed every 5 minutes), so the dropdown is instant on subsequent triggers. Navigate the list with the arrow keys and press Enter to insert, or simply click.
Chatter — dropdown after typing //
Form field — works in any input
After selecting a snippet — text inserted at cursor
Chatter toolbar button
An additional icon appears in the chatter compose toolbar alongside the emoji and
attachment buttons. Click it to open the snippet list without typing // first —
useful when you want to browse all available snippets before choosing, or when drafting
a longer message and want to insert a snippet mid-text.
Managing snippets
Snippets are managed from Settings → Text Snippets. Each snippet has:
- Title — displayed in the dropdown list
- Shortcut — optional short keyword (e.g.
thanks) used for filtering when you type//thanks - Content — the text that gets inserted
- Owner — leave blank to create a global snippet visible to all users; set to a user for a personal snippet (admins only)
- Sequence — controls display order in the dropdown
The default filter shows your own snippets. Switch to Global to see company-wide snippets, or All to see everything. Snippets can be archived instead of deleted — use the Action → Archive menu and the Archived search filter to manage them.
Key features
- Works everywhere — any
<input>,<textarea>, orcontenteditableelement in the Odoo backend, including the HTML editor and chatter - Global and personal snippets — company-wide library managed by admins, plus a private library for each user
- Shortcut keywords — type
//invto immediately narrow to snippets tagged with the inv shortcut - Chatter toolbar button — one-click access to the full snippet list directly from the compose area
- Keyboard navigation — use ↑ ↓ to navigate the dropdown and Enter to insert; Escape to dismiss
- Instant filtering — snippets are cached locally (5-minute TTL); subsequent searches are synchronous
- No configuration required — install and start creating snippets; no settings to toggle, no cron jobs
Access and permissions
All internal users can read all snippets (global and personal) and create their own. Write and delete access is restricted by record rules:
- Regular users can edit and delete only their own snippets (
user_id = current user) - Global snippets (
user_idblank) can only be edited or deleted by administrators - Administrators have unrestricted access to all snippets
Requirements
- Odoo 19 (Community or Enterprise)
- Depends on:
mail - License: LGPL-3 · Free to use and modify
Please log in to comment on this module