Very often our customers ask to add a custom field in SOCO, here you'll find a step by step guide to do it
Step 1 - Add Custom field to Shopping Cart by following the standard add metadata procedure.
Go to SPRO->SRM Server->Cros-Application Basic Settings-> Extension and Field Control (Personalization)
Create the customer fields at item level for Shopping Cart


Add the field both for Database and Shopping Cart

Configure field control in order to enable the fields.


Step 2 - Add custom fields to search structure
Add custom fields to structure /SAPSRM/S_SEARCH_FIELDS_PR include /SAPSRM/INCL_EEW_CSS_SEARCH_FD.
Step 3 - Enhance SOCO Webdynpro to add Custom Fields.
Add the custom fields to webdynpro with the following technical details
Webdynpro: /SAPSRM/WDC_DO_SOCO_GAF_1
View: V_AO_SOCO_GAF_1
Context Element : SEARCH -> SEARCH_FIELDS

Layout
ROUTUIELEMENTCONTAINER-> SEARCH_FIELD_CONTAINER -> MAIN_CONTAINER

If necesary implement a post exit in method WDDOMODIFYVIEW in order to control fields behavior and attributes.
Hope this help !