Non-system users are able to participate in system approvals, however because of the inherit restrictions, there is a different interface when dealing with these approvers.
Here is a scenario of a draft approval record, when a simple item is being submitted for approval. Note that the user type is listed as External. In this process it is important that the email address is correct as this is the only way for the system to send an approval request to the individual.
The approval request will get sent, the email can link the individual to an approval screen in system where they can make the decision.
When the individual clicks the approve or reject button, this window will appear as verification that the decision has been submitted:
In the process where the approval is captured in the system, the email to the external approver appears like this:
External users aren't allowed to access the actual record in the system, so they get given a simplified screen for reviewing the submission.
In either scenario the outcome of the approval is handled exactly the same as any other approval - the submission will either move to the next approval, or if there is none, then the final decision is logged with an email going back to the submitter notifying them of the outcome.