Taxonomy term not found using tid from term reference The users in my webapplication have a term reference suppliers. 

I also have a content type transaction where I have the same term reference. Now I would like to hide the select list and set the default value programmatically. This is what I do now:

$form['field_supplier']['#type'] = 'hidden';
$user_suppliers = array();

foreach($user_selling-&gt;field_suppliers['und'] as $supplier)
{
    $user_suppliers[] = $supplier['tid'];
}

$firstsupplier = reset($user_suppliers);

$first_supplier = taxonomy_term_load($firstsupplier);


As you can see I loop through the tid's and save them in array. Afterwards I pick the first one (there's a reason I don't pick the first instead of looping through).

The $firstsupplier variable results 7 so what's not abnormal for a tid. But when I want to load the taxonomy term I get a response false... (he can't find it) .

I recently resetted my taxonomy vocabulary to alphabetical, could that be the reason? (I think not, because I tried it after saving them in a random order)
First, don't use 'und', you should be using LANGUAGE_NONE instead.

Your code works, so you might have a data inconsistency on your database, are you sure that the term id 7 really exists?

You can use entity api metadata wrappers to access easier to the field information, or if you're not  using Entity API module, the function field_get_items is a better way to access the information.

$user_suppliers = array();
$items = field_get_items('node', $user_selling, 'field_suppliers');

foreach($items as $item) {
    $user_suppliers[] = $item['tid'];
}

$firstsupplier = reset($user_suppliers);
$first_supplier = taxonomy_term_load($firstsupplier);