Index: main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py
===================================================================
--- main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py	(revision 15810)
+++ main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py	(revision 15811)
@@ -542,14 +542,27 @@
         result = server.get_bursary_data(None,None,None,None,'dep1')
         self.assertEqual(
-            result, [
-            ['K1000000', '234', '123', 'Anna', None, 'Tester', 'created',
-             2004, 2004, None, 'fac1', 'dep1', 'CERT1', 'my-id1', 12.12,
-             'schoolfee', None, 2012, 'paid',
-             str('%s#' % to_timezone(payment1.creation_date, tz)), 'None#'],
-            ['K1000000', '234', '123', 'Anna', None, 'Tester',
-             'created', 2004, 2004, None, 'fac1', 'dep1', 'CERT1',
-             'my-id2', 12.12, 'clearance', None, 2012, 'paid',
-             str('%s#' % to_timezone(payment2.creation_date, tz)), 'None#']]
-             )
+            result,[
+            {'entry_mode': None, 'reg_number': '123', 'display_item': None,
+                'firstname': 'Anna', 'payment_date': 'None#',
+                'middlename': None, 'student_id': 'K1000000', 'p_id':
+                'my-id1', 'certcode': 'CERT1', 'entry_session': 2004,
+                'creation_date': str('%s#' % to_timezone(payment1.creation_date, tz)),
+                'state': 'created', 'current_session': 2004,
+                'faccode': 'fac1', 'lastname': 'Tester',
+                'p_category': 'schoolfee', 'amount_auth': 12.12,
+                'p_state': 'paid', 'p_session': 2012, 'matric_number': '234',
+                'depcode': 'dep1'},
+            {'entry_mode': None, 'reg_number': '123', 'display_item': None,
+                'firstname': 'Anna', 'payment_date': 'None#',
+                'middlename': None, 'student_id': 'K1000000',
+                'p_id': 'my-id2', 'certcode': 'CERT1', 'entry_session': 2004,
+                'creation_date': str('%s#' % to_timezone(payment2.creation_date, tz)),
+                'state': 'created', 'current_session': 2004, 'faccode': 'fac1',
+                'lastname': 'Tester', 'p_category': 'clearance',
+                'amount_auth': 12.12, 'p_state': 'paid', 'p_session': 2012,
+                'matric_number': '234', 'depcode': 'dep1'}
+            ]
+            )
+
         REQUEST_XML = """\
 <?xml version="1.0"?>
@@ -572,44 +585,170 @@
 <param>
 <value><array><data>
-<value><array><data>
-<value><string>K1000000</string></value>
+<value><struct>
+<member>
+<name>entry_mode</name>
+<value><nil/></value></member>
+<member>
+<name>reg_number</name>
+<value><string>123</string></value>
+</member>
+<member>
+<name>display_item</name>
+<value><nil/></value></member>
+<member>
+<name>firstname</name>
+<value><string>Anna</string></value>
+</member>
+<member>
+<name>payment_date</name>
+<value><string>None#</string></value>
+</member>
+<member>
+<name>middlename</name>
+<value><nil/></value></member>
+<member>
+<name>student_id</name>
+<value><string>K1000000</string></value>
+</member>
+<member>
+<name>p_id</name>
+<value><string>my-id1</string></value>
+</member>
+<member>
+<name>certcode</name>
+<value><string>CERT1</string></value>
+</member>
+<member>
+<name>creation_date</name>
+<value><string>%s</string></value>
+</member>
+<member>
+<name>matric_number</name>
 <value><string>234</string></value>
+</member>
+<member>
+<name>state</name>
+<value><string>created</string></value>
+</member>
+<member>
+<name>lastname</name>
+<value><string>Tester</string></value>
+</member>
+<member>
+<name>current_session</name>
+<value><int>2004</int></value>
+</member>
+<member>
+<name>faccode</name>
+<value><string>fac1</string></value>
+</member>
+<member>
+<name>entry_session</name>
+<value><int>2004</int></value>
+</member>
+<member>
+<name>p_category</name>
+<value><string>schoolfee</string></value>
+</member>
+<member>
+<name>amount_auth</name>
+<value><double>12.12</double></value>
+</member>
+<member>
+<name>p_session</name>
+<value><int>2012</int></value>
+</member>
+<member>
+<name>p_state</name>
+<value><string>paid</string></value>
+</member>
+<member>
+<name>depcode</name>
+<value><string>dep1</string></value>
+</member>
+</struct></value>
+<value><struct>
+<member>
+<name>entry_mode</name>
+<value><nil/></value></member>
+<member>
+<name>reg_number</name>
 <value><string>123</string></value>
+</member>
+<member>
+<name>display_item</name>
+<value><nil/></value></member>
+<member>
+<name>firstname</name>
 <value><string>Anna</string></value>
-<value><nil/></value><value><string>Tester</string></value>
+</member>
+<member>
+<name>payment_date</name>
+<value><string>None#</string></value>
+</member>
+<member>
+<name>middlename</name>
+<value><nil/></value></member>
+<member>
+<name>student_id</name>
+<value><string>K1000000</string></value>
+</member>
+<member>
+<name>p_id</name>
+<value><string>my-id2</string></value>
+</member>
+<member>
+<name>certcode</name>
+<value><string>CERT1</string></value>
+</member>
+<member>
+<name>creation_date</name>
+<value><string>%s</string></value>
+</member>
+<member>
+<name>matric_number</name>
+<value><string>234</string></value>
+</member>
+<member>
+<name>state</name>
 <value><string>created</string></value>
+</member>
+<member>
+<name>lastname</name>
+<value><string>Tester</string></value>
+</member>
+<member>
+<name>current_session</name>
 <value><int>2004</int></value>
+</member>
+<member>
+<name>faccode</name>
+<value><string>fac1</string></value>
+</member>
+<member>
+<name>entry_session</name>
 <value><int>2004</int></value>
-<value><nil/></value><value><string>fac1</string></value>
+</member>
+<member>
+<name>p_category</name>
+<value><string>clearance</string></value>
+</member>
+<member>
+<name>amount_auth</name>
+<value><double>12.12</double></value>
+</member>
+<member>
+<name>p_session</name>
+<value><int>2012</int></value>
+</member>
+<member>
+<name>p_state</name>
+<value><string>paid</string></value>
+</member>
+<member>
+<name>depcode</name>
 <value><string>dep1</string></value>
-<value><string>CERT1</string></value>
-<value><string>my-id1</string></value>
-<value><double>12.12</double></value>
-<value><string>schoolfee</string></value>
-<value><nil/></value><value><int>2012</int></value>
-<value><string>paid</string></value>
-<value><string>%s</string></value>
-<value><string>None#</string></value>
-</data></array></value>
-<value><array><data>
-<value><string>K1000000</string></value>
-<value><string>234</string></value>
-<value><string>123</string></value>
-<value><string>Anna</string></value>
-<value><nil/></value><value><string>Tester</string></value>
-<value><string>created</string></value>
-<value><int>2004</int></value>
-<value><int>2004</int></value>
-<value><nil/></value><value><string>fac1</string></value>
-<value><string>dep1</string></value>
-<value><string>CERT1</string></value>
-<value><string>my-id2</string></value>
-<value><double>12.12</double></value>
-<value><string>clearance</string></value>
-<value><nil/></value><value><int>2012</int></value>
-<value><string>paid</string></value>
-<value><string>%s</string></value>
-<value><string>None#</string></value>
-</data></array></value>
+</member>
+</struct></value>
 </data></array></value>
 </param>
Index: main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py
===================================================================
--- main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py	(revision 15810)
+++ main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py	(revision 15811)
@@ -371,28 +371,27 @@
         tz = getUtility(IKofaUtils).tzinfo
         for payment in payments:
-            hitlist.append(
-                (
-                payment.student.student_id,
-                payment.student.matric_number,
-                payment.student.reg_number,
-                payment.student.firstname,
-                payment.student.middlename,
-                payment.student.lastname,
-                payment.student.state,
-                payment.student.current_session,
-                payment.student.entry_session,
-                payment.student.entry_mode,
-                payment.student.faccode,
-                payment.student.depcode,
-                payment.student.certcode,
-                payment.p_id,
-                payment.amount_auth,
-                payment.p_category,
-                payment.display_item,
-                payment.p_session,
-                payment.p_state,
-                str('%s#' % to_timezone(payment.creation_date, tz)),
-                str('%s#' % to_timezone(payment.payment_date, tz)),
+            hitlist.append(dict(
+                student_id=payment.student.student_id,
+                matric_number=payment.student.matric_number,
+                reg_number=payment.student.reg_number,
+                firstname=payment.student.firstname,
+                middlename=payment.student.middlename,
+                lastname=payment.student.lastname,
+                state=payment.student.state,
+                current_session=payment.student.current_session,
+                entry_session=payment.student.entry_session,
+                entry_mode=payment.student.entry_mode,
+                faccode=payment.student.faccode,
+                depcode=payment.student.depcode,
+                certcode=payment.student.certcode,
+                p_id=payment.p_id,
+                amount_auth=payment.amount_auth,
+                p_category=payment.p_category,
+                display_item=payment.display_item,
+                p_session=payment.p_session,
+                p_state=payment.p_state,
+                creation_date=str('%s#' % to_timezone(payment.creation_date, tz)),
+                payment_date=str('%s#' % to_timezone(payment.payment_date, tz)),
                 )
-                )
+              )
         return hitlist
