Cheers to @Kache for mentioning what should have been obvious: just base64 encode to send plaintext.
For future reference, this is how I did so.
Client-side:
tag = base64.b64encode(tag)
nonce = base64.b64encode(nonce)
# tag and nonce are packed into the payload dictionary
requests.post(url, json=payload, verify="myShnazzyCertificate.pem")
Server-side:
payload = flask.request.json
# tag and nonce are unpacked from the above payload dictionary and then
tag = base64.b64decode(tag)
nonce = base64.b64decode(nonce)
# ... tag and nonce are used successfully to decrypt data