How to create a payment form / pane directly from order_id
I got it doing the following :

with a link in user/%/orders/% page like go_to_checkout/$order_id

/**
 * Implements hook_menu();
 * Callback to pass order_id to checkout fn
 */
function commerce_partial_payment_menu() {

  $items['go_to_checkout'] = array(
    'title' =&gt; 'balance',
    'description' =&gt; 'Pay order balance',
    'page callback' =&gt; 'commerce_partial_payment_redirect_to_checkout',
    'page arguments' =&gt; array(1),
    'access arguments' =&gt;  TRUE,//still have to change that, maybe see own orders permission
    'type' =&gt; MENU_CALLBACK,
  );

  return $items;
}

/*
 * Prepare checkout process and redirects to checkout/%/review 
 */
function commerce_partial_payment_redirect_to_checkout($order_id) {

  $order = commerce_order_load($order_id);
  commerce_order_status_update($order, 'checkout_review', $skip_save = FALSE, $revision = TRUE, $log = '');

  drupal_goto('checkout/' . $order-&gt;order_id. '/review');
}