بنقرة واحدة
odoo-sales
Odoo Sales operations — manage quotations, sales orders, order lines, and products.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Odoo Sales operations — manage quotations, sales orders, order lines, and products.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Odoo ERP integration for all 37 business modules. Entry point for Odoo operations — CRM, Sales, Inventory, Manufacturing, Purchase, Accounting, HR, Expenses, Contacts, Calendar, Discuss, Project, Timesheets, Time Off, Attendances, Recruitment, Fleet, Email Marketing, Events, Website, Link Tracker, Dashboards, POS, Delivery, Loyalty, Payments, SMS, Live Chat, Maintenance, Survey, Forum, eLearning, Planning, Restaurant, Certificate, and Data Recycle.
Cross-skill workflow: Odoo ERP health audit, infographic summary, PPTX report, and email delivery via Gmail.
Odoo Accounting operations — manage invoices, bills, journal entries, payments, and financial reports.
Odoo Attendances operations — manage employee check-ins, check-outs, and attendance records.
Odoo Calendar operations — manage events, meetings, and attendee tracking.
Odoo Certificate operations — manage certificates, templates, and certificate issuance.
| name | odoo-sales |
| description | Odoo Sales operations — manage quotations, sales orders, order lines, and products. |
| version | 1.0.0 |
| author | Hermes |
| license | MIT |
| platforms | ["linux","macos","windows"] |
| metadata | {"hermes":{"tags":["odoo","sales","quotations","orders","products"],"parent_skill":"odoo"}} |
Manage quotations, sales orders, order lines, and salable products.
Prerequisite: odoo skill must be set up. ODOO = python scripts/odoo_api.py.
ODOO sales list-quotations --limit 20
ODOO sales list-quotations --state sent
ODOO sales list-quotations --partner-id 3
ODOO sales list-orders --limit 20
ODOO sales list-orders --state done
ODOO sales get 12
ODOO sales create --partner-id 3
ODOO sales create --partner-id 3
ODOO model sale.order.line create '{"order_id": 8, "product_id": 32, "product_uom_qty": 10, "price_unit": 50.0}'
ODOO sales confirm 8
Scenario: Creating a sales order for a new customer with products that don't exist in the system.
Workflow:
ODOO sales products --limit 50ODOO model product.product create '{"name": "Product Name", "default_code": "CODE-001", "list_price": 50.0, "type": "consu"}'ODOO contacts list --limit 20 or create partner directlyODOO sales create --partner-id [partner_id]ODOO model sale.order.line create '{"order_id": [order_id], "product_id": [product_id], "product_uom_qty": [quantity], "price_unit": [unit_price]}'ODOO sales confirm [order_id]ODOO sales get [order_id] and ODOO sales order-lines [order_id]Specific to Basmati Rice Sales: When creating sales orders for rice products, use this exact pattern:
ODOO model sale.order.line create '[{"order_id": [order_id], "product_id": 1, "product_uom_qty": [quantity], "price_unit": 75.0}]'For consumable products (type="consu"):
{
"name": "Product Name",
"default_code": "CODE-001",
"list_price": 50.0,
"type": "consu"
}
For services (type="service"):
{
"name": "Service Name",
"default_code": "SVC-001",
"list_price": 0.0,
"type": "service"
}
{
"name": "Customer Name",
"email": "customer@example.com"
}
Scenario: Creating a sales order for a new customer with products that don't exist in the system.
Workflow:
ODOO sales products --limit 50ODOO model product.product create '{"name": "Product Name", "default_code": "CODE-001", "list_price": 50.0, "type": "consu"}'ODOO contacts list --limit 20 or create partner directlyODOO sales create --partner-id [partner_id]ODOO model sale.order.line create '[{"order_id": [order_id], "product_id": [product_id], "product_uom_qty": [quantity], "price_unit": [unit_price]}]'ODOO sales confirm [order_id]ODOO sales get [order_id] and ODOO sales order-lines [order_id]--name "Name" without complex arguments. When API arguments fail, use raw model operations.account.move.line model is often necessary before validation.ODOO model product.product search to verify product availability.[ID] for calendar events.
Workflow:\n1. Check if product exists: ODOO sales products --limit 50\n2. Create product if missing: ODOO model product.product create '{"name": "Product Name", "default_code": "CODE-001", "list_price": 50.0, "type": "consu"}'\n3. Check if partner exists: ODOO contacts list --limit 20 or create partner directly\n4. Create sales order: ODOO sales create --partner-id [partner_id]\n5. Add order line: ODOO model sale.order.line create '{"order_id": [order_id], "product_id": [product_id], "product_uom_qty": [quantity], "price_unit": [unit_price]}'\n6. Confirm order: ODOO sales confirm [order_id]\n7. Verify: ODOO sales get [order_id] and ODOO sales order-lines [order_id]Specific to Basmati Rice Sales: When creating sales orders for rice products, use this exact pattern:
ODOO model sale.order.line create '[{"order_id": [order_id], "product_id": 1, "product_uom_qty": [quantity], "price_unit": 75.0}]'For consumable products (type="consu"):\njson\\n{\\n \\\"name\\\": \\\"Product Name\\\",\\n \\\"default_code\\\": \\\"CODE-001\\\",\\n \\\"list_price\\\": 50.0,\\n \\\"type\\\": \\\"consu\\\"\\n}\\n\n\nFor services (type="service"):\njson\\n{\\n \\\"name\\\": \\\"Service Name\\\",\\n \\\"default_code\\\": \\\"SVC-001\\\",\\n \\\"list_price\\\": 0.0,\\n \\\"type\\\": \\\"service\\\"\\n}\\n\n\n### Partner Creation Pattern\n\njson\\n{\\n \\\"name\\\": \\\"Customer Name\\\",\\n \\\"email\\\": \\\"customer@example.com\\\"\\n}\\n
Specific to Basmati Rice Sales: When creating sales orders for rice products, use this exact pattern:
ODOO model sale.order.line create '[{"order_id": [order_id], "product_id": 1, "product_uom_qty": [quantity], "price_unit": 75.0}]'For consumable products (type="consu"):\njson\\n{\\n \\\"name\\\": \\\"Product Name\\\",\\n \\\"default_code\\\": \\\"CODE-001\\\",\\n \\\"list_price\\\": 50.0,\\n \\\"type\\\": \\\"consu\\\"\\n}\\n\n\nFor services (type="service"):\njson\\n{\\n \\\"name\\\": \\\"Service Name\\\",\\n \\\"default_code\\\": \\\"SVC-001\\\",\\n \\\"list_price\\\": 0.0,\\n \\\"type\\\": \\\"service\\\"\\n}\\n\n\n### Partner Creation Pattern\n\njson\\n{\\n \\\"name\\\": \\\"Customer Name\\\",\\n \\\"email\\\": \\\"customer@example.com\\\"\\n}\\n
\nODOO accounting create-invoice --partner-id 23\nODOO model account.move.line create '{\"move_id\": 11, \"product_id\": 32, \"quantity\": 10, \"price_unit\": 50.0}'\nODOO accounting validate 11\n
ODOO sales confirm 12
ODOO sales cancel 12
ODOO sales set-state 12 sent
ODOO sales order-lines 12
ODOO sales products --limit 30
ODOO sales statistics
For detailed step-by-step examples of complete sales order creation, see references/sales-order-creation-workflow.md.
{
$ODOO_DB: true,
"result": [
{
"id": 12,
"name": "S00012",
"partner_id": [3, "Acme Corp"],
"date_order": "2026-05-11",
"state": "draft",
"amount_total": 1250.0,
"amount_untaxed": 1000.0,
"currency_id": [1, "USD"],
"user_id": [2, "$ODOO_USER"],
"invoice_status": "to invoice",
"create_date": "2026-05-11 10:00:00"
}
]
}
{$ODOO_DB: true, "result": true}
{
$ODOO_DB: true,
"result": {"draft": 5, "sent": 2, "sale": 15, "done": 3}
}
| Model | Use |
|---|---|
sale.order | Quotations and sales orders |
sale.order.line | Individual order lines |
product.template | Product templates (sale_$ODOO_DB=True) |
draft → sent → sale → done
↘ cancel
done.ODOO model sale.order search --domain '[["amount_total",">",5000]]'# List draft quotations
curl -s -X POST $ODOO_URL/jsonrpc -H "Content-Type: application/json" -d "{\"jsonrpc\":\"2.0\",\"method\":\"call\",\"params\":{\"service\":\"object\",\"method\":\"execute_kw\",\"args\":[\"$ODOO_DB\",2,\"$ODOO_PASS\",\"sale.order\",\"search_read\",[[\"state\",\"=\",\"draft\"]],{\"limit\":10,\"fields\":[\"name\",\"partner_id\",\"amount_total\",\"state\"]}]},\"id\":2}"
# Create quotation
curl -s -X POST $ODOO_URL/jsonrpc -H "Content-Type: application/json" -d "{\"jsonrpc\":\"2.0\",\"method\":\"call\",\"params\":{\"service\":\"object\",\"method\":\"execute_kw\",\"args\":[\"$ODOO_DB\",2,\"$ODOO_PASS\",\"sale.order\",\"create\",[{\"partner_id\":3}]]},\"id\":2}"
# Confirm quotation
curl -s -X POST $ODOO_URL/jsonrpc -H "Content-Type: application/json" -d "{\"jsonrpc\":\"2.0\",\"method\":\"call\",\"params\":{\"service\":\"object\",\"method\":\"execute_kw\",\"args\":[\"$ODOO_DB\",2,\"$ODOO_PASS\",\"sale.order\",\"action_confirm\",[1]]},\"id\":2}"