Moving contacts to a different list

Hi, I have three lists in a workflow that I use to track people who have enquired, applied, and paid for a course.

When people register for the first time, they are added to the « enquired » list.

I need an automation or code solution to do the following:

  1. Move the person to the « applied » list after an application form is received. The person will be deleted from « enquired » after being added to the « applied » list.
  2. Move the person to the « paid » list after a payment is received. The person will be deleted from « applied » after being added to the « paid » list.

How can I do this?

Thanks, Jim