Sending a custom triggered email to a non-member

What you could do is create a backend function for the onOrderPaid() event. This will give you the users email. From there you can create a contact in the CRM and then send the email to the contact.

Here is links to all of the support pages -
onOrderPaid()
createContact
emailContact