Congratulations Garrett.
You have learned a valuable skill. You will find this useful even fro HL/7 to HL/7 and other various message structures.
The Xlate always attempts to produce a message so even though you are using a CONTINUE, when you are finished the Xlate is not. As you discovered, you need to put a SUPPRESS in such a location that it tells the Xlate not produce the message it has built (normally if I recall correctly that is the last one you CONTINUED which looks like a duplicate of the CONTINUE unless you understand the need for the SUPPRESS).
The SUPPRESS does not have to be the first Action in the Xlate to be effective in these cases, however that is a good placement. It is what I do whenever I am creating multiple outbound messages from one inbound message. The SUPPRESS does need to be unconditionally executed wherever it is placed in these cases.
Placing it first also gives me (and others) a immediate visual that clues me that the Xlate is controlling the output of messages.
One suggestion I might make is to add COMMENTS (in my mind you cannot have too many COMMENTS) so that it is clear to the uninitiated who might follow you (and to you if too much time has gone by) of wht is intended and why it is being done.
Again congratulations!!
email: jim.kosloskey@jim-kosloskey.com 29+ years Cloverleaf, 59 years IT - old fart.