If you are using the Google Listings & Ads plugin to sync products to merchant center, the solution suggested by @douglsmith will not work. The GLA plugin automatically prepends your product id with “gla_” before submitting to merchant center as item_id (seems unnecessary). So if your product id is “123”, then it will get an item_id of “gla_123” in merchant center.
To be fair, @douglsmith solution does work if you had another implementation that uses the actual product id as item id and it could be helpful for a use case outside of merchant center checkout links.
Seems like there should be a workaround by setting up an ID rule in merchant center, but I am too scared to try. Altering item ID after a product has been established could really mess up ad learning and/or search ranking. Another workaround I did investigate was setting the “checkout link template” at product level either manually or with feed rules, but neither of those are available in merchant center as of now.
A true solution would be for the Google Listings & Ads plugin (created and managed by WooCommerce) to send the actual product id to merchant center. There is no option in the plugin to disable/edit the prepended “gla_” as of now, and even that would only hurt those of us who are already using the plugin (existing products would lose learning/ranking).
If somebody knows whether setting up an ID rule will screw up ads/rankings, please chime in! That would be a simple way to get the @douglsmith solution to work on an account level, but the note that says “Note: After updating your ID rule, you may not be able to show ads or listings from that feed for several hours.” has me too scared to try.