REFACTOR payment