Field Collection Adding Values
Something like this ought to do the trick:

$nload = node_load($requestid);
$field_collection_item = entity_create('field_collection_item', array('field_name' =&gt; 'field_request_collection'));
$field_collection_item-&gt;setHostEntity('node', $nload);
$field_collection_item-&gt;field_products[LANGUAGE_NONE][0]['target_id'] = intval($productid);
$field_collection_item-&gt;save();

$nload-&gt;field_request_collection[LANGUAGE_NONE][]['value'] = $field_collection_item-&gt;item_id;