Index: /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/browser.py
===================================================================
--- /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/browser.py	(revision 13633)
+++ /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/browser.py	(revision 13634)
@@ -260,5 +260,5 @@
 
 class ClearStudentFinancially(UtilityView, grok.View):
-    """ Clear student financially by bursary officer
+    """ Clear student financially by financial clearance officer
     """
     grok.context(INigeriaStudent)
@@ -292,5 +292,5 @@
 
 class WithdrawFinancialClearance(UtilityView, grok.View):
-    """ Withdraw financial clearance by bursary officer
+    """ Withdraw financial clearance by financial clearance officer
     """
     grok.context(INigeriaStudent)
@@ -328,9 +328,9 @@
 """
 
-class NigeriaExportPDFBursaryClearancePage(UtilityView, grok.View):
-    """Deliver a PDF bursary clearance slip.
+class NigeriaExportPDFFinancialClearancePage(UtilityView, grok.View):
+    """Deliver a PDF financial clearance slip.
     """
     grok.context(INigeriaStudent)
-    grok.name('bursary_clearance_slip.pdf')
+    grok.name('financial_clearance_slip.pdf')
     grok.require('waeup.viewStudent')
     prefix = 'form'
@@ -346,5 +346,5 @@
     def label(self):
         portal_language = getUtility(IKofaUtils).PORTAL_LANGUAGE
-        return translate(_('Bursary Clearance Slip of'),
+        return translate(_('Financial Clearance Slip of'),
             'waeup.kofa', target_language=portal_language) \
             + ' %s' % self.context.display_fullname
@@ -357,5 +357,5 @@
             return ()
         return (_('Date, Student Signature'),
-                _('Date, Bursary Officer Signature'),
+                _('Date, Financial Clearance Officer Signature'),
                 )
 
@@ -399,6 +399,6 @@
         tabledata.append(sorted(
             [value for value in self.context['payments'].values()
-             if value.p_state == 'paid'], key=lambda value: value.p_id))
-        tableheader.append([(P_ID,'p_id', 3),
+             if value.p_state == 'paid'], key=lambda value: value.p_session))
+        tableheader.append([(P_ID,'p_id', 4.2),
                          #(CD,'creation_date', 3),
                          (PD,'formatted_p_date', 3),
@@ -409,5 +409,5 @@
                          ])
         return students_utils.renderPDF(
-            self, 'bursary_clearance_slip.pdf',
+            self, 'financial_clearance_slip.pdf',
             self.context.student, studentview,
             tableheader=tableheader,
Index: /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/permissions.py
===================================================================
--- /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/permissions.py	(revision 13633)
+++ /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/permissions.py	(revision 13634)
@@ -25,5 +25,5 @@
     """The ClearStudentFinancially permission is needed to clear students
     financially or to reject financial clearance. This permission is
-    meant for bursary officers.
+    meant for financial clearance officers.
     """
     grok.name('waeup.clearStudentFinancially')
@@ -31,5 +31,6 @@
 
 class BursaryOfficer(grok.Role):
-    """Bursary Officers can export bursary data. They can't access the
+    """Financial Clearance Officers (aka Bursary Officers)
+    can export bursary data. They can't access the
     Data Center but see student data export buttons in the Academic Section.
 
Index: /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/tests/test_browser.py
===================================================================
--- /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/tests/test_browser.py	(revision 13633)
+++ /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/tests/test_browser.py	(revision 13634)
@@ -423,5 +423,5 @@
         payment1 = createObject(u'waeup.StudentOnlinePayment')
         timestamp = ("%d" % int(time()*10000))[1:]
-        payment1.p_id = "p%s" % timestamp
+        payment1.p_id = "LSCNEW-2-4153206270" # the longest possible p_id
         payment1.p_category = 'schoolfee'
         payment1.p_item = u'My School Fee'
@@ -445,10 +445,10 @@
         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
         self.browser.open(self.student_path + '/clear_financially')
-        self.browser.getLink("Download bursary clearance slip").click()
+        self.browser.getLink("Download financial clearance slip").click()
         self.assertEqual(self.browser.headers['Status'], '200 Ok')
         self.assertEqual(self.browser.headers['Content-Type'],
                          'application/pdf')
-        path = os.path.join(samples_dir(), 'bursary_clearance_slip.pdf')
+        path = os.path.join(samples_dir(), 'financial_clearance_slip.pdf')
         open(path, 'wb').write(self.browser.contents)
-        print "Sample PDF bursary_clearance_slip.pdf written to %s" % path
+        print "Sample PDF financial_clearance_slip.pdf written to %s" % path
         return
Index: /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/viewlets.py
===================================================================
--- /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/viewlets.py	(revision 13633)
+++ /main/kofacustom.nigeria/trunk/src/kofacustom/nigeria/students/viewlets.py	(revision 13634)
@@ -70,11 +70,11 @@
         return self.view.url(self.view.context, self.target)
 
-class BursaryClearanceSlipActionButton(ManageActionButton):
+class FinancialClearanceSlipActionButton(ManageActionButton):
     grok.order(12)
     grok.context(INigeriaStudent)
     grok.view(NigeriaStudentBaseDisplayFormPage)
     grok.require('waeup.viewStudent')
-    text = _('Download bursary clearance slip')
-    target = 'bursary_clearance_slip.pdf'
+    text = _('Download financial clearance slip')
+    target = 'financial_clearance_slip.pdf'
     icon = 'actionicon_pdf.png'
 
