The documentation for SIM says that product info can not be passed through SIM and back to teh relay response page. Has anyone found a work around for this? I don't want to enter the customer's order in the my db until the card clears.
You're right, the documentation does say that. However, it could be wrong, have you tried logging the output to see if it returns x_line_item?
Even if it -is- wrong, why couldn't you just add a "completed" boolean to your orders table, insert each order up front, pass the record ID with your order, then update completed to "true" if the order goes through ok? An automated process could then delete the non-completed orders every so often.
EDIT: Also, if the Transaction Details API gives you full details, you could look up the transaction from the relay response page using the transaction ID.