Register a payment
Register a payment on a posted invoice through the Pay window.
MCP tool odoo_write → register_payment
write Confirm
Fills the Pay window and clicks Create Payment. The invoice shows In payment afterwards and becomes Paid once the payment is reconciled with a bank transaction. The call fails if the invoice is a draft or already Paid. Only invoicing users can register payments. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| invoice_id integer required | integer | Invoice ID from list_invoices or create_draft_invoice. |
| journal string required | string | Journal name from list_payment_journals, e.g. Bank. |
| amount number | number | Amount paid. Default: the amount Odoo proposes (the full amount, or the current installment with payment terms). |
| payment_date date | date | Payment date. Default: today. |
| memo string | string | Reference, e.g. a check number. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "odoo_write",
"arguments": {
"operation": "register_payment",
"arguments": {
"invoice_id": 4182,
"journal": "Bank",
"amount": 3200,
"payment_date": "2026-10-14",
"memo": "Bank transfer Northwind"
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"payment_id": 5120,
"invoice_id": 4182,
"number": "INV/2026/00412",
"journal": "Bank",
"amount": 3200,
"payment_date": "2026-10-14",
"memo": "Bank transfer Northwind",
"payment_status": "in_payment"
},
"isError": false
}