how to automatically create other entities when creating an entity
If you were looking for a code solution, you can use hook_entity_insert() to trigger the creation of the other entities.

Your custom module code would look something like this:

function mymodule_entity_insert($entity, $type) {
  if ($type == 'typeA') {
    // entity type A is being inserted
    global $user;

    // now create type B
    $entity_b = entity_create('type_b', array(
          'uid' =&gt; $user-&gt;uid,
          'type' =&gt; 'type_b', //bundle
          'field_my_field_c' =&gt; array(
            LANGUAGE_NONE =&gt; array(
              0 =&gt; array(
                'value' =&gt; 'foo!',
              ),
            ),
          ),
        ))-&gt;save();

    // now create type C
    $entity_c = entity_create('type_c', array(
          'uid' =&gt; $user-&gt;uid,
          'type' =&gt; 'type_c', //bundle
          'field_my_field_c' =&gt; array(
            LANGUAGE_NONE =&gt; array(
              0 =&gt; array(
                'value' =&gt; 'foo!',
              ),
            ),
          ),
        ))-&gt;save();

    // now create type D, etc...
    }
}


I've borrowed from the code sample posted in the comment from Mołot and for simplicity sake, I made the author of A to be the same as B, C and D.

One more thing, the entity_create() function is in the contrib module Entity API. Your custom module would have a dependency on Entity API.