node_save does not save body content
You also need to set the language of the fields.

$node-&gt;language = 'en';
$field_langcode = field_language('node', $node, 'body');
$node-&gt;body[$field_langcode][0]['value']   = $body_text;
$node-&gt;body[$field_langcode][0]['summary'] = text_summary($body_text);
$node-&gt;body[$field_langcode][0]['format']  = filter_default_format();


See this comment (https://drupal.org/comment/5464106#comment-5464106) for more info.