一键导入
odoo-accounting
Odoo Accounting operations — manage invoices, bills, journal entries, payments, and financial reports.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Odoo Accounting operations — manage invoices, bills, journal entries, payments, and financial reports.
用 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 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.
Odoo Contacts operations — manage companies, individuals, addresses, and partner data.
| name | odoo-accounting |
| description | Odoo Accounting operations — manage invoices, bills, journal entries, payments, and financial reports. |
| version | 1.0.0 |
| author | Hermes |
| license | MIT |
| platforms | ["linux","macos","windows"] |
| metadata | {"hermes":{"tags":["odoo","accounting","invoices","bills","payments","journal"],"parent_skill":"odoo"}} |
Manage customer invoices, vendor bills, journal entries, and payments.
Prerequisite: odoo skill must be set up. ODOO = python scripts/odoo_api.py.
ODOO accounting invoices --limit 20
ODOO accounting invoices --state posted
ODOO accounting invoices --invoice-type in_invoice
ODOO accounting bills --limit 20
ODOO accounting bills --state posted
ODOO accounting get-invoice 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
# Get portal URL first
ODOO model account.move call get_portal_url --method-args '[11]'
# Use curl to download PDF
curl -L -o invoice.pdf "http://host.docker.internal:8069/my/invoices/11?access_token=TOKEN&download=1"
Note: Direct PDF generation methods like action_get_invoice_pdf and action_document are not available. Use the portal URL method instead.
ODOO accounting create-invoice --partner-id 23
ODOO model account.move.line create '{"move_id": 11, "product_id": 32, "quantity": 10, "price_unit": 50.0}'
ODOO accounting validate 11
Scenario: Creating a sales order, confirming it, and generating an invoice in sequence.
Workflow:\n1. Create sales order: ODOO sales create --partner-id [partner_id]\n2. Add order lines: ODOO model sale.order.line create '[{"order_id": [order_id], "product_id": [product_id], "product_uom_qty": [quantity], "price_unit": [unit_price]}]'\n3. Confirm sales order: ODOO sales confirm [order_id]\n4. Generate invoice: ODOO accounting create-invoice --partner-id [partner_id]\n5. Validate invoice: ODOO accounting validate [invoice_id]\n6. Verify: Check invoice status and payment state
ODOO accounting validate 25
ODOO accounting get-invoice 25
# Access portal URL for PDF download:
ODOO accounting portal-url 25
ODOO accounting journal-items 25
ODOO accounting payments --limit 20
ODOO accounting statistics
ODOO model account.move call get_portal_url --method-args '[invoice_id]'
{
$ODOO_DB: true,
"result": [
{
"id": 25,
"name": "INV/2026/00025",
"ref": null,
"partner_id": [3, "Acme Corp"],
"date": "2026-05-11",
"invoice_date": "2026-05-11",
"state": "posted",
"move_type": "out_invoice",
"amount_total": 1250.0,
"amount_untaxed": 1000.0,
"currency_id": [1, "USD"],
"payment_state": "not_paid"
}
]
}
{
$ODOO_DB: true,
"result": [
{"id": 45, "name": "Product X", "account_id": [15, "200000 Product Sales"], "debit": 0.0, "credit": 1000.0, "balance": -1000.0, "date": "2026-05-11"},
{"id": 46, "name": "", "account_id": [10, "121000 Account Receivable"], "debit": 1250.0, "credit": 0.0, "balance": 1250.0, "date": "2026-05-11"}
]
}
{
$ODOO_DB: true,
"result": {"draft": 5, "posted": 42, "customer_invoices": 30, "vendor_bills": 12}
}
| Model | Use |
|---|---|
account.move | Journal entries, invoices, bills |
account.move.line | Journal items (debits/credits) |
account.payment | Payments |
account.journal | Journals (sale, purchase, bank, cash) |
| Type | Description |
|---|---|
out_invoice | Customer invoice |
out_refund | Customer credit note |
in_invoice | Vendor bill |
in_refund | Vendor credit note |
entry | Miscellaneous journal entry |
draft → posted
↘ cancel
| Model | Use |
|---|---|
account.move | Journal entries, invoices, bills |
account.move.line | Journal items (debits/credits) |
account.payment | Payments |
account.journal | Journals (sale, purchase, bank, cash) |
| Type | Description |
|---|---|
out_invoice | Customer invoice |
out_refund | Customer credit note |
in_invoice | Vendor bill |
in_refund | Vendor credit note |
entry | Miscellaneous journal entry |
draft → posted
↘ cancel
account.move.line model is often necessary before validation.ODOO model product.product search to verify product availability.# Authenticate
UID=$(curl -s -X POST $ODOO_URL/jsonrpc -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"call","params":{"service":"common","method":"authenticate","args":[$ODOO_DB,$ODOO_USER,$ODOO_PASS,{}]},"id":1}' | python3 -c "import sys,json;print(json.load(sys.stdin)['result'])")
# List Accounting
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\",$UID,$ODOO_PASS,\"account.move\",\"search_read\",[[]],{\"limit\":10,\"fields\":[[\"name\", \"partner_id\", \"amount_total\", \"state\"]]}},\"id\":2}"
# Authenticate
UID=$(curl -s -X POST $ODOO_URL/jsonrpc -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"call","params":{"service":"common","method":"authenticate","args":[$ODOO_DB,"$ODOO_USER","$ODOO_PASS",{}]},"id":1}' | python3 -c "import sys,json;print(json.load(sys.stdin)['result'])")
# List Accounting
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\",$UID,\"$ODOO_PASS\",\"account.move\",\"search_read\",[[]],{\"limit\":10,\"fields\":[["name", "partner_id", "amount_total", "state"]]}},\"id\":2}"