@Katie C.
This is hard to answer what may be the problem since dynamic product block is definitely available for placed order metric but than.. I’m not sure if you are using placed order metric or something else to trigger the flow
Another thing that I noticed people make mistakes is they use blocks from Abandoned Cart flow in another flows started with different metric which is not Started Checkout and then they are confused why the block doesn’t work for them.
Klaviyo codes are different for different metrics so maybe you just need to make sure that this flow is started by Placed Order metric and it is using the dynamic codes for this specific Metric.
Sorry I couldn’t be more specific but without looking directly into those emails all I can do is give suggestions on what I think may be the problem, hopefully it will help though.