decode 'payload' to utf-8 and ignore invalid bytes