Index: main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/browser.py
===================================================================
--- main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/browser.py	(revision 10809)
+++ main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/browser.py	(revision 10812)
@@ -31,5 +31,7 @@
     CourseTicketDisplayFormPage, StudentTriggerTransitionFormPage,
     msave, emit_lock_message, StudyCourseDisplayFormPage,
-    StudyCourseManageFormPage)
+    StudyCourseManageFormPage,
+    ExportPDFPaymentSlipPage,
+    )
 from waeup.kofa.students.interfaces import (
     IStudentsUtils, ICourseTicket)
@@ -72,8 +74,4 @@
 
 
-
-
-
-
 class CustomStudyCourseDisplayFormPage(StudyCourseDisplayFormPage):
     """ Page to display the student study course data
@@ -96,2 +94,9 @@
                 'certificate', 'entry_session', 'current_session',
                 'service_address')
+
+class CustomExportPDFPaymentSlipPage(ExportPDFPaymentSlipPage):
+    """Deliver a PDF slip of the context.
+    """
+    omit_fields = (
+        'password', 'suspended', 'phone', 'date_of_birth',
+        'adm_code', 'sex', 'suspended_comment', 'current_mode')
Index: main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/viewlets.py
===================================================================
--- main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/viewlets.py	(revision 10809)
+++ main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/viewlets.py	(revision 10812)
@@ -19,5 +19,7 @@
 from waeup.kofa.students.viewlets import (
     StudentsTab, AdmissionSlipActionButton, StudentManageClearanceLink,
-    StudentManagePersonalLink, StudentManageAccommodationLink)
+    StudentManagePersonalLink, StudentManageAccommodationLink,
+    AddBalancePaymentActionButton,
+    AddPreviousPaymentActionButton)
 
 from kofacustom.ekodisco.interfaces import MessageFactory as _
@@ -42,2 +44,8 @@
 class CustomStudentManageAccommodationLink(StudentManageAccommodationLink):
     link = ''
+
+class CustomAddBalancePaymentActionButton(AddBalancePaymentActionButton):
+    target = ''
+
+class CustomAddPreviousPaymentActionButton(AddPreviousPaymentActionButton):
+    target = ''
Index: main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/workflow.py
===================================================================
--- main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/workflow.py	(revision 10809)
+++ main/kofacustom.ekodisco/trunk/src/kofacustom/ekodisco/students/workflow.py	(revision 10812)
@@ -30,5 +30,5 @@
         msg = _('Contract approved'),
         source = CREATED,
-        destination = ADMITTED),
+        destination = CLEARED),
 
     Transition(
@@ -36,19 +36,36 @@
         title = _('Reset customer to initial state'),
         msg = _('Reset to initial state'),
-        source = ADMITTED,
+        source = CLEARED,
         destination = CREATED),
 
     Transition(
-        transition_id = 'pay_meter_fee',
-        title = _('Pay meter fee'),
-        msg = _('Meter fee paid'),
-        source = ADMITTED,
+        transition_id = 'pay_first_school_fee',
+        title = _('Pay first meter fee'),
+        msg = _('First meter fee payment made'),
+        source = CLEARED,
         destination = PAID),
 
     Transition(
-        transition_id = 'approve_meter_fee_payment',
+        transition_id = 'approve_first_school_fee',
+        title = _('Approve first meter payment'),
+        msg = _('First meter fee payment approved'),
+        source = CLEARED,
+        destination = PAID),
+
+    # The pg fee payment has proper handlers which suit
+    # customer payments.
+
+    Transition(
+        transition_id = 'pay_pg_fee',
+        title = _('Pay meter fee'),
+        msg = _('Meter fee paid'),
+        source = PAID,
+        destination = PAID),
+
+    Transition(
+        transition_id = 'approve_pg_fee',
         title = _('Approve meter fee payment'),
         msg = _('Meter fee payment approved'),
-        source = ADMITTED,
+        source = PAID,
         destination = PAID),
 
@@ -58,5 +75,5 @@
         msg = _("Reset to state 'contract approved'"),
         source = PAID,
-        destination = ADMITTED),
+        destination = CLEARED),
     )
 
