Index: /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/browser.py
===================================================================
--- /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/browser.py	(revision 17455)
+++ /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/browser.py	(revision 17456)
@@ -69,4 +69,20 @@
     'matricgown': ('2000249757', '8'),
     'lapel':      ('2000249757', '8'),
+
+    'hostel_maintenance': ('1006406795', '123'),
+    'late_registration':  ('5210006575', '51'),
+    'ent_combined':       ('6220029828', '51'),
+    'ent_registration_0': ('6220029828', '51'),
+    'ent_registration_1': ('6220029828', '51'),
+    'ent_registration_2': ('6220029828', '51'),
+    'ent_text_book_0':    ('6220029828', '51'),
+    'ent_text_book_1':    ('6220029828', '51'),
+    'ent_text_book_2':    ('6220029828', '51'),
+    'gst_registration_1': ('1010893123', '117'),
+    'gst_registration_2': ('1010893123', '117'),
+    'gst_text_book_0':    ('1010893123', '117'),
+    'gst_text_book_1':    ('1010893123', '117'),
+    'gst_text_book_2':    ('1010893123', '117'),
+    'gst_text_book_3':    ('1010893123', '117'),
     }
 
@@ -324,5 +340,5 @@
         # Clearance (acceptance) fee
 
-        if category.startswith('clearance'):
+        elif category.startswith('clearance'):
             # collect additional fees
             if self.context.p_category == 'clearance_incl':
@@ -354,4 +370,14 @@
 
         # Other fees
+        elif category in BANK_ACCOUNTS.keys():
+            bank = BANK_ACCOUNTS[category]
+            xmldict['institution_acct'] = bank[0]
+            xmldict['institution_bank_id'] = bank[1]
+
+
+
+
+
+
 
 
Index: /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/tests.py
===================================================================
--- /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/tests.py	(revision 17455)
+++ /main/waeup.aaue/trunk/src/waeup/aaue/interswitch/tests.py	(revision 17456)
@@ -205,10 +205,8 @@
         self.app['configuration']['2004'].interswitch_enabled = True
 
-    def disabled_test_interswitch_form_pt_school_fees(self):
-        self.certificate.study_mode = 'ug_pt'
-        self.student['studycourse'].entry_session = 2013
-        self.student['studycourse'].certificate.school_fee_3 = 50200.0
-        self.app['configuration']['2004'].union_fee = 1000.0
-        self.app['configuration']['2004'].welfare_fee = 500.0
+    def test_interswitch_form_regular_school_fees(self):
+        self.certificate.study_mode = 'ug_ft'
+        #self.student['studycourse'].entry_session = 2013
+        #self.student['studycourse'].certificate.school_fee_3 = 51750.0
         # Manager can access InterswitchForm
         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
@@ -219,8 +217,28 @@
         self.browser.getControl(name="form.p_category").value = ['schoolfee_incl']
         self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in self.browser.contents)
-        self.assertTrue('Amount Authorized' in self.browser.contents)
-        # 50200 + 1000 + 500 - 400
-        self.assertTrue('<span>51300.0</span>' in self.browser.contents)
+        self.assertTrue('ticket created' in
+                           self.browser.contents)
+        self.assertTrue('Amount Authorized' in
+                           self.browser.contents)
+        self.assertTrue('<span>239500.0</span>' in self.browser.contents)
+        self.payment_url = self.browser.url
+        self.browser.getLink("Pay via Interswitch", index=0).click()
+        self.assertTrue('Total Amount Authorized:'
+                        in self.browser.contents)
+        self.assertEqual(self.student.current_mode, 'ug_ft')
+        self.assertTrue(
+            '<input type="hidden" name="amount" value="24220000" />'
+            in self.browser.contents)
+        self.assertTrue(
+            'item_name="Tuition" item_amt="18400000" bank_id="7" '
+            'acct_num="1022438743"' in self.browser.contents)
+
+        self.student['studycourse'].entry_session = 2015
+        self.browser.open(self.payments_path + '/addop')
+        self.browser.getControl(name="form.p_category").value = ['schoolfee_2']
+        self.browser.getControl("Create ticket").click()
+        self.assertTrue('ticket created' in
+                           self.browser.contents)
+        self.assertTrue('<span>92000.0</span>' in self.browser.contents)
         self.payment_url = self.browser.url
         self.browser.getLink("Pay via Interswitch", index=0).click()
@@ -232,44 +250,26 @@
         self.student['payments']['xyz'] = acc_payment
         self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
-        self.assertEqual(self.student.current_mode, 'ug_pt')
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="5130000" />'
-            in self.browser.contents)
-        self.assertTrue(
-            'item_name="School Fee Plus" '
-            'item_amt="4810000" bank_id="7" '
-            'acct_num="1014847058"' in self.browser.contents)
-
-    def test_interswitch_form_regular_school_fees(self):
-        self.certificate.study_mode = 'ug_ft'
-        #self.student['studycourse'].entry_session = 2013
-        #self.student['studycourse'].certificate.school_fee_3 = 51750.0
-        # Manager can access InterswitchForm
-        self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
-        self.browser.open(self.payments_path)
-        IWorkflowState(self.student).setState('cleared')
-        self.student.nationality = u'NG'
-        self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['schoolfee_incl']
+        self.assertTrue(
+            '<input type="hidden" name="amount" value="9220000" />'
+            in self.browser.contents)
+        self.assertTrue(
+            'item_name="School Fees (2nd instalment)" item_amt="9200000" bank_id="7" acct_num="1022438743"' in self.browser.contents)
+
+        self.browser.open(self.payments_path + '/addop')
+        self.browser.getControl(name="form.p_category").value = ['schoolfee_1']
         self.browser.getControl("Create ticket").click()
         self.assertTrue('ticket created' in
                            self.browser.contents)
-        self.assertTrue('Amount Authorized' in
-                           self.browser.contents)
-        self.assertTrue('<span>239500.0</span>' in self.browser.contents)
-        self.payment_url = self.browser.url
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue('Total Amount Authorized:'
-                        in self.browser.contents)
-        self.assertEqual(self.student.current_mode, 'ug_ft')
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="24220000" />'
-            in self.browser.contents)
-        self.assertTrue(
-            'item_name="Tuition" item_amt="18400000" bank_id="7" '
-            'acct_num="1022438743"' in self.browser.contents)
-
-        self.student['studycourse'].entry_session = 2015
+        self.assertTrue('<span>147500.0</span>' in self.browser.contents)
+        self.payment_url = self.browser.url
+        self.browser.getLink("Pay via Interswitch", index=0).click()
+        self.assertTrue(
+            '<input type="hidden" name="amount" value="15020000" />'
+            in self.browser.contents)
+        self.assertTrue(
+            'item_name="Student Union Dues" item_amt="3000000" bank_id="7" acct_num="1019763348"' in self.browser.contents)
+        self.assertTrue(
+            'item_name="Tuition" item_amt="9200000" bank_id="7" acct_num="1022438743"' in self.browser.contents)
+
         self.browser.open(self.payments_path + '/addop')
         self.browser.getControl(name="form.p_category").value = ['schoolfee_2']
@@ -281,11 +281,4 @@
         self.browser.getLink("Pay via Interswitch", index=0).click()
         self.assertTrue(
-            'Please pay acceptance fee first' in self.browser.contents)
-        acc_payment = createObject('waeup.StudentOnlinePayment')
-        acc_payment.p_state = 'paid'
-        acc_payment.p_category = 'clearance'
-        self.student['payments']['xyz'] = acc_payment
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue(
             '<input type="hidden" name="amount" value="9220000" />'
             in self.browser.contents)
@@ -293,39 +286,7 @@
             'item_name="School Fees (2nd instalment)" item_amt="9200000" bank_id="7" acct_num="1022438743"' in self.browser.contents)
 
-        self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['schoolfee_1']
-        self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in
-                           self.browser.contents)
-        self.assertTrue('<span>147500.0</span>' in self.browser.contents)
-        self.payment_url = self.browser.url
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="15020000" />'
-            in self.browser.contents)
-        self.assertTrue(
-            'item_name="Student Union Dues" item_amt="3000000" bank_id="7" acct_num="1019763348"' in self.browser.contents)
-        self.assertTrue(
-            'item_name="Tuition" item_amt="9200000" bank_id="7" acct_num="1022438743"' in self.browser.contents)
-
-        self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['schoolfee_2']
-        self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in
-                           self.browser.contents)
-        self.assertTrue('<span>92000.0</span>' in self.browser.contents)
-        self.payment_url = self.browser.url
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="9220000" />'
-            in self.browser.contents)
-        self.assertTrue(
-            'item_name="School Fees (2nd instalment)" item_amt="9200000" bank_id="7" acct_num="1022438743"' in self.browser.contents)
-
-    def disabled_test_interswitch_form_pt_acceptance_fees(self):
-        self.certificate.study_mode = 'ug_pt'
-        self.app['configuration']['2004'].clearance_fee_ug_pt = 40200.0
-        self.app['configuration']['2004'].matric_gown_fee = 2000.0
-        self.app['configuration']['2004'].lapel_fee = 800.0
+    def test_interswitch_form_regular_acceptance_fees(self):
+        self.certificate.study_mode = 'ug_ft'
+        #self.app['configuration']['2004'].clearance_fee = 43050.0
         # Manager can access InterswitchForm
         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
@@ -336,22 +297,37 @@
         self.browser.getControl(name="form.p_category").value = ['clearance_incl']
         self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in  self.browser.contents)
-        self.assertTrue('Amount Authorized' in self.browser.contents)
-        # 40200 + 2000 + 800 - 400
-        self.assertTrue('<span>42600.0</span>' in self.browser.contents)
-        self.payment_url = self.browser.url
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="4260000" />'
-            in self.browser.contents)
-        self.assertTrue(
-            'item_name="Acceptance Fee Plus" '
-            'item_amt="4000000" bank_id="7" '
-            'acct_num="1014847058"' in self.browser.contents)
-
-    def test_interswitch_form_regular_acceptance_fees(self):
+        self.assertTrue('ticket created' in self.browser.contents)
+        self.assertTrue('Amount Authorized' in self.browser.contents)
+        self.assertTrue('<span>16800.0</span>' in self.browser.contents)
+        self.browser.getLink("Pay via Interswitch", index=0).click()
+        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
+        self.assertTrue(
+            '<input type="hidden" name="amount" value="1850000" />'
+            in self.browser.contents)
+        self.assertTrue(self.student['payments'].values()[0].net_amt == 16800)
+        self.assertTrue(
+            'item_name="Acceptance Fee" item_amt="1400000" bank_id="8" '
+            'acct_num="2000249757"' in self.browser.contents)
+
+        self.certificate.study_mode = 'bridge'
+        self.browser.open(self.payments_path + '/addop')
+        self.browser.getControl(name="form.p_category").value = ['clearance']
+        self.browser.getControl("Create ticket").click()
+        self.assertTrue('ticket created' in self.browser.contents)
+        self.assertTrue('Amount Authorized' in self.browser.contents)
+        self.assertTrue('<span>14000.0</span>' in self.browser.contents)
+        self.browser.getLink("Pay via Interswitch", index=0).click()
+        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
+        self.assertTrue(
+            '<input type="hidden" name="amount" value="1570000" />'
+            in self.browser.contents)
+        self.assertTrue(self.student['payments'].values()[1].net_amt == 14000)
+        self.assertTrue(
+            'item_name="Acceptance Fee" item_amt="1400000" bank_id="8" '
+            'acct_num="2000249757"' in self.browser.contents)
+
+    def deactivated_test_interswitch_form_concessional_fees(self):
         self.certificate.study_mode = 'ug_ft'
-        #self.app['configuration']['2004'].clearance_fee = 43050.0
+        self.app['configuration']['2004'].concessional_fee = 1567.0
         # Manager can access InterswitchForm
         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
@@ -360,45 +336,4 @@
         self.student.nationality = u'NG'
         self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['clearance_incl']
-        self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in self.browser.contents)
-        self.assertTrue('Amount Authorized' in self.browser.contents)
-        self.assertTrue('<span>16800.0</span>' in self.browser.contents)
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="1850000" />'
-            in self.browser.contents)
-        self.assertTrue(self.student['payments'].values()[0].net_amt == 16800)
-        self.assertTrue(
-            'item_name="Acceptance Fee" item_amt="1400000" bank_id="8" '
-            'acct_num="2000249757"' in self.browser.contents)
-
-        self.certificate.study_mode = 'bridge'
-        self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['clearance']
-        self.browser.getControl("Create ticket").click()
-        self.assertTrue('ticket created' in self.browser.contents)
-        self.assertTrue('Amount Authorized' in self.browser.contents)
-        self.assertTrue('<span>14000.0</span>' in self.browser.contents)
-        self.browser.getLink("Pay via Interswitch", index=0).click()
-        self.assertTrue('Total Amount Authorized:' in self.browser.contents)
-        self.assertTrue(
-            '<input type="hidden" name="amount" value="1570000" />'
-            in self.browser.contents)
-        self.assertTrue(self.student['payments'].values()[1].net_amt == 14000)
-        self.assertTrue(
-            'item_name="Acceptance Fee" item_amt="1400000" bank_id="8" '
-            'acct_num="2000249757"' in self.browser.contents)
-
-    def deactivated_test_interswitch_form_concessional_fees(self):
-        self.certificate.study_mode = 'ug_ft'
-        self.app['configuration']['2004'].concessional_fee = 1567.0
-        # Manager can access InterswitchForm
-        self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
-        self.browser.open(self.payments_path)
-        IWorkflowState(self.student).setState('admitted')
-        self.student.nationality = u'NG'
-        self.browser.open(self.payments_path + '/addop')
         self.browser.getControl(name="form.p_category").value = ['concessional']
         self.browser.getControl("Create ticket").click()
@@ -419,5 +354,5 @@
             in self.browser.contents)
 
-    def deactivated_test_interswitch_form_ticket_expired(self):
+    def test_interswitch_form_ticket_expired(self):
         self.certificate.study_mode = 'ug_pt'
         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
@@ -435,5 +370,5 @@
         self.assertEqual(self.student.current_mode, 'ug_pt')
         self.assertTrue(
-            '<input type="hidden" name="amount" value="87600" />'
+            '<input type="hidden" name="amount" value="257600" />'
             in self.browser.contents)
         delta = timedelta(days=8)
Index: /main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py
===================================================================
--- /main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py	(revision 17455)
+++ /main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py	(revision 17456)
@@ -617,5 +617,5 @@
         self.student['accommodation'].addBedTicket(bedticket)
 
-    def deactivated_test_maintenance_fee_payment(self):
+    def test_maintenance_fee_payment(self):
         self.certificate.study_mode = 'ug_ft'
         self.student['studycourse'].entry_session = 2013
@@ -687,5 +687,5 @@
         return
 
-    def deactivated_test_late_registration(self):
+    def test_late_registration(self):
         delta = timedelta(days=10)
         self.app['configuration'][
@@ -704,12 +704,12 @@
         # Ivie: The restitution was only for returning students of 2016/2017.
         # Hence, it is only valid for 2016 payment session returning students.
-        configuration = createObject('waeup.SessionConfiguration')
-        configuration.academic_session = 2016
-        self.app['configuration'].addSessionConfiguration(configuration)
-        self.app['configuration']['2016'].restitution_fee = 9999.0
-        self.browser.open(self.payments_path + '/addop')
-        self.browser.getControl(name="form.p_category").value = ['restitution']
-        self.browser.getControl("Create ticket").click()
-        self.student['payments'].values()[0].approveStudentPayment()
+        #configuration = createObject('waeup.SessionConfiguration')
+        #configuration.academic_session = 2016
+        #self.app['configuration'].addSessionConfiguration(configuration)
+        #self.app['configuration']['2016'].restitution_fee = 9999.0
+        #self.browser.open(self.payments_path + '/addop')
+        #self.browser.getControl(name="form.p_category").value = ['restitution']
+        #self.browser.getControl("Create ticket").click()
+        #self.student['payments'].values()[0].approveStudentPayment()
         # Make late registration fee payment
         self.student['studycourse'].current_session = 2004
@@ -736,5 +736,5 @@
         self.browser.getControl("Register course list").click()
         self.assertTrue('Course registration has ended. Please pay' in self.browser.contents)
-        self.student['payments'].values()[1].approve()
+        self.student['payments'].values()[0].approve()
         self.browser.getControl("Register course list").click()
         self.assertTrue('Course list has been registered' in self.browser.contents)
@@ -751,5 +751,5 @@
 
 
-    def deactivated_test_student_course_registration(self):
+    def test_student_course_registration(self):
         # Add more courses
         self.course2 = createObject('waeup.Course')
@@ -988,5 +988,5 @@
         return
 
-    def deactivated_test_student_GST_registration(self):
+    def test_student_GST_registration(self):
         configuration_1 = createObject('waeup.SessionConfiguration')
         configuration_1.academic_session = 2016
Index: /main/waeup.aaue/trunk/src/waeup/aaue/utils/utils.py
===================================================================
--- /main/waeup.aaue/trunk/src/waeup/aaue/utils/utils.py	(revision 17455)
+++ /main/waeup.aaue/trunk/src/waeup/aaue/utils/utils.py	(revision 17456)
@@ -93,5 +93,5 @@
         'clearance': 'Acceptance Fee without additional fees',
         'clearance_incl': 'Acceptance Fee incl. additional fees',
-        ##'hostel_maintenance': 'Hostel Accommodation Fee',
+        'hostel_maintenance': 'Hostel Accommodation Fee',
         #'application': 'Application Fee',
         #'bed_allocation': 'Bed Allocation Fee',
@@ -99,5 +99,5 @@
         ##'transcript_local': 'Local Transcript Fee',
         ##'transcript_inter': 'International Transcript Fee',
-        ##'late_registration': 'Late Course Registration Fee',
+        'late_registration': 'Late Course Registration Fee',
         #'welfare': 'Student Welfare Assurance Fee',
         #'union': 'Student Union Dues',
@@ -106,17 +106,17 @@
         ##'concessional': 'Concessional Fee',
         #'id_card': 'Student ID Card',
-        ##'gst_text_book_0': 'Text Book Fee GST101 GST102 GST111 GST112',
-        ##'gst_text_book_1': 'Text Book Fee GST101 GST102',
-        ##'gst_text_book_2': 'Text Book Fee GST111 GST112',
-        ##'gst_text_book_3': 'Text Book Fee GST222',
-        ##'gst_registration_1': 'Registration Fee GST101 GST102 GST111 GST112',
-        ##'gst_registration_2': 'Registration Fee GST222',
-        ##'ent_text_book_1': 'Text Book Fee ENT201',
-        ##'ent_text_book_2': 'Text Book Fee ENT211',
-        ##'ent_text_book_0': 'Text Book Fee for ENT201 and ENT211',
-        ##'ent_registration_1': 'Registration Fee ENT201',
-        ##'ent_registration_2': 'Registration Fee ENT211',
-        ##'ent_registration_0': 'Registration Fee for ENT201 and ENT211',
-        ##'ent_combined': 'Registration and Textbook Fee for ENT201 and ENT211',
+        'gst_text_book_0': 'Text Book Fee GST101 GST102 GST111 GST112',
+        'gst_text_book_1': 'Text Book Fee GST101 GST102',
+        'gst_text_book_2': 'Text Book Fee GST111 GST112',
+        'gst_text_book_3': 'Text Book Fee GST222',
+        'gst_registration_1': 'Registration Fee GST101 GST102 GST111 GST112',
+        'gst_registration_2': 'Registration Fee GST222',
+        'ent_text_book_1': 'Text Book Fee ENT201',
+        'ent_text_book_2': 'Text Book Fee ENT211',
+        'ent_text_book_0': 'Text Book Fee for ENT201 and ENT211',
+        'ent_registration_1': 'Registration Fee ENT201',
+        'ent_registration_2': 'Registration Fee ENT211',
+        'ent_registration_0': 'Registration Fee for ENT201 and ENT211',
+        'ent_combined': 'Registration and Textbook Fee for ENT201 and ENT211',
         ##'fac_dep': 'Faculty and Departmental Dues (incl. ICT/Affidavit Dues)',
         ##'ict': 'ICT/Affidavit Dues',
@@ -141,5 +141,5 @@
         'clearance': 'Acceptance Fee',
         'schoolfee': 'School Fees',
-        ##'late_registration': 'Late Course Registration Fee',
+        'late_registration': 'Late Course Registration Fee',
         ##'sports': 'Sports Fee',
         ##'library': 'UG Library Fee',
@@ -163,18 +163,18 @@
         'clearance_incl': 'Acceptance Fee Plus',
         'schoolfee_incl': 'School Fees Plus',
-        ##'ent_text_book_1': 'Text Book Fee ENT201',
-        ##'ent_text_book_2': 'Text Book Fee ENT211',
-        ##'ent_text_book_0': 'Text Book Fee for ENT201 and ENT211',
-        ##'ent_registration_1': 'Registration Fee ENT201',
-        ##'ent_registration_2': 'Registration Fee ENT211',
-        ##'ent_registration_0': 'Registration Fee for ENT201 and ENT211',
-        ##'gst_registration_1': 'Registration Fee GST101 GST102 GST111 GST112',
-        ##'gst_registration_2': 'Registration Fee GST222',
-        ##'gst_text_book_0': 'Text Book Fee GST101 GST102 GST111 GST112',
-        ##'gst_text_book_1': 'Text Book Fee GST101 GST102',
-        ##'gst_text_book_2': 'Text Book Fee GST111 GST112',
-        ##'gst_text_book_3': 'Text Book Fee GST222',
-        ##'ent_combined': 'Registration and Textbook Fee for ENT201 and ENT211',
-        ##'late_registration': 'Late Course Registration Fee',
+        'ent_text_book_1': 'Text Book Fee ENT201',
+        'ent_text_book_2': 'Text Book Fee ENT211',
+        'ent_text_book_0': 'Text Book Fee for ENT201 and ENT211',
+        'ent_registration_1': 'Registration Fee ENT201',
+        'ent_registration_2': 'Registration Fee ENT211',
+        'ent_registration_0': 'Registration Fee for ENT201 and ENT211',
+        'gst_registration_1': 'Registration Fee GST101 GST102 GST111 GST112',
+        'gst_registration_2': 'Registration Fee GST222',
+        'gst_text_book_0': 'Text Book Fee GST101 GST102 GST111 GST112',
+        'gst_text_book_1': 'Text Book Fee GST101 GST102',
+        'gst_text_book_2': 'Text Book Fee GST111 GST112',
+        'gst_text_book_3': 'Text Book Fee GST222',
+        'ent_combined': 'Registration and Textbook Fee for ENT201 and ENT211',
+        'late_registration': 'Late Course Registration Fee',
         ##'sports': 'Sports Fee',
         ##'library': 'UG Library Fee',
@@ -208,16 +208,14 @@
         }
 
-    BALANCE_PAYMENT_CATEGORIES = {}
-
-    XXXBALANCE_PAYMENT_CATEGORIES = {
+    BALANCE_PAYMENT_CATEGORIES = {
         'schoolfee': 'School Fees',
         'clearance': 'Acceptance Fee',
         'hostel_maintenance': 'Hostel Maintenance Fee',
         'late_registration': 'Late Course Registration Fee',
-        'welfare': 'Student Welfare Assurance Fee',
-        'union': 'Student Union Dues',
-        'lapel': 'Lapel/File Fee',
-        'matric_gown': 'Matriculation Gown Fee',
-        'id_card': 'Student ID Card',
+        #'welfare': 'Student Welfare Assurance Fee',
+        #'union': 'Student Union Dues',
+        #'lapel': 'Lapel/File Fee',
+        #'matric_gown': 'Matriculation Gown Fee',
+        #'id_card': 'Student ID Card',
         'gst_text_book_1': 'Text Book Fee GST101 GST102',
         'gst_text_book_2': 'Text Book Fee GST111 GST112',
@@ -232,7 +230,7 @@
         'ent_registration_0': 'Registration Fee for ENT201 and ENT211',
         #'fac_dep': 'Faculty and Departmental Dues (incl. ICT/Affidavit Dues)',
-        'ict': 'ICT/Affidavit Dues',
+        #'ict': 'ICT/Affidavit Dues',
         #'affidavit': 'Affidavit Dues',
-        'restitution': 'Restitution Fee',
+        #'restitution': 'Restitution Fee',
         }
 
