After a long debug analysis I understand that the problem is related to missing linenumber associated to the membership type. I solved saving every records with a price without . (Maybe it is enough to save)
I lose the info of the previous type (it/s visible in contribution tab)
If the loss of info is key issue you could try this extension which lets you view the changes that occur when a member renews but up/downgrades their Memb Type
The dates are only updated when the payment is completed. If you allow for offline payment (e.g. cheque), then the dates are not updated yet when the invoice email is sent.
In that case, the subject of the message should be invoice rather than receipt.
As a workaround, you might want to remove the dates from the template or create tokens but those template ...
Here's what I ended up doing. It feels a bit weird, but so far it seems to do the trick.
Having created the fields I need for the two contacts, and ensuring that buyer is contact 1 (because the contribution appears to only work for contact 1), I can then specify a membership that will be applied to contact 2.
Even though I've set a minimum price for the ...