added payment processing