Default to UTF-8 for string payloads