diff --git a/webservice/webservice.py b/webservice/webservice.py
index 3aa21df611baad79ec4f0091c1e26da0a85f742a..07a62844626d5cb129e22d725dbddd80c940491f 100644
--- a/webservice/webservice.py
+++ b/webservice/webservice.py
@@ -325,7 +325,10 @@ def update_job_db(config):
     logging.info("Starting config db handling")
     conn = init_job_db(config)
     mdc = init_md_client(config)
-    kafka_prod = KafkaProducer(bootstrap_servers=config['kafka']['brokers'])
+    kafka_prod = KafkaProducer(
+        bootstrap_servers=config['kafka']['brokers'],
+        value_serializer=lambda d: json.dumps(d).encode('utf-8'),
+    )
     kafka_topic = config['kafka']['topic']
     time_interval = int(config['web-service']['job-update-interval'])
 
@@ -381,13 +384,13 @@ def update_job_db(config):
                         action, rid, flg,
                     )
                     if action == 'CORRECT':
-                        kafka_prod.send(kafka_topic, json.dumps({
+                        kafka_prod.send(kafka_topic, {
                             'event': 'correction_complete',
                             'proposal': proposal,
                             'run': run,
                             'detector': det,
                             'success': (flg == 'A'),  # A for Available
-                        }))
+                        })
                 msg = "\n".join(statii)
                 msg_debug = f"Update MDC {rid}, {msg}"
                 logging.debug(msg_debug.replace('\n', ', '))