If the customer selects the payment method "Invoice" and we create an invoice in admin, status is always set to "paid". But that is not correct, because the customer did not pay yet.
So how can I change the status of an invoice?
Magento Stack Exchange is a question and answer site for users of the Magento e-Commerce platform. It only takes a minute to sign up.Sign up to join this community
AFAIK there's no backend configuration for this. Official docs for plugins in Magento 2: https://devdocs.magento.com/guides/v2.2/extension-dev-guide/plugins.html
You could create a plugin that sets the invoice status to "Pending" whenever an invoice is created. Maybe this answer can lead you in the right direction: Change invoice status in DB
After that, you can proceed to add methods that a backend user can change the invoice status.
When creating there should be a drop-down for
Payment Action see end of this dev doc page. Selecting
Not Capture should...
When the invoice is submitted, the system does not capture the payment. It is assumed that you will capture the payment through Magento at a later date. There is a Capture button in the completed invoice. Before capturing, you are able to cancel the invoice. After capturing you are able to create a credit memo and void the invoice.