Checkout procedure updates
Add payment abstract class