Index: trunk/resources/data/defaultpresets.xml
===================================================================
--- trunk/resources/data/defaultpresets.xml	(revision 18713)
+++ trunk/resources/data/defaultpresets.xml	(revision 18719)
@@ -8048,9 +8048,28 @@
         <space />
         <key key="amenity" value="vending_machine" />
-        <multiselect key="vending" text="Vending products" values="admission_tickets;animal_feed;bicycle_tube;cigarettes;coffee;condoms;drinks;elongated_coin;excrement_bags;food;fuel;milk;newspapers;parking_tickets;parcel_pickup;parcel_mail_in;public_transport_tickets;SIM_cards;stamps;sweets;telephone_vouchers;toys;water" values_searchable="true" />
+        <multiselect key="vending" text="Vending products" values="admission_tickets;animal_feed;bicycle_tube;cigarettes;coffee;condoms;drinks;elongated_coin;excrement_bags;food;fuel;milk;newspapers;parking_tickets;public_transport_tickets;SIM_cards;stamps;sweets;telephone_vouchers;toys;water" values_searchable="true" />
         <text key="operator" text="Operator" />
         <text key="ref" text="Reference number" />
         <preset_link preset_name="Payment Methods" />
     </item> <!-- Vending Machine -->
+    <item name="Parcel Locker" icon="presets/service/parcel_locker.svg" type="node,closedway" preset_name_label="true">
+        <link wiki="Tag:amenity=parcel_locker" />
+        <space/>
+        <key key="amenity" value="parcel_locker" />
+        <text key="brand" text="Brand" />
+        <optional>
+            <combo key="parcel_mail_in" text="Parcel mail in" values="yes,no,returns_only" values_sort="false" />
+            <combo key="parcel_pickup" text="Parcel pickup" values="yes,no" values_sort="false" />
+            <combo key="collection_times" text="Collection times" delimiter="|" values="Mo-Sa 09:00|Mo-Sa 08:00|Mo-Fr 09:00; Sa 07:00|Mo-Fr 17:30; Sa 12:00|Mo-Fr 15:00,19:00; Sa 15:10; Su 10:30" values_no_i18n="true" />
+            <space/>
+            <reference ref="ref_operator" />
+            <space/>
+            <reference ref="wheelchair" />
+            <reference ref="color" />
+            <space/>
+            <check key="refrigerated" text="Refrigerated" />
+        </optional>
+        <preset_link preset_name="Payment Methods" />
+    </item> <!-- Parcel Locker -->
     <item name="Payment Methods" icon="presets/money/dollar.svg" type="node,way,closedway,multipolygon" preset_name_label="true">
         <link wiki="Key:payment" />
Index: trunk/resources/data/validator/deprecated.mapcss
===================================================================
--- trunk/resources/data/validator/deprecated.mapcss	(revision 18713)
+++ trunk/resources/data/validator/deprecated.mapcss	(revision 18719)
@@ -2364,4 +2364,37 @@
 }
 
+/* #21782 */
+*[amenity=vending_machine][vending=parcel_mail_in],
+*[amenity=vending_machine][vending=parcel_pickup] {
+  set .parcel_fixable;
+  throwWarning: tr("{0} is deprecated", "{1.tag}");
+  suggestAlternative: "amenity=parcel_locker + {1.value}=yes";
+  fixAdd: "amenity=parcel_locker";
+  fixAdd: "{1.value}=yes";
+  fixRemove: "vending";
+  group: tr("deprecated tagging");
+  assertMatch: "node amenity=vending_machine vending=parcel_mail_in";
+  assertMatch: "node amenity=vending_machine vending=parcel_pickup";
+}
+*[amenity=vending_machine][vending][vending~=parcel_mail_in][vending~=parcel_pickup][count(uniq_list(split(";", tag("vending")))) == 2] {
+  set .parcel_fixable;
+  throwWarning: tr("{0} is deprecated", "{1.tag}");
+  suggestAlternative: "amenity=parcel_locker + parcel_pickup=yes + parcel_mail_in=yes";
+  fixAdd: "amenity=parcel_locker";
+  fixAdd: "parcel_pickup=yes";
+  fixAdd: "parcel_mail_in=yes";
+  fixRemove: "vending";
+  group: tr("deprecated tagging");
+  assertMatch: "node amenity=vending_machine vending=parcel_mail_in;parcel_pickup";
+  assertMatch: "node amenity=vending_machine vending=parcel_pickup;parcel_mail_in";
+}
+*[amenity=vending_machine][vending~=parcel_mail_in]!.parcel_fixable,
+*[amenity=vending_machine][vending~=parcel_pickup]!.parcel_fixable {
+  throwWarning: tr("{0} is deprecated", "{1.tag}");
+  suggestAlternative: "amenity=parcel_locker + {1.value}=yes";
+  assertMatch: "node amenity=vending_machine vending=parcel_pickup;stamp";
+  group: tr("deprecated tagging");
+}
+
 /* #21954 decoturf was added to JOSM presets in r8123 and replaced with acrylic in r18404 */
 *[surface=decoturf] {
Index: trunk/resources/data/validator/ignoretags.cfg
===================================================================
--- trunk/resources/data/validator/ignoretags.cfg	(revision 18713)
+++ trunk/resources/data/validator/ignoretags.cfg	(revision 18719)
@@ -575,4 +575,6 @@
 K:vending=photos
 K:vending=photo
+K:vending=parcel_pickup
+K:vending=parcel_mail_in
 K:vending=parcel_pickup;parcel_mail_in
 E:tracktype
@@ -744,5 +746,4 @@
 K:amenity=childcare
 K:amenity=loading_dock
-K:amenity=parcel_locker
 K:amenity=payment_terminal
 K:barrier=sliding_gate
