Skip to main content
Amazon

Only a posted settlement can be reversed: what it means and how to fix it

The message Only a posted settlement can be reversed. can appear when you press Reverse and the settlement has no journal entry or is not in the posted state; here is the exact condition and a checklist to sort it out.

FlexigoTech · Editor in charge: Víctor Gómez · Updated 5 November 2026

Key facts

Module
Amazon
Versions
Odoo 17, 18, 19 and 20
Checked
in the connector's source code, version 20.0 · against the sources linked at the end
Reading time
4 min

When this message appears

It can appear when you press the Reverse button on a settlement form in Amazon Connector for Odoo. Before changing anything, the module looks at the Move field and the State field of that settlement. If Move is empty, or if State is not Posted to accounting, the action stops with the message and nothing is saved. The text is in the module for Odoo 17, 18, 19 and 20.

Diagram made from code, not an Odoo screen: the settlements menu, the Reverse button, the Move and State fields, and the message, with the English labels from the module code
Diagram of the route that leads to the message, with the English labels from the module code (not an Odoo screenshot).
Your Odoo doesn't talk to Amazon, Temu or Shopify?
Video: Your Odoo doesn't talk to Amazon, Temu or Shopify?

What it means in practice

It is a check the module makes before it touches the entry. Reverse is there to undo the entry of a settlement that has already been posted so it can be corrected; if the settlement has no entry to undo, or is not in the posted state, the module stops.

The message is about two items on the form: the entry and the state. Nothing else feeds into it, only those two conditions joined by 'or'.

The button is only visible when State is Posted to accounting. On a settlement in Imported (the default value) it does not appear. So if you reach the message from the button, the first thing to look at is the Move field: the condition in the code is also met when that field is empty.

The diagram below gives the text of the same message in Spanish, German, French, Italian and Portuguese.

Diagram made from code using the module translations, not an Odoo screen: the same message in Spanish, German, French, Italian and Portuguese
Diagram with the text of the message in Spanish, German, French, Italian and Portuguese (not an Odoo screenshot).

Checklist to resolve it

Before pressing Reverse

  • Check that you can see the menu Amazon › Finances › Settlements (payouts & fees). Each part (Amazon, Finances and Settlements (payouts & fees)) asks for the Viewer permission; if you do not have it, you do not see that part.
  • Open the settlement form under Settlements, not just the list.
  • Look at State: it shows on the form and also in the list. Its values are Imported and Posted to accounting.
  • Look at Move in the Reconciliation group of the form. It is read-only: the code writes it, not you. Its help text says: Journal entry created when posted to accounting.

When you press the button

  • Find Reverse. It only appears when State is Posted to accounting.
  • Read the confirmation before accepting: Reverse this settlement's journal entry and reopen it for re-posting?
  • If the message appears, the action stops as it runs and nothing is saved.

If the message appears

  • Check Move. If it is empty, the condition in the code is met and the action stops. That field is filled by the Post to Accounting and Post anyway (force) buttons, and emptied by Reverse.
  • Check State. If it is not Posted to accounting, the other part of the condition is met. Remember that in Imported the button is not visible.
  • Do not try to type the entry in by hand: the field is read-only on the form.
  • Look at State and Move together again before retrying: what decides whether this message appears is those two values.

When the reversal does go through (Odoo 20 code)

  • Check that State has gone back to Imported and that Move is empty: that is what the method writes when it finishes.
  • Look for the message the module leaves on the form: Settlement entry … reversed by …; the settlement is reopened so it can be corrected and posted again.
  • Note the reference of the reversal: the method asks for the entry to be reversed with the reference Reversal of … and today's date.
  • Correct whatever was wrong and, to post again, use Post to Accounting, the button that fills Move.

Worth remembering

The condition has two parts joined by 'or': a missing entry or a different state is enough to show the message. And because the warning comes before any change, seeing it leaves neither the entry nor the state of the settlement half-done.

The check belongs to the method that Reverse runs: the message can appear when you press that button. What decides whether it appears is what you see on the form, State and Move. If you wanted to undo an entry, first confirm that the settlement is posted and that its entry is still on the form.

If you need help with settlement accounting

FlexigoTech implements Odoo 17, 18, 19 and 20 and builds custom connectors and integrations. If you want to review how you post and correct settlements in your Odoo, get in touch. The module is on its page at flexigotech.com and on its Odoo Apps listing, published for Odoo 17, 18, 19 and 20.

Keep reading

Checked in the connector's source code (version 20.0) and the linked sources

Sources