add better payment processing with inline form, error messages