Хм, точно не знаю, что вы имеете в виду под "craigslist", но я знаю, что в приложении, которое я сейчас создал, я купил приложение SmarterMail из http://smartertools.com и использовал их .NET API как часть моего программного обеспечения.
Когда пользователь регистрируется и платит, я генерирую случайную строку (вы можете сделать ее более значимой, если хотите), а затем добавляете ее к имени домена (fke34s@example.com)
Оттуда я создаю адрес электронной почты через API SmarterMail и назначаю пароль на основе существующего пароля пользователя.
Затем у меня есть наблюдатель, который проверяет, не теряет ли платная подписка ... если да, я отключаю учетную запись на X дней. Если пользователь не обновляется через X дней, наблюдатель удаляет учетную запись (из-за этого мои пользователи не работают, поскольку я еще не заплатил за неограниченную лицензию).
Работает очень хорошо.