Invalid currency "$" when sending confirmation and receipt
We had the same issue. The cause of the membership creation issue is with the email template syntax. Look in your system-generated messages and change the receipt templates you are using with, any instance of:

{$line.unit_price|crmMoney:$currency}
{$line.line_total|crmMoney:$currency}
{$formValues.total_amount|crmMoney:$currency}


Needs to be changed to: 

{$line.unit_price|crmMoney}
{$line.line_total|crmMoney}
{$formValues.total_amount|crmMoney}