Index: main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/contracts.py
===================================================================
--- main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/contracts.py	(revision 12500)
+++ main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/contracts.py	(revision 12501)
@@ -29,5 +29,6 @@
 from ikobacustom.pcn.customers.interfaces import (
     IRONContract, IRONContractEdit, IRONContractProcess,
-    IROPContract, IROPContractEdit, IROPContractProcess)
+    IROPContract, IROPContractEdit, IROPContractProcess,
+    IRONContractOfficialUse, IROPContractOfficialUse)
 
 
@@ -47,4 +48,6 @@
 
     edit_form_fields_interface = IRONContractEdit
+
+    ou_form_fields_interface = IRONContractOfficialUse
 
     check_docs_interface = IRONContract
@@ -84,4 +87,6 @@
     edit_form_fields_interface = IROPContractEdit
 
+    ou_form_fields_interface = IROPContractOfficialUse
+
     check_docs_interface = IROPContract
 
Index: main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/export.py
===================================================================
--- main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/export.py	(revision 12500)
+++ main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/export.py	(revision 12501)
@@ -23,5 +23,5 @@
 from ikobacustom.pcn.customers.interfaces import (
     IPCNCustomer, IPCNCustomerJPGDocument,
-    IPCNCustomerPDFDocument, IRONContract, IROPContract)
+    IPCNCustomerPDFDocument, IRONContractProcess, IROPContractProcess)
 from ikobacustom.pcn.interfaces import MessageFactory as _
 
@@ -54,5 +54,5 @@
     """
     grok.name('roncontracts')
-    iface = IRONContract
+    iface = IRONContractProcess
     title = _(u'Retention of Name Contracts')
     class_name = 'RONContract'
@@ -63,5 +63,5 @@
     """
     grok.name('ropcontracts')
-    iface = IROPContract
+    iface = IROPContractProcess
     title = _(u'Registration of Premises Contracts')
     class_name = 'ROPContract'
Index: main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/interfaces.py
===================================================================
--- main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/interfaces.py	(revision 12500)
+++ main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/interfaces.py	(revision 12501)
@@ -19,4 +19,5 @@
 from zope import schema
 from datetime import datetime
+from waeup.ikoba.interfaces import IIkobaObject
 from waeup.ikoba.customers.interfaces import (
     ICustomer, ICustomerDocument, ICustomerPDFDocument, IContract,
@@ -127,5 +128,16 @@
     #    )
 
-class IRONContractProcess(IRONContract):
+class IRONContractOfficialUse(IIkobaObject):
+    """Interface for editing ROP data by customers.
+
+    """
+
+    comment = schema.Text(
+        title= _('Reason for rejection'),
+        required = False,
+        )
+
+
+class IRONContractProcess(IRONContract, IRONContractOfficialUse):
     """Interface for processing RON data.
     """
@@ -156,58 +168,34 @@
     """
 
-    date_of_birth = FormattedDate(
-        title = _(u'Date of Birth'),
-        required = True,
+    premises_address = schema.Text(
+        title = _(u'Name and  Address of Pharmaceutical Premises'),
+        required = True,
+        )
+
+    category_practice = schema.TextLine(
+        title = _(u'Category of Practice'),
+        description = _(u'retail and dispensing, wholesale, importation, manufacturing, distribution etc.'),
+        required = False,
+        )
+
+    premises_certificate = schema.TextLine(
+        title = _(u'Last Premises Certificate'),
+        description= _('If an old premises. state the last premises certificate number issued with date.'),
+        required = False,
+        )
+
+    date_of_qualification = FormattedDate(
+        title = _(u'Date of Qualification'),
+        required = False,
         show_year = True,
-        )
-
-    state_of_origin = schema.Choice(
-        vocabulary = nats_vocab,
-        title = _(u'State of Origin'),
-        required = False,
-        )
-
-    lga = schema.Choice(
-        source = LGASource(),
-        title = _(u'State / LGA'),
-        required = True,
-        )
-
-    year_qualification = schema.Choice(
-        title = _(u'Year of Qualification'),
-        required = True,
-        values = year_range(),
         )
 
     res_address = schema.Text(
         title = _(u'Residential Address'),
-        required = True,
-        )
-
-    res_address = schema.Text(
-        title = _(u'Residential Address'),
-        required = False,
-        )
-
-    work_address = schema.Text(
-        title = _(u'Work Address'),
-        required = False,
-        )
-
-    work_email = schema.ASCIILine(
-        title = _(u'Work Email Address'),
-        required = False,
-        constraint=validate_email,
-        )
-
-    work_phone = PhoneNumber(
-        title = _(u'Work Phone'),
-        description = u'',
-        required = False,
-        )
-
-    category_practice = schema.TextLine(
-        title = _(u'Category of Practice'),
-        description = _(u'academic, retail and dispensing, hospital, administrative, wholesale, importation, manufacturing, etc.'),
+        required = False,
+        )
+
+    last_license_number = schema.TextLine(
+        title = _(u'Last Annual License Number'),
         required = False,
         )
@@ -215,5 +203,23 @@
     superintendent = schema.Bool(
         title= _('Superintendent'),
-        description= _('Tick box if you are a superintendent pharamcist.'),
+        description= _('Tick box if you were a superintendent pharamcist last year.'),
+        required = False,
+        )
+
+    work_address = schema.Text(
+        title = _(u'Full Time Employment Address'),
+        description= _('Enter work address if you were not a superintendent pharamcist last year.'),
+        required = False,
+        )
+
+    pharmacists_directors= schema.TextLine(
+        title = _(u'Pharmacist Directors'),
+        description = _(u'Full name of directors and their profession as in Form C.O.7'),
+        required = False,
+        )
+
+    other_directors= schema.TextLine(
+        title = _(u'Other Directors'),
+        description = _(u'Full name of directors and their profession as in Form C.O.7'),
         required = False,
         )
@@ -225,5 +231,27 @@
     #    )
 
-class IROPContractProcess(IROPContract):
+class IROPContractOfficialUse(IIkobaObject):
+    """Interface for editing ROP data by customers.
+
+    """
+
+    inspected = schema.Bool(
+        title = _('Inspected'),
+        description = _('Has the premises been duly inspected?'),
+        required = False,
+        )
+
+    recommended = schema.Bool(
+        title = _('Recommended'),
+        description= _('Is the premises recommended?'),
+        required = False,
+        )
+
+    official_in_state = schema.TextLine(
+        title = _(u'Name of Official in the State'),
+        required = False,
+        )
+
+class IROPContractProcess(IROPContract, IROPContractOfficialUse):
     """Interface for processing RON data.
     """
Index: main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/tests/test_browser.py
===================================================================
--- main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/tests/test_browser.py	(revision 12500)
+++ main/ikobacustom.pcn/trunk/src/ikobacustom/pcn/customers/tests/test_browser.py	(revision 12501)
@@ -220,10 +220,10 @@
         result = open(self.outfile, 'rb').read()
         self.assertMatches(result,
-            'category_practice,class_name,contract_category,contract_id,'
+            'category_practice,class_name,comment,contract_category,contract_id,'
             'date_of_birth,history,last_product_id,lga,product_object,'
             'product_options,res_address,state,state_of_origin,superintendent,'
             'tc_dict,title,user_id,work_address,work_email,work_phone,'
             'year_qualification\r\n'
-            ',RONContract,ron,%s,,'
+            ',RONContract,,ron,%s,,'
             '[u\'2015-01-18 16:40:01 WAT - Contract created by system\'],,,,'
             '[],,created,,,{\'en\': u\'Hello World\'},,K1000000,,,,\r\n'
@@ -280,11 +280,13 @@
         self.assertMatches(result,
             'category_practice,class_name,contract_category,contract_id,'
-            'date_of_birth,history,last_product_id,lga,product_object,'
-            'product_options,res_address,state,state_of_origin,superintendent,'
-            'tc_dict,title,user_id,work_address,work_email,work_phone,'
-            'year_qualification\r\n'
+            'date_of_qualification,history,inspected,last_license_number,'
+            'last_product_id,official_in_state,other_directors,'
+            'pharmacists_directors,premises_address,premises_certificate,'
+            'product_object,product_options,recommended,res_address,'
+            'state,superintendent,tc_dict,title,user_id,work_address\r\n'
+
             ',ROPContract,rop,%s,,'
-            '[u\'2015-01-18 16:40:01 WAT - Contract created by system\'],,,,'
-            '[],,created,,,{\'en\': u\'Hello World\'},,K1000000,,,,\r\n'
+            '[u\'2015-01-20 18:51:03 WAT - Contract created by system\']'
+            ',,,,,,,,,,[],,,created,,{\'en\': u\'Hello World\'},,K1000000,\r\n'
             % self.contract2.contract_id)
         # We can reimport the file if we change the header
