¿Cómo configurar una opción personalizada de tipo "archivo" al agregar un producto al carrito en Magento?

Usando mi propio controlador, estoy agregando un producto al carrito de Magento. Tiene 3 opciones personalizadas: 2 opciones desplegables (color y tamaño) y una opción de archivo (diseño). El código que agrega el producto al carrito es

// obtain the shopping cart
$cart = Mage::getSingleton('checkout/cart');

// load the product
$product = Mage::getModel('catalog/product')
    ->load($productId);

// do some magic to obtain the select ids for color and size ($selectedSize and $selectedColor)
// ...

// define the buy request params
$params = array(
    'product'       => $productId,
    'qty'           => $quantity,
    'options'       => array(
        $customOptionSize->getId()  => $selectedSize,
        $customOptionColor->getId() => $selectedColor,

        // set the file option, but how? 
    ),
);

// add this configuration to cart
$cart->addProduct($product, $paramObject);
$cart->save();

// set the cart as updated
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);

Mi pregunta es: ¿Cómo adjunto un determinado archivo a la opción de diseño?

El archivo ya se ha transferido al lado del servidor (en realidad a través de la solicitud). Podría, sin embargo, subir falsos si fuera necesario. Pero hasta ahora no he encontrado una sola fuente de información sobre cómo configurar las opciones personalizadas de archivos ...

Mi mejor conjetura de un recorrido a través de las fuentes de Magento es que la solicitud de compra necesita algunos datos adicionales (no en las opciones, sino en el objeto params), como: option_123_file => algo, pero qué es exactamente lo que se necesita no lo descubrí todavía. Esta parte de las fuentes de Magento es más bien, uhh, no tan sencilla. Gracias por cualquier ayuda.

Respuestas a la pregunta(1)

Su respuesta a la pregunta