diff --git a/generate_oly_score.py b/generate_oly_score.py
index d24b1cd9f865d86ed2fe213b94f875d51b7b008d..983a68092041fab16c6ca0eef43b2aa131981785 100755
--- a/generate_oly_score.py
+++ b/generate_oly_score.py
@@ -555,9 +555,12 @@ def generate_webshop_files (settings, lily_files, tex_files):
       score_info = score_types.get (i, {});
       score_type = score_info.get ("Name", "");
       score_id = score_info.get ("Number", "XXX");
-      scores.append({"sku": score_settings.get ("scorenumber")+"-"+score_id, "type": score_type });
+      sid = int(score_id);
+      scores.append({"id": sid, "sku": score_settings.get ("scorenumber")+"-"+score_id, "type": score_type });
   
-  webshop_settings["webshop_editions"] = scores;
+  webshop_settings["webshop_editions"] = sorted (scores, key=lambda k: k.get("id", 0));
+  
+  webshop_settings.update (webshop_settings.get("defaults", {}));
   file = write_file (settings.out_dir, "webshop_descriptions.def", template.render (webshop_settings));