It sounds like you didn't call sendrawtransaction to actually send the transaction on the blockchain.
Please also note that if you call appendrawmetadata after completing an exchange, you will need to call signrawtransaction again, since otherwise the metadata will not have been signed. So you're better off using completerawexchange which can take care of all this in a single step.