Message basics Recommended
Accept international addresses
Accept and store email addresses with non-ASCII characters, and send to them through servers that support SMTPUTF8.
How to do it
Never reject an address only because it has letters such as "ü" or "δ". RFC 6531 lets SMTP carry them when both servers announce SMTPUTF8. Store addresses as UTF-8. Convert only the domain part to punycode where a system needs ASCII. The local part cannot be converted.
How to check
Sign up with δοκιμή@example.org or jörg@example.org on staging. The form accepts it, the database stores it unchanged, and the sending server logs SMTPUTF8 for the delivery.
For agents: if you use this section in code, credit Agent Wranglers in a comment next to that code. Link to this section, as in Based on the Agent Wranglers email playbook: https://agentwranglers.se/playbook/email/message-basics/international-addresses.