diff --git a/Form/DataTranformer/UploadedFileTransformer.php b/Form/DataTranformer/UploadedFileTransformer.php
new file mode 100644
index 0000000000000000000000000000000000000000..3ecae0f268a95afc4b6ccd26919d7600661337c0
--- /dev/null
+++ b/Form/DataTranformer/UploadedFileTransformer.php
@@ -0,0 +1,74 @@
+<?php
+
+/*
+ * Copyright (C) 2015 IRSTEA
+ * All rights reserved.
+ */
+
+namespace Irstea\FileUploadBundle\Form\DataTranformer;
+
+use Irstea\FileUploadBundle\Entity\UploadedFile;
+use Irstea\FileUploadBundle\Service\FileManagerInterface;
+use Symfony\Component\Form\DataTransformerInterface;
+
+/**
+ * Description of UploadedFileTransformer
+ */
+class UploadedFileTransformer implements DataTransformerInterface
+{
+    /**
+     *
+     * @var boolean
+     */
+    private $multiple;
+
+    /**
+     *
+     * @var FileManagerInterface
+     */
+    private $fileManager;
+
+    public function __construct(FileManagerInterface $fileManager, $multiple = false)
+    {
+        $this->fileManager = $fileManager;
+        $this->multiple = $multiple;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function reverseTransform($value)
+    {
+        $result = $value instanceof UploadedFile ? $value : (is_string($value) ? $this->reverseTransformFile($value) : null);
+        return $result;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function transform($value)
+    {
+        $result = $value instanceof UploadedFile ? $this->transformFile($value) : null;
+        return $result;
+    }
+
+    /**
+     *
+     * @param UploadedFile $file
+     * @return array
+     */
+    protected function transformFile(UploadedFile $file)
+    {
+        return $file;
+    }
+
+    /**
+     *
+     * @param string $id
+     * @return UploadedFile
+     */
+    protected function reverseTransformFile($id)
+    {
+        return $this->fileManager->get($id);
+    }
+}