From 208e47b90caa11105d4ac700e82d2fb12fc9f4bc Mon Sep 17 00:00:00 2001
From: Xiaowu Zhang <xiaowu.zhang@nexedi.com>
Date: Mon, 27 Sep 2021 13:24:57 +0000
Subject: [PATCH] erp5_maileva_connector: add connector which can use to submit
 payslip to maileva

---
 .../portal_types/Maileva%20Exchange/view.xml  |  85 ++
 .../Maileva%20SOAP%20Connector/view.xml       |  85 ++
 .../PDF/maileva_connection_status.xml         |  85 ++
 .../portal_types/PDF/resend_to_maileva.xml    | 100 ++
 .../document.erp5.MailevaSOAPConnector.py     | 168 ++++
 .../document.erp5.MailevaSOAPConnector.xml    | 133 +++
 .../check_maileva_document_status.xml         | 184 ++++
 .../allowed_content_types.xml                 |   8 +
 .../property_sheet_list.xml                   |  12 +
 .../portal_types/Maileva%20Exchange.xml       | 137 +++
 .../Maileva%20SOAP%20Connector.xml            |  60 ++
 .../workflow_chain_type.xml                   |  14 +
 .../portal_skins/erp5_maileva_connector.xml   |  26 +
 .../Alarm_checkMailevaDocumentStatus.py       |  20 +
 .../Alarm_checkMailevaDocumentStatus.xml      |  62 ++
 .../Document_viewMailevaConnectionStatus.xml  | 143 +++
 .../listbox.xml                               | 144 +++
 .../my_title.xml                              |  96 ++
 .../my_translated_send_state_title.xml        | 272 ++++++
 .../MailevaExchange_checkStatus.py            |  14 +
 .../MailevaExchange_checkStatus.xml           |  62 ++
 .../MailevaExchange_view.xml                  | 152 +++
 .../my_destination_title.xml                  | 118 +++
 .../my_follow_up_title.xml                    | 130 +++
 .../MailevaExchange_view/my_reference.xml     |  84 ++
 .../MailevaExchange_view/my_request.xml       | 110 +++
 .../my_resource_title.xml                     | 118 +++
 .../MailevaExchange_view/my_response.xml      | 105 +++
 .../my_response_detail.xml                    | 105 +++
 .../MailevaExchange_view/my_source_title.xml  | 118 +++
 .../MailevaExchange_view/my_title.xml         |  96 ++
 .../MailevaExchange_view/my_track_id.xml      | 272 ++++++
 .../my_translated_validation_state_title.xml  |  84 ++
 ...levaSOAPConnector_getAvailableConnector.py |   6 +
 ...evaSOAPConnector_getAvailableConnector.xml |  62 ++
 .../MailevaSOAPConnector_view.xml             | 166 ++++
 .../my_description.xml                        | 104 +++
 .../MailevaSOAPConnector_view/my_password.xml | 272 ++++++
 .../my_reference.xml                          |  84 ++
 .../my_submit_url_string.xml                  |  96 ++
 .../my_tracking_url_string.xml                |  96 ++
 .../my_translated_validation_state_title.xml  |  84 ++
 .../MailevaSOAPConnector_view/my_user_id.xml  |  96 ++
 .../PDF_reSendToMaileva.py                    |   9 +
 .../PDF_reSendToMaileva.xml                   |  62 ++
 .../PDF_sendToMaileva.py                      |  23 +
 .../PDF_sendToMaileva.xml                     |  62 ++
 .../PDF_viewReSendToMailevaDialog.xml         | 139 +++
 .../your_warning.xml                          | 272 ++++++
 .../maileva_connection.xml                    |  58 ++
 .../maileva_connection.zpt                    |  25 +
 .../maileva_connection_for_test.xml           |  58 ++
 .../maileva_connection_for_test.zpt           |  15 +
 .../maileva_connection_request.xml            |  58 ++
 .../maileva_connection_request.zpt            | 102 ++
 .../test.erp5.testMailevaSOAPConnector.py     | 442 +++++++++
 .../test.erp5.testMailevaSOAPConnector.xml    | 127 +++
 .../portal_workflow/send_state_workflow.xml   | 101 ++
 .../send_state_workflow/state_draft.xml       | 111 +++
 .../send_state_workflow/state_failed.xml      | 110 +++
 .../send_state_workflow/state_sending.xml     | 110 +++
 .../send_state_workflow/state_success.xml     | 101 ++
 .../send_state_workflow/transition_fail.xml   |  51 +
 .../send_state_workflow/transition_send.xml   |  51 +
 .../transition_succeed.xml                    |  51 +
 .../send_state_workflow/variable_action.xml   |  32 +
 .../send_state_workflow/variable_actor.xml    |  32 +
 .../send_state_workflow/variable_comment.xml  |  32 +
 .../variable_error_message.xml                |  28 +
 .../send_state_workflow/variable_history.xml  |  40 +
 .../variable_portal_type.xml                  |  32 +
 .../send_state_workflow/variable_time.xml     |  32 +
 .../worklist_failed_to_send.xml               | 118 +++
 bt5/erp5_maileva_connector/bt/dependency_list |   3 +
 .../bt/template_action_path_list              |   4 +
 .../bt/template_document_id_list              |   1 +
 .../bt/template_format_version                |   1 +
 ..._keep_last_workflow_history_only_path_list |   1 +
 .../bt/template_path_list                     |   1 +
 ...late_portal_type_allowed_content_type_list |   2 +
 .../bt/template_portal_type_id_list           |   2 +
 .../template_portal_type_property_sheet_list  |   6 +
 .../template_portal_type_workflow_chain_list  |   5 +
 .../bt/template_skin_id_list                  |   1 +
 .../bt/template_test_id_list                  |   1 +
 .../bt/template_workflow_id_list              |   1 +
 .../bt/test_dependency_list                   |   1 +
 bt5/erp5_maileva_connector/bt/title           |   1 +
 product/ERP5/tests/test_data/CommonSchema.xsd | 870 ++++++++++++++++++
 .../ERP5/tests/test_data/MailevaPJSSchema.xsd | 200 ++++
 .../tests/test_data/MailevaSpecificSchema.xsd | 518 +++++++++++
 91 files changed, 8571 insertions(+)
 create mode 100644 bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20Exchange/view.xml
 create mode 100644 bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20SOAP%20Connector/view.xml
 create mode 100644 bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/maileva_connection_status.xml
 create mode 100644 bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/resend_to_maileva.xml
 create mode 100644 bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.py
 create mode 100644 bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.xml
 create mode 100644 bt5/erp5_maileva_connector/PathTemplateItem/portal_alarms/check_maileva_document_status.xml
 create mode 100644 bt5/erp5_maileva_connector/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
 create mode 100644 bt5/erp5_maileva_connector/PortalTypePropertySheetTemplateItem/property_sheet_list.xml
 create mode 100644 bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20Exchange.xml
 create mode 100644 bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20SOAP%20Connector.xml
 create mode 100644 bt5/erp5_maileva_connector/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.py
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/listbox.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_translated_send_state_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.py
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_destination_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_follow_up_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_reference.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_request.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_resource_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response_detail.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_source_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_track_id.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_translated_validation_state_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.py
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_description.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_password.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_reference.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_submit_url_string.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_tracking_url_string.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_translated_validation_state_title.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_user_id.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.py
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.py
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog/your_warning.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.zpt
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.zpt
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.xml
 create mode 100644 bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.zpt
 create mode 100644 bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.py
 create mode 100644 bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_draft.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_failed.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_sending.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_success.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_fail.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_send.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_succeed.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_action.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_actor.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_comment.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_error_message.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_history.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_portal_type.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_time.xml
 create mode 100644 bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/worklist_failed_to_send.xml
 create mode 100644 bt5/erp5_maileva_connector/bt/dependency_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_action_path_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_document_id_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_format_version
 create mode 100644 bt5/erp5_maileva_connector/bt/template_keep_last_workflow_history_only_path_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_path_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_portal_type_allowed_content_type_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_portal_type_id_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_portal_type_property_sheet_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_portal_type_workflow_chain_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_skin_id_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_test_id_list
 create mode 100644 bt5/erp5_maileva_connector/bt/template_workflow_id_list
 create mode 100644 bt5/erp5_maileva_connector/bt/test_dependency_list
 create mode 100644 bt5/erp5_maileva_connector/bt/title
 create mode 100644 product/ERP5/tests/test_data/CommonSchema.xsd
 create mode 100644 product/ERP5/tests/test_data/MailevaPJSSchema.xsd
 create mode 100644 product/ERP5/tests/test_data/MailevaSpecificSchema.xsd

diff --git a/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20Exchange/view.xml b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20Exchange/view.xml
new file mode 100644
index 0000000000..58afafb051
--- /dev/null
+++ b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20Exchange/view.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_view</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_view</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>view</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>1.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>View</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/MailevaExchange_view</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20SOAP%20Connector/view.xml b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20SOAP%20Connector/view.xml
new file mode 100644
index 0000000000..0781dd5d91
--- /dev/null
+++ b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/Maileva%20SOAP%20Connector/view.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_view</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_view</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>view</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>1.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>View</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/MailevaSOAPConnector_view</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/maileva_connection_status.xml b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/maileva_connection_status.xml
new file mode 100644
index 0000000000..9c24bfb50c
--- /dev/null
+++ b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/maileva_connection_status.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_view</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_view</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>maileva_connection_status</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>12.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Maileva Connection Status</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/Document_viewMailevaConnectionStatus</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/resend_to_maileva.xml b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/resend_to_maileva.xml
new file mode 100644
index 0000000000..a8c0816a7d
--- /dev/null
+++ b/bt5/erp5_maileva_connector/ActionTemplateItem/portal_types/PDF/resend_to_maileva.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_jio_action</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_jio_action</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>resend_to_maileva</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>12.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Resend To Maileva</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/PDF_viewReSendToMailevaDialog</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>python: object.getSendState() == "failed" and object.getFollowUpRelatedValue(portal_type=\'Maileva Exchange\')</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.py b/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.py
new file mode 100644
index 0000000000..279e76ac5d
--- /dev/null
+++ b/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.py
@@ -0,0 +1,168 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# Copyright (c) 2013 Nexedi SA and Contributors. All Rights Reserved.
+#                    Aurélien Calonne <aurel@nexedi.com>
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+##############################################################################
+
+from AccessControl import ClassSecurityInfo
+from Products.ERP5Type import Permissions, PropertySheet
+from Products.ERP5Type.XMLObject import XMLObject
+import suds
+from suds.transport.https import HttpAuthenticated
+from suds.sax.text import Raw
+import base64
+import socket
+
+class MailevaSOAPConnector(XMLObject):
+  # CMF Type Definition
+  meta_type = 'Maileva SOAP Connector'
+  portal_type = 'Maileva SOAP Connector'
+
+  # Declarative security
+  security = ClassSecurityInfo()
+  security.declareObjectProtected(Permissions.AccessContentsInformation)
+
+  # Default Properties
+  property_sheets = ( PropertySheet.Base
+                    , PropertySheet.XMLObject
+                    , PropertySheet.CategoryCore
+                      )
+  def submitRequest(self, recipient_url="", sender_url="", document_url="", track_id=""):
+    portal = self.getPortalObject()
+    recipient = portal.restrictedTraverse(recipient_url)
+    sender = portal.restrictedTraverse(sender_url)
+    document = portal.restrictedTraverse(document_url)
+    request_xml = self.generateRequestXML(recipient, sender, document, track_id)
+    authenticated = HttpAuthenticated(username=self.getUserId(), password=self.getPassword())
+    maileva_exchange = portal.system_event_module.newContent(
+      portal_type='Maileva Exchange',
+      source_value = sender,
+      destination_value = recipient,
+      resource_value = self,
+      follow_up_value = document,
+      reference=track_id,
+      request = request_xml
+    )
+    runtime_environment = self.getActivityRuntimeEnvironment()
+    if runtime_environment:
+      runtime_environment.edit(
+        conflict_retry=False,
+        max_retry=0)
+    try:
+      response = suds.client.Client(url = self.getProperty('submit_url_string'), transport=authenticated).service.submit(__inject={'msg': request_xml})
+    except socket.error, e:
+      if e.errno == socket.errno.ECONNREFUSED:
+        if runtime_environment:
+          runtime_environment.edit(max_retry=None)
+      raise e
+    except Exception, e:
+      maileva_exchange.edit(response = str(e))
+      maileva_exchange.confirm()
+      maileva_exchange.acknowledge()
+      document.fail()
+      return maileva_exchange
+
+    maileva_exchange.edit(response = response)
+    maileva_exchange.confirm()
+    return maileva_exchange
+
+  def checkPendingNotifications(self):
+    authenticated = HttpAuthenticated(username=self.getUserId(), password=self.getPassword())
+    client = suds.client.Client(url = self.getProperty("tracking_url_string"), transport=authenticated)
+    notification_dict = {}
+    for notification in client.service.checkPendingNotifications("GENERAL"):
+      notification_dict[notification.reqTrackId] = {
+        "id" : notification.id,
+        "reqId" : notification.reqId,
+        "depositId" : notification.depositId,
+        "depositTrackId" : notification.depositTrackId
+      }
+    return notification_dict
+
+  def getPendingNotificationDetails(self, request_id, debug=False):
+    authenticated = HttpAuthenticated(username=self.getUserId(), password=self.getPassword())
+    result = suds.client.Client(url = self.getProperty("tracking_url_string"), transport=authenticated).service.getPendingNotificationDetails(request_id)
+    return {
+      "status": str(result.status),
+      "notification_status": str(result.notificationStatus),
+      "detail": repr(result)
+    }
+
+  def _generateAddressLineList(self, entity):
+    address_line_list = []
+    address_line = entity.getDefaultAddressText()
+    portal_type = entity.getPortalType()
+    if portal_type == 'Person':
+      address_line_list.append("%s %s" % (entity.getSocialTitleTitle(), entity.getTitle()))
+    else:
+      address_line_list.append("%s" % entity.getCorporateName())
+
+    tmp_list = address_line.split('\n')
+    if len(tmp_list) > 5:
+      raise ValueError('Address %s has more than 5 lines' % tmp_list)
+    for index in range(4):
+      if index < len(tmp_list) - 1:
+        address_line_list.append(tmp_list[index])
+      else:
+        address_line_list.append(None)
+    if portal_type == "Person":
+      address_line_list.append(tmp_list[-1])
+    else:
+      address_line_list.append("%s CEDEX" % tmp_list[-1])
+    return address_line_list
+
+  def generateRequestXML(self, recipient, sender, document, track_id, page_template='maileva_connection'):
+    recipient_address_line_list= self._generateAddressLineList(recipient)
+    sender_address_line_list = self._generateAddressLineList(sender)
+    source_section_career_results = self.getPortalObject().portal_catalog(
+      portal_type = 'Career',
+      parent_uid = recipient.getUid(),
+      subordination_uid = sender.getUid(),
+      validation_state = 'open'
+    )
+
+    source_section_career = (source_section_career_results[0].getObject() if len(source_section_career_results) else recipient.getDefaultCareerValue() or '')
+    if not source_section_career.getReference():
+      raise ValueError('%s has no employee number defined' % source_section_career.getRelativeUrl())
+    xml = getattr(document, page_template)(
+      user = self.getUserId(),
+      password = self.getPassword(),
+      career_start_date = source_section_career.getStartDate().strftime('%Y-%m-%d'),
+      employee_number = source_section_career.getReference(),
+      recipient_region=recipient.getDefaultAddress().getRegionValue(),
+      recipient = recipient,
+      recipient_address_line_list = recipient_address_line_list,
+      sender_region=sender.getDefaultAddress().getRegionValue(),
+      sender_address_line_list = sender_address_line_list,
+      content = base64.b64encode(document.getData()),
+      track_id = track_id
+    )
+    non_empty_lines = [line for line in xml.split('\n') if line.strip() != ""]
+    xml = ""
+    for line in non_empty_lines:
+      xml += line + "\n"
+    return Raw(xml).encode("UTF-8")
+
diff --git a/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.xml b/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.xml
new file mode 100644
index 0000000000..4cbdb9058f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/DocumentTemplateItem/portal_components/document.erp5.MailevaSOAPConnector.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Document Component" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_recorded_property_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>default_reference</string> </key>
+            <value> <string>MailevaSOAPConnector</string> </value>
+        </item>
+        <item>
+            <key> <string>default_source_reference</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>document.erp5.MailevaSOAPConnector</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Document Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </value>
+        </item>
+        <item>
+            <key> <string>workflow_history</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>component_validation_workflow</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="4" aka="AAAAAAAAAAQ=">
+    <pickle>
+      <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_log</string> </key>
+            <value>
+              <list>
+                <dictionary>
+                  <item>
+                      <key> <string>action</string> </key>
+                      <value> <string>validate</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>validation_state</string> </key>
+                      <value> <string>validated</string> </value>
+                  </item>
+                </dictionary>
+              </list>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/PathTemplateItem/portal_alarms/check_maileva_document_status.xml b/bt5/erp5_maileva_connector/PathTemplateItem/portal_alarms/check_maileva_document_status.xml
new file mode 100644
index 0000000000..955d04156c
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PathTemplateItem/portal_alarms/check_maileva_document_status.xml
@@ -0,0 +1,184 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Alarm" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>active_sense_method_id</string> </key>
+            <value> <string>Alarm_checkMailevaDocumentStatus</string> </value>
+        </item>
+        <item>
+            <key> <string>automatic_solve</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>enabled</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>check_maileva_document_status</string> </value>
+        </item>
+        <item>
+            <key> <string>periodicity_hour</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>periodicity_minute</string> </key>
+            <value>
+              <tuple>
+                <int>15</int>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>periodicity_month</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>periodicity_month_day</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>periodicity_start_date</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="DateTime" module="DateTime.DateTime"/>
+                </klass>
+                <tuple>
+                  <none/>
+                </tuple>
+                <state>
+                  <tuple>
+                    <float>1640998860.0</float>
+                    <string>GMT</string>
+                  </tuple>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>periodicity_week</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Alarm</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Check Maileva Document Status</string> </value>
+        </item>
+        <item>
+            <key> <string>workflow_history</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>edit_workflow</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_log</string> </key>
+            <value>
+              <list>
+                <dictionary>
+                  <item>
+                      <key> <string>action</string> </key>
+                      <value> <string>edit</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>actor</string> </key>
+                      <value> <string>zope</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>comment</string> </key>
+                      <value>
+                        <none/>
+                      </value>
+                  </item>
+                  <item>
+                      <key> <string>error_message</string> </key>
+                      <value> <string></string> </value>
+                  </item>
+                  <item>
+                      <key> <string>serial</string> </key>
+                      <value> <string>997.37156.13400.7065</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>state</string> </key>
+                      <value> <string>current</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>time</string> </key>
+                      <value>
+                        <object>
+                          <klass>
+                            <global name="DateTime" module="DateTime.DateTime"/>
+                          </klass>
+                          <tuple>
+                            <none/>
+                          </tuple>
+                          <state>
+                            <tuple>
+                              <float>1642410502.25</float>
+                              <string>UTC</string>
+                            </tuple>
+                          </state>
+                        </object>
+                      </value>
+                  </item>
+                </dictionary>
+              </list>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml b/bt5/erp5_maileva_connector/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
new file mode 100644
index 0000000000..d0bedf2e53
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
@@ -0,0 +1,8 @@
+<allowed_content_type_list>
+ <portal_type id="System Event Module">
+  <item>Maileva Exchange</item>
+ </portal_type>
+ <portal_type id="Web Service Tool">
+  <item>Maileva SOAP Connector</item>
+ </portal_type>
+</allowed_content_type_list>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/PortalTypePropertySheetTemplateItem/property_sheet_list.xml b/bt5/erp5_maileva_connector/PortalTypePropertySheetTemplateItem/property_sheet_list.xml
new file mode 100644
index 0000000000..f1fd47a9b2
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PortalTypePropertySheetTemplateItem/property_sheet_list.xml
@@ -0,0 +1,12 @@
+<property_sheet_list>
+ <portal_type id="Maileva Exchange">
+  <item>Amount</item>
+  <item>Arrow</item>
+  <item>Event</item>
+ </portal_type>
+ <portal_type id="Maileva SOAP Connector">
+  <item>Login</item>
+  <item>Reference</item>
+  <item>Url</item>
+ </portal_type>
+</property_sheet_list>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20Exchange.xml b/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20Exchange.xml
new file mode 100644
index 0000000000..df42cd0234
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20Exchange.xml
@@ -0,0 +1,137 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Base Type" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_property_domain_dict</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>short_title</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>acquire_local_roles</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>content_icon</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>factory</string> </key>
+            <value> <string>addXMLObject</string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Maileva Exchange</string> </value>
+        </item>
+        <item>
+            <key> <string>init_script</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>permission</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Type</string> </value>
+        </item>
+        <item>
+            <key> <string>searchable_text_property_id</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>type_class</string> </key>
+            <value> <string>Document</string> </value>
+        </item>
+        <item>
+            <key> <string>type_interface</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>type_mixin</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="TranslationInformation" module="Products.ERP5Type.TranslationProviderBase"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>domain_name</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>property_name</string> </key>
+            <value> <string>short_title</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="TranslationInformation" module="Products.ERP5Type.TranslationProviderBase"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>domain_name</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>property_name</string> </key>
+            <value> <string>title</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20SOAP%20Connector.xml b/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20SOAP%20Connector.xml
new file mode 100644
index 0000000000..28f5bbe4b5
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PortalTypeTemplateItem/portal_types/Maileva%20SOAP%20Connector.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Base Type" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>content_icon</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Maileva SOAP Connector</string> </value>
+        </item>
+        <item>
+            <key> <string>init_script</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>permission</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Type</string> </value>
+        </item>
+        <item>
+            <key> <string>type_class</string> </key>
+            <value> <string>MailevaSOAPConnector</string> </value>
+        </item>
+        <item>
+            <key> <string>type_interface</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>type_mixin</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml b/bt5/erp5_maileva_connector/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
new file mode 100644
index 0000000000..4df31d6c2e
--- /dev/null
+++ b/bt5/erp5_maileva_connector/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
@@ -0,0 +1,14 @@
+<workflow_chain>
+ <chain>
+  <type>Maileva Exchange</type>
+  <workflow>edit_workflow, system_event_workflow</workflow>
+ </chain>
+ <chain>
+  <type>Maileva SOAP Connector</type>
+  <workflow>edit_workflow, validation_workflow</workflow>
+ </chain>
+ <chain>
+  <type>PDF</type>
+  <workflow>send_state_workflow</workflow>
+ </chain>
+</workflow_chain>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector.xml
new file mode 100644
index 0000000000..fc59cd9fd1
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Folder" module="OFS.Folder"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>erp5_maileva_connector</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.py b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.py
new file mode 100644
index 0000000000..bd33f3c05f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.py
@@ -0,0 +1,20 @@
+portal = context.getPortalObject()
+maileva_connector = context.MailevaSOAPConnector_getAvailableConnector()
+
+notification_dict = maileva_connector.checkPendingNotifications()
+
+for event in portal.portal_catalog(
+  portal_type="Maileva Exchange",
+  validation_state="confirmed"
+):
+  if event.getReference() in notification_dict:
+    event.activate().MailevaExchange_checkStatus(track_id= notification_dict[event.getReference()]["id"])
+  elif getattr(event, 'track_id', ""):
+    event.activate().MailevaExchange_checkStatus(track_id= getattr(event, 'track_id'))
+  else:
+    if int(DateTime()) - int(event.getCreationDate()) > 60*60*24:
+      document = event.getFollowUpValue()
+      document.fail()
+      event.acknowledge(comment="No Response")
+
+context.activate(after_tag=tag).getId()
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.xml
new file mode 100644
index 0000000000..56461022f9
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Alarm_checkMailevaDocumentStatus.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>tag, fixit, params</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Alarm_checkMailevaDocumentStatus</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus.xml
new file mode 100644
index 0000000000..a16d3240b6
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ERP5 Form" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>Base_edit</string> </value>
+        </item>
+        <item>
+            <key> <string>action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value>
+              <list/>
+            </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+                <string>center</string>
+                <string>bottom</string>
+                <string>hidden</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>bottom</string> </key>
+                    <value>
+                      <list>
+                        <string>listbox</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>center</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>my_title</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list>
+                        <string>my_translated_send_state_title</string>
+                      </list>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Document_viewMailevaConnectionStatus</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string>Document_viewMailevaConnectionStatus</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>ERP5 Form</string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_view</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>update_action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/listbox.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/listbox.xml
new file mode 100644
index 0000000000..3604056d63
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/listbox.xml
@@ -0,0 +1,144 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>columns</string>
+                <string>list_method</string>
+                <string>portal_types</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>listbox</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>columns</string> </key>
+                    <value>
+                      <list>
+                        <tuple>
+                          <string>title</string>
+                          <string>Title</string>
+                        </tuple>
+                        <tuple>
+                          <string>source_title</string>
+                          <string>Source</string>
+                        </tuple>
+                        <tuple>
+                          <string>destination_title</string>
+                          <string>Destination</string>
+                        </tuple>
+                        <tuple>
+                          <string>resource_title</string>
+                          <string>Resource</string>
+                        </tuple>
+                        <tuple>
+                          <string>creation_date</string>
+                          <string>Creation Date</string>
+                        </tuple>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_listbox</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewBaseFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>list_method</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>portal_types</string> </key>
+                    <value>
+                      <list>
+                        <tuple>
+                          <string>Maileva Exchange</string>
+                          <string>Maileva Exchange</string>
+                        </tuple>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Send History</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Method" module="Products.Formulator.MethodField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>method_name</string> </key>
+            <value> <string>getFollowUpRelatedValueList</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_title.xml
new file mode 100644
index 0000000000..4126d441ba
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_title.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>editable</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_title</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewDMSFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_translated_send_state_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_translated_send_state_title.xml
new file mode 100644
index 0000000000..8b793fbfd3
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/Document_viewMailevaConnectionStatus/my_translated_send_state_title.xml
@@ -0,0 +1,272 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="StringField" module="Products.Formulator.StandardFields"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_translated_send_state_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <string>required_not_found</string> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <string>too_long</string> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <int>20</int> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string>text</string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Send State</string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.py b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.py
new file mode 100644
index 0000000000..6c23e523af
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.py
@@ -0,0 +1,14 @@
+maileva_connector = context.MailevaSOAPConnector_getAvailableConnector()
+result = maileva_connector.getPendingNotificationDetails(track_id)
+if result['status'] == "SENT":
+  document = context.getFollowUpValue()
+  if result['notification_status'] in ("ACCEPT", "OK"):
+    document.succeed()
+  else:
+    document.fail()
+  context.acknowledge()
+
+context.edit(
+  response_detail = result['detail'],
+  track_id = track_id
+)
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.xml
new file mode 100644
index 0000000000..2d3fa7db9a
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_checkStatus.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>track_id</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MailevaExchange_checkStatus</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view.xml
new file mode 100644
index 0000000000..2965265eb1
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view.xml
@@ -0,0 +1,152 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ERP5 Form" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary/>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>Base_edit</string> </value>
+        </item>
+        <item>
+            <key> <string>action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value> <string>[]</string> </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+                <string>center</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>center</string> </key>
+                    <value>
+                      <list>
+                        <string>my_request</string>
+                        <string>my_response</string>
+                        <string>my_response_detail</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>my_title</string>
+                        <string>my_reference</string>
+                        <string>my_track_id</string>
+                        <string>my_source_title</string>
+                        <string>my_resource_title</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list>
+                        <string>my_destination_title</string>
+                        <string>my_follow_up_title</string>
+                        <string>my_translated_validation_state_title</string>
+                      </list>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MailevaExchange_view</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string>HTTPExchange_view</string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_view</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Maileva Exchange</string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>update_action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_destination_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_destination_title.xml
new file mode 100644
index 0000000000..1c8553c7ab
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_destination_title.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_destination_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_ambiguous</unicode> </key>
+                    <value> <string>Select appropriate document in the list.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_empty</unicode> </key>
+                    <value> <string>No such document was found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_too_long</unicode> </key>
+                    <value> <string>Too many documents were found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>extra_context</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_relation_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Destination</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_follow_up_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_follow_up_title.xml
new file mode 100644
index 0000000000..47b15448fd
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_follow_up_title.xml
@@ -0,0 +1,130 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>portal_type</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_follow_up_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_ambiguous</unicode> </key>
+                    <value> <string>Select appropriate document in the list.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_empty</unicode> </key>
+                    <value> <string>No such document was found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_too_long</unicode> </key>
+                    <value> <string>Too many documents were found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>extra_context</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_relation_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>portal_type</string> </key>
+                    <value>
+                      <list>
+                        <tuple>
+                          <string>PDF</string>
+                          <string>PDF</string>
+                        </tuple>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Follow Up</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_reference.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_reference.xml
new file mode 100644
index 0000000000..dffe384866
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_reference.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_reference</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_string_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Reference</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_request.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_request.xml
new file mode 100644
index 0000000000..2b44e2c90f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_request.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>editable</string>
+                <string>enabled</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_request</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_raw_text_content</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Request</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_resource_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_resource_title.xml
new file mode 100644
index 0000000000..0efb8e1e07
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_resource_title.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_resource_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_ambiguous</unicode> </key>
+                    <value> <string>Select appropriate document in the list.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_empty</unicode> </key>
+                    <value> <string>No such document was found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_too_long</unicode> </key>
+                    <value> <string>Too many documents were found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>extra_context</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_relation_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Resource</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response.xml
new file mode 100644
index 0000000000..168e0d85b0
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>editable</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_response</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_raw_text_content</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Response</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response_detail.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response_detail.xml
new file mode 100644
index 0000000000..7df3ebf84f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_response_detail.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>editable</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_response_detail</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_raw_text_content</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Response Detail</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_source_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_source_title.xml
new file mode 100644
index 0000000000..52c5bafe34
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_source_title.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_source_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_ambiguous</unicode> </key>
+                    <value> <string>Select appropriate document in the list.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_empty</unicode> </key>
+                    <value> <string>No such document was found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>relation_result_too_long</unicode> </key>
+                    <value> <string>Too many documents were found.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>extra_context</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_relation_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Source</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_title.xml
new file mode 100644
index 0000000000..d5b428b513
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_title.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_string_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Title</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_track_id.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_track_id.xml
new file mode 100644
index 0000000000..913a90372e
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_track_id.xml
@@ -0,0 +1,272 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="StringField" module="Products.Formulator.StandardFields"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_track_id</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <string>required_not_found</string> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <string>too_long</string> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <int>20</int> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string>text</string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Track Id</string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_translated_validation_state_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_translated_validation_state_title.xml
new file mode 100644
index 0000000000..cd406c701a
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaExchange_view/my_translated_validation_state_title.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_translated_validation_state_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_translated_workflow_state_title</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.py b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.py
new file mode 100644
index 0000000000..c545911fee
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.py
@@ -0,0 +1,6 @@
+maileva_connector = context.portal_catalog.getResultValue(
+  reference=reference,
+  validation_state='validated')
+if not maileva_connector:
+  raise ValueError('Maileav soap connector is not defined')
+return maileva_connector
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.xml
new file mode 100644
index 0000000000..8e7a282669
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_getAvailableConnector.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>reference="maileva_soap_connector"</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MailevaSOAPConnector_getAvailableConnector</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view.xml
new file mode 100644
index 0000000000..710f399d19
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view.xml
@@ -0,0 +1,166 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ERP5 Form" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary/>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>Base_edit</string> </value>
+        </item>
+        <item>
+            <key> <string>action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value>
+              <list>
+                <string>[]</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+                <string>center</string>
+                <string>bottom</string>
+                <string>hidden</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>bottom</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>center</string> </key>
+                    <value>
+                      <list>
+                        <string>my_description</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>my_reference</string>
+                        <string>my_user_id</string>
+                        <string>my_password</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list>
+                        <string>my_submit_url_string</string>
+                        <string>my_tracking_url_string</string>
+                        <string>my_translated_validation_state_title</string>
+                      </list>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MailevaSOAPConnector_view</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string>FTPConnector_view</string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_view</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Maileva SOAP Connector</string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>update_action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_description.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_description.xml
new file mode 100644
index 0000000000..fe5da6fa62
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_description.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_description</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>line_too_long</unicode> </key>
+                    <value> <string>A line was too long.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_many_lines</unicode> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_text_area_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Description</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_password.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_password.xml
new file mode 100644
index 0000000000..adc69ca4b6
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_password.xml
@@ -0,0 +1,272 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PasswordField" module="Products.Formulator.StandardFields"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_password</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <string>required_not_found</string> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <string>too_long</string> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <int>20</int> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string>text</string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Password</string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_reference.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_reference.xml
new file mode 100644
index 0000000000..889fa5bbdf
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_reference.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_reference</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_reference</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_submit_url_string.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_submit_url_string.xml
new file mode 100644
index 0000000000..790435bf35
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_submit_url_string.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_submit_url_string</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_string_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Submit Url</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_tracking_url_string.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_tracking_url_string.xml
new file mode 100644
index 0000000000..7f7b73d3d5
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_tracking_url_string.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_tracking_url_string</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_string_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Tracking Url</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_translated_validation_state_title.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_translated_validation_state_title.xml
new file mode 100644
index 0000000000..0d634c8acb
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_translated_validation_state_title.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_translated_validation_state_title</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_view_mode_translated_workflow_state_title</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_user_id.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_user_id.xml
new file mode 100644
index 0000000000..aefee9438b
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/MailevaSOAPConnector_view/my_user_id.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my_user_id</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>required_not_found</unicode> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <unicode>too_long</unicode> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_string_field</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>User ID</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.py b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.py
new file mode 100644
index 0000000000..4d2ed517d0
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.py
@@ -0,0 +1,9 @@
+if context.getSendState() != 'failed':
+  return context.Base_redirect('Document_viewMailevaConnectionStatus', keep_items={'portal_status_message': 'This document is not in failed state'})
+
+maileva_exchange = context.getFollowUpRelatedValue(portal_type='Maileva Exchange')
+context.PDF_sendToMaileva(
+  recipient = maileva_exchange.getDestinationValue(),
+  sender = maileva_exchange.getSourceValue()
+)
+return context.Base_redirect('PDF_viewPDFJSPreview', keep_items={'portal_status_message': 'This document is resending to maileva'})
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.xml
new file mode 100644
index 0000000000..60a5e58f8b
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_reSendToMaileva.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>PDF_reSendToMaileva</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.py b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.py
new file mode 100644
index 0000000000..a9d2c05a42
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.py
@@ -0,0 +1,23 @@
+from DateTime import DateTime
+
+now = DateTime()
+portal = context.getPortalObject()
+
+# Do some check here
+maileva_connector = context.MailevaSOAPConnector_getAvailableConnector()
+
+today = now.toZone('UTC').asdatetime().strftime('%Y-%m-%d')
+number = str(portal.portal_ids.generateNewId(
+                     id_group='maileva_%s' % today,
+                     id_generator='uid')).zfill(6)
+reference="maileva-%s-%s" % (today, number)
+
+
+maileva_connector.activate().submitRequest(
+  recipient_url = recipient.getRelativeUrl(),
+  sender_url = sender.getRelativeUrl(),
+  document_url = context.getRelativeUrl(),
+  track_id = reference
+)
+
+context.send()
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.xml
new file mode 100644
index 0000000000..a98afc4d19
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_sendToMaileva.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>recipient, sender, **kw</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>PDF_sendToMaileva</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog.xml
new file mode 100644
index 0000000000..f5ab9bed17
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog.xml
@@ -0,0 +1,139 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ERP5 Form" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>PDF_reSendToMaileva</string> </value>
+        </item>
+        <item>
+            <key> <string>action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value>
+              <list/>
+            </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+                <string>center</string>
+                <string>bottom</string>
+                <string>hidden</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>bottom</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>center</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>your_warning</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>PDF_viewReSendToMailevaDialog</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string>PDF_sendToMailevaDialog</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>ERP5 Form</string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_dialog</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Resend Document</string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>update_action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog/your_warning.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog/your_warning.xml
new file mode 100644
index 0000000000..7ca31188e4
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/PDF_viewReSendToMailevaDialog/your_warning.xml
@@ -0,0 +1,272 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="StringField" module="Products.Formulator.StandardFields"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>your_warning</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <string>required_not_found</string> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <string>too_long</string> </key>
+                    <value> <string>Too much input was given.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string>Do you want to send this document to maileva?</string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_maxwidth</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>display_width</string> </key>
+                    <value> <int>20</int> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>input_type</string> </key>
+                    <value> <string>text</string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Warning</string> </value>
+                </item>
+                <item>
+                    <key> <string>truncate</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.xml
new file mode 100644
index 0000000000..9abbd1f2d9
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/xml</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>maileva_connection</string> </value>
+        </item>
+        <item>
+            <key> <string>output_encoding</string> </key>
+            <value> <string>utf-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <unicode></unicode> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.zpt b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.zpt
new file mode 100644
index 0000000000..a2686acf5f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection.zpt
@@ -0,0 +1,25 @@
+<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"
+           xmlns:metal="http://xml.zope.org/namespaces/metal"
+           tal:define="recipient_region python: options.get('recipient_region');
+                       recipient python: options.get('recipient');
+                       sender_region python: options.get('sender_region');
+                       sender_address_line_list python: options.get('sender_address_line_list');
+                       recipient_address_line_list python: options.get('recipient_address_line_list');">
+  <SOAP-ENV:Envelope xmlns:ns0="http://connector.services.siclv2.maileva.fr/"
+                     xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/"
+                     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+                     xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+                     xmlns:com="http://www.maileva.fr/CommonSchema"
+                     xmlns:pjs="http://www.maileva.fr/MailevaPJSSchema"
+                     xmlns:spec="http://www.maileva.fr/MailevaSpecificSchema"
+                     >
+  <SOAP-ENV:Header/>
+   <ns1:Body>
+      <ns0:submit>
+        <campaign Version="5.0" Application="connecteur_Maileva">
+          <tal:block metal:use-macro="here/maileva_connection_request/macros/create_request" />
+        </campaign>
+     </ns0:submit>
+    </ns1:Body>
+  </SOAP-ENV:Envelope>
+</tal:block>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.xml
new file mode 100644
index 0000000000..c46ee21499
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/xml</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>maileva_connection_for_test</string> </value>
+        </item>
+        <item>
+            <key> <string>output_encoding</string> </key>
+            <value> <string>utf-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <unicode></unicode> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.zpt b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.zpt
new file mode 100644
index 0000000000..986965abe8
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_for_test.zpt
@@ -0,0 +1,15 @@
+<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"
+           xmlns:metal="http://xml.zope.org/namespaces/metal"
+           tal:define="recipient_region python: options.get('recipient_region');
+                       recipient python: options.get('recipient');
+                       sender_region python: options.get('sender_region');
+                       sender_address_line_list python: options.get('sender_address_line_list');
+                       recipient_address_line_list python: options.get('recipient_address_line_list');">
+
+  <pjs:Campaign Application="connecteur_Maileva"
+                xmlns:com="http://www.maileva.fr/CommonSchema"
+                xmlns:pjs="http://www.maileva.fr/MailevaPJSSchema"
+                xmlns:spec="http://www.maileva.fr/MailevaSpecificSchema">
+    <tal:block metal:use-macro="here/maileva_connection_request/macros/create_request" />
+  </pjs:Campaign>
+</tal:block>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.xml b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.xml
new file mode 100644
index 0000000000..008504846e
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/xml</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>maileva_connection_request</string> </value>
+        </item>
+        <item>
+            <key> <string>output_encoding</string> </key>
+            <value> <string>utf-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <unicode></unicode> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.zpt b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.zpt
new file mode 100644
index 0000000000..b008c40a56
--- /dev/null
+++ b/bt5/erp5_maileva_connector/SkinTemplateItem/portal_skins/erp5_maileva_connector/maileva_connection_request.zpt
@@ -0,0 +1,102 @@
+<tal:block metal:define-macro="create_request"
+           xmlns:tal="http://xml.zope.org/namespaces/tal"
+           xmlns:metal="http://xml.zope.org/namespaces/metal"
+           xmlns:com="http://www.maileva.fr/CommonSchema"
+           xmlns:pjs="http://www.maileva.fr/MailevaPJSSchema"
+           xmlns:spec="http://www.maileva.fr/MailevaSpecificSchema">
+          <pjs:Requests>
+            <pjs:Request MediaType="DIGITAL" tal:attributes="TrackId python: options.get('track_id')">
+              <pjs:Recipients>
+                <pjs:Internal>
+                  <pjs:Recipient Id="1">
+                    <com:PaperAddress>
+                      <com:AddressLines>
+                        <com:AddressLine1 tal:content="python: recipient_address_line_list[0]" tal:condition="python: recipient_address_line_list[0]"></com:AddressLine1>
+                        <com:AddressLine2 tal:content="python: recipient_address_line_list[1]" tal:condition="python: recipient_address_line_list[1]"></com:AddressLine2>
+                        <com:AddressLine3 tal:content="python: recipient_address_line_list[2]" tal:condition="python: recipient_address_line_list[2]"></com:AddressLine3>
+                        <com:AddressLine4 tal:content="python: recipient_address_line_list[3]" tal:condition="python: recipient_address_line_list[3]"></com:AddressLine4>
+                        <com:AddressLine5 tal:content="python: recipient_address_line_list[4]" tal:condition="python: recipient_address_line_list[4]"></com:AddressLine5>
+                        <com:AddressLine6 tal:content="python: recipient_address_line_list[5]" tal:condition="python: recipient_address_line_list[5]"></com:AddressLine6>
+                      </com:AddressLines>
+                      <com:Country tal:content="recipient_region/getTitle"></com:Country>
+                      <com:CountryCode tal:content="recipient_region/getCodification"></com:CountryCode>
+                    </com:PaperAddress>
+                    <com:DigitalAddress>
+                      <com:FirstName tal:content="recipient/getFirstName"></com:FirstName>
+                      <com:LastName tal:content="recipient/getLastName"></com:LastName>
+                      <com:Identifier tal:content="options/employee_number"></com:Identifier>
+                    </com:DigitalAddress>
+                  </pjs:Recipient>
+                </pjs:Internal>
+              </pjs:Recipients>
+              <pjs:Senders>
+                <pjs:Sender Id="001">
+                  <com:PaperAddress>
+                    <com:AddressLines>
+                      <com:AddressLine1 tal:content="python: sender_address_line_list[0]" tal:condition="python: sender_address_line_list[0]"></com:AddressLine1>
+                      <com:AddressLine2 tal:content="python: sender_address_line_list[1]" tal:condition="python: sender_address_line_list[1]"></com:AddressLine2>
+                      <com:AddressLine3 tal:content="python: sender_address_line_list[2]" tal:condition="python: sender_address_line_list[2]"></com:AddressLine3>
+                      <com:AddressLine4 tal:content="python: sender_address_line_list[3]" tal:condition="python: sender_address_line_list[3]"></com:AddressLine4>
+                      <com:AddressLine5 tal:content="python: sender_address_line_list[4]" tal:condition="python: sender_address_line_list[4]"></com:AddressLine5>
+                      <com:AddressLine6 tal:content="python: sender_address_line_list[5]" tal:condition="python: sender_address_line_list[5]"></com:AddressLine6>
+                    </com:AddressLines>
+                    <com:Country tal:content="sender_region/getTitle"></com:Country>
+                    <com:CountryCode tal:content="sender_region/getCodification"></com:CountryCode>
+                  </com:PaperAddress>
+                </pjs:Sender>
+              </pjs:Senders>
+              <pjs:DocumentData>
+                <pjs:Documents>
+                  <pjs:Document Id="001">
+                    <com:MergeFields>
+                      <com:MergeField>
+                        <com:PageNumber>1</com:PageNumber>
+                        <com:FontName>Arial</com:FontName>
+                        <com:FontSize>12</com:FontSize>
+                        <com:FontColor>#000000</com:FontColor>
+                        <com:FontBold>false</com:FontBold>
+                        <com:FontItalic>false</com:FontItalic>
+                        <com:FontUnderline>false</com:FontUnderline>
+                        <com:PosUnit>CM</com:PosUnit>
+                        <com:PosX>12.0</com:PosX>
+                        <com:PosY>7.0</com:PosY>
+                        <com:Content>
+                          <com:Automatic>DIGITAL_SECURITY_CODE</com:Automatic>
+                        </com:Content>
+                        <com:Orientation>0</com:Orientation>
+                        <com:Halign>CENTER</com:Halign>
+                      </com:MergeField>
+                    </com:MergeFields>
+                    <com:Content>
+                      <com:Value tal:content="options/content"></com:Value>
+                    </com:Content>
+                  </pjs:Document>
+                </pjs:Documents>
+              </pjs:DocumentData>
+              <pjs:Options>
+                <pjs:RequestOption>
+                  <spec:DigitalOption>
+                    <spec:FoldOption>
+                      <spec:PostageClass>ECOPLI_GRAND_COMPTE</spec:PostageClass>
+                      <spec:DepositTitle tal:content="here/getTitle"></spec:DepositTitle>
+                      <spec:DepositDescription tal:content="here/getTitle"></spec:DepositDescription>
+                      <spec:UseFlyLeaf>true</spec:UseFlyLeaf>
+                    </spec:FoldOption>
+                    <spec:DepositType>PAYSLIP</spec:DepositType>
+                    <spec:DigitalArchiving>600</spec:DigitalArchiving>
+                  </spec:DigitalOption>
+                </pjs:RequestOption>
+              </pjs:Options>
+              <pjs:Notifications>
+                <pjs:Notification Type="GENERAL">
+                 <spec:Format>XML</spec:Format>
+                  <spec:Protocols>
+                    <spec:Protocol>
+                      <spec:Ws/>
+                    </spec:Protocol>
+                  </spec:Protocols>
+                </pjs:Notification>
+              </pjs:Notifications>
+            </pjs:Request>
+          </pjs:Requests>
+</tal:block>
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.py b/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.py
new file mode 100644
index 0000000000..6804f35d0b
--- /dev/null
+++ b/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.py
@@ -0,0 +1,442 @@
+##############################################################################
+#
+# Copyright (c) 2002-2021 Nexedi SA and Contributors. All Rights Reserved.
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+##############################################################################
+
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
+import mock
+from DateTime import DateTime
+from lxml import etree
+import os.path
+import Products.ERP5.tests
+
+
+
+# For mock
+class dotdict(dict):
+  """dot.notation access to dictionary attributes"""
+  __getattr__ = dict.get
+  __setattr__ = dict.__setitem__
+  __delattr__ = dict.__delitem__
+
+class ServiceWithSuccess:
+  get_notification_detail = False
+  def submit(self, **kw):
+    return 'success'
+  def checkPendingNotifications(self, notification_type):
+    # if already get, no longer available in list
+    if ServiceWithSuccess.get_notification_detail:
+      return []
+    return [dotdict({
+      'id': 192625,
+      'reqId': 579400,
+      'reqTrackId': 'test_tracking_id',
+      'depositId': '2520180000X',
+      'depositTrackId': '070ca402c5aa45e1bc06a513451ad76b'
+    })]
+  def getPendingNotificationDetails(self, track_id):
+    # first time is always PENDING
+    if ServiceWithSuccess.get_notification_detail:
+      status = 'SENT'
+    else:
+      ServiceWithSuccess.get_notification_detail = True
+      status = 'PENDING'
+
+    return dotdict({
+      'id': 192625,
+      'status': status,
+      'notificationStatus': 'ACCEPT',
+      'notificationType': 'GENERAL'
+    })
+
+class ClientWithSuccess:
+  def __init__(self):
+    self.service = ServiceWithSuccess()
+
+def submitRequestWithSuccess(**kw):
+  return ClientWithSuccess()
+
+
+
+
+class ServiceWithFailure:
+  get_notification_detail = False
+  def submit(self, **kw):
+    return 'success'
+  def checkPendingNotifications(self, notification_type):
+    if ServiceWithFailure.get_notification_detail:
+      return []
+    return [dotdict({
+      'id': 192625,
+      'reqId': 579400,
+      'reqTrackId': 'test_tracking_id',
+      'depositId': '2520180000X',
+      'depositTrackId': '070ca402c5aa45e1bc06a513451ad76b'
+    })]
+  def getPendingNotificationDetails(self, track_id):
+    if ServiceWithFailure.get_notification_detail:
+      status = 'SENT'
+    else:
+      ServiceWithFailure.get_notification_detail = True
+      status = 'PENDING'
+    return dotdict({
+      'id': 192625,
+      'status': status,
+      'notificationStatus': 'NACCEPT',
+      'notificationType': 'GENERAL'
+    })
+
+class ClientWithFailure:
+  def __init__(self):
+    self.service = ServiceWithFailure()
+
+def submitRequestWithFailure(**kw):
+  return ClientWithFailure()
+
+
+
+
+
+class ServiceWithException:
+  def submit(self, **kw):
+    raise Exception('exception')
+
+class ClientWithException:
+  def __init__(self):
+    self.service = ServiceWithException()
+
+def submitRequestWithException(**kw):
+  return ClientWithException()
+
+
+class testMailevaSOAPConnector(ERP5TypeTestCase):
+
+  def afterSetUp(self):
+    maileva_connector = self.portal.portal_catalog.getResultValue(
+      portal_type='Maileva SOAP Connector',
+      reference='maileva_soap_connector',
+      validation_state='validated')
+
+    if not maileva_connector:
+      maileva_connector = self.portal.portal_web_services.newContent(
+        portal_type='Maileva SOAP Connector',
+        user_id='test',
+        password='test',
+        submit_url_string='mysubmit',
+        tracking_url_string='mytracking',
+        reference='maileva_soap_connector')
+      maileva_connector.validate()
+    if not getattr(self.portal.portal_categories.region, 'france', None):
+      self.portal.portal_categories.region.newContent(
+        portal_type='Category',
+        id='france',
+        codification='FR')
+    if not getattr(self.portal.portal_categories.social_title, 'testmr', None):
+      self.portal.portal_categories.social_title.newContent(
+        portal_type='Category',
+        id='testmr',
+        title='MR')
+
+    sender = self.portal.portal_catalog.getResultValue(
+      portal_type='Organisation',
+      reference='test_maileva_connector_sender',
+    )
+    if not sender:
+      sender = self.portal.organisation_module.newContent(
+        portal_type='Organisation',
+        reference='test_maileva_connector_sender',
+        corporate_name='test_maileva_connector_sender',
+        default_address_region='france',
+        default_address_street_address="122\nRue 11",
+        default_address_zip_code="59000",
+        default_address_city="LILLE"
+      )
+    recipient = self.portal.portal_catalog.getResultValue(
+      portal_type='Person',
+      reference='test_maileva_connector_recipient',
+    )
+    if not recipient:
+      recipient = self.portal.person_module.newContent(
+        portal_type='Person',
+        social_title="testmr",
+        reference='test_maileva_connector_recipient',
+        first_name='first',
+        last_name='last',
+        default_address_region='france',
+        default_address_street_address="123\nRue 12",
+        career_subordination_value=sender,
+        default_address_zip_code="59000",
+        default_address_city="LILLE"
+      )
+      career = recipient.getDefaultCareerValue()
+      career.edit(
+        start_date = DateTime("2021/12/01"),
+        title='default_career',
+        reference='00000001'
+      )
+      career.start()
+
+
+    document = self.portal.document_module.newContent(portal_type='PDF')
+
+    self.maileva_connector = maileva_connector
+    self.sender = sender
+    self.recipient = recipient
+    self.document = document
+    self.tic()
+
+  def getTitle(self):
+    return "Test Maileva SOAP Connector"
+
+  def test_send_pdf_to_maileva_with_success(self):
+    self.portal.system_event_module.manage_delObjects([x.getId() for x in self.portal.system_event_module.objectValues(portal_type='Maileva Exchange')])
+    self.tic()
+    with mock.patch(
+      'suds.client.Client',
+      side_effect=submitRequestWithSuccess,
+    ):
+      self.document.PDF_sendToMaileva(
+      recipient =  self.recipient,
+      sender = self.sender)
+      self.tic()
+      event = self.maileva_connector.getResourceRelatedValue(portal_type='Maileva Exchange')
+      self.assertEqual(event.getValidationState(), 'confirmed')
+      self.assertEqual(event.getSourceValue(), self.sender)
+      self.assertEqual(event.getDestinationValue(), self.recipient)
+      self.assertEqual(event.getFollowUpValue(), self.document)
+      self.assertEqual(self.document.getSendState(), 'sending')
+      self.assertNotEqual(event.getProperty('request', ''), None)
+      self.assertEqual(event.getProperty('response', ''), 'success')
+      self.tic()
+      # check response
+      event.setReference('test_tracking_id')
+      self.portal.portal_alarms.check_maileva_document_status.activeSense()
+      self.tic()
+      self.assertEqual(getattr(event, 'track_id', ""), 192625)
+      self.assertEqual(event.getValidationState(), 'confirmed')
+      self.assertEqual(self.document.getSendState(), 'sending')
+      self.assertTrue('PENDING' in event.getProperty('response_detail', ''))
+
+      self.portal.portal_alarms.check_maileva_document_status.activeSense()
+      self.tic()
+      self.assertEqual(getattr(event, 'track_id', ""), 192625)
+      self.assertEqual(event.getValidationState(), 'acknowledged')
+      self.assertEqual(self.document.getSendState(), 'success')
+      self.assertTrue('SENT' in event.getProperty('response_detail', ''))
+
+  def test_send_pdf_to_maileva_with_failure(self):
+    self.portal.system_event_module.manage_delObjects([x.getId() for x in self.portal.system_event_module.objectValues(portal_type='Maileva Exchange')])
+    self.tic()
+    with mock.patch(
+      'suds.client.Client',
+      side_effect=submitRequestWithFailure,
+    ):
+      self.document.PDF_sendToMaileva(
+      recipient =  self.recipient,
+      sender = self.sender)
+      self.tic()
+      event = self.maileva_connector.getResourceRelatedValue(portal_type='Maileva Exchange')
+      self.assertEqual(event.getValidationState(), 'confirmed')
+      self.assertEqual(event.getSourceValue(), self.sender)
+      self.assertEqual(event.getDestinationValue(), self.recipient)
+      self.assertEqual(event.getFollowUpValue(), self.document)
+      self.assertEqual(self.document.getSendState(), 'sending')
+      self.assertNotEqual(event.getProperty('request', ''), None)
+      self.assertEqual(event.getProperty('response', ''), 'success')
+      self.tic()
+      # check response
+      event.setReference('test_tracking_id')
+      self.portal.portal_alarms.check_maileva_document_status.activeSense()
+      self.tic()
+      self.assertEqual(getattr(event, 'track_id', ""), 192625)
+      self.assertEqual(event.getValidationState(), 'confirmed')
+      self.assertEqual(self.document.getSendState(), 'sending')
+      self.assertTrue('PENDING' in event.getProperty('response_detail', ''))
+
+      self.portal.portal_alarms.check_maileva_document_status.activeSense()
+      self.tic()
+      self.assertEqual(getattr(event, 'track_id', ""), 192625)
+      self.assertEqual(event.getValidationState(), 'acknowledged')
+      self.assertEqual(self.document.getSendState(), 'failed')
+      self.assertTrue('SENT' in event.getProperty('response_detail', ''))
+      self.assertTrue('NACCEPT' in event.getProperty('response_detail', ''))
+
+
+  def test_failed_to_submit_to_maileva(self):
+    self.portal.system_event_module.manage_delObjects([x.getId() for x in self.portal.system_event_module.objectValues(portal_type='Maileva Exchange')])
+    self.tic()
+    with mock.patch(
+      'suds.client.Client',
+      side_effect=submitRequestWithException,
+    ):
+      self.document.PDF_sendToMaileva(
+      recipient =  self.recipient,
+      sender = self.sender)
+      self.tic()
+      event = self.maileva_connector.getResourceRelatedValue(portal_type='Maileva Exchange')
+      self.assertEqual(event.getValidationState(), 'acknowledged')
+      self.assertEqual(event.getSourceValue(), self.sender)
+      self.assertEqual(event.getDestinationValue(), self.recipient)
+      self.assertEqual(event.getFollowUpValue(), self.document)
+      self.assertEqual(self.document.getSendState(), 'failed')
+      self.assertNotEqual(event.getProperty('request', ''), None)
+      self.assertTrue('exception' in event.getProperty('response', ''))
+      self.tic()
+
+  def test_maileva_xml(self):
+    xml = self.maileva_connector.generateRequestXML(self.recipient, self.sender, self.document, 'test_track_id')
+    self.assertEqual(xml, '''  <SOAP-ENV:Envelope xmlns:ns0="http://connector.services.siclv2.maileva.fr/" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.maileva.fr/CommonSchema" xmlns:pjs="http://www.maileva.fr/MailevaPJSSchema" xmlns:spec="http://www.maileva.fr/MailevaSpecificSchema">
+  <SOAP-ENV:Header/>
+   <SOAP-ENV:Body>
+      <ns0:submit>
+        <campaign Version="5.0" Application="connecteur_Maileva">
+          <pjs:Requests>
+            <pjs:Request MediaType="DIGITAL"
+                         TrackId="test_track_id">
+              <pjs:Recipients>
+                <pjs:Internal>
+                  <pjs:Recipient Id="1">
+                    <com:PaperAddress>
+                      <com:AddressLines>
+                        <com:AddressLine1>MR first last</com:AddressLine1>
+                        <com:AddressLine2>123</com:AddressLine2>
+                        <com:AddressLine3>Rue 12</com:AddressLine3>
+                        <com:AddressLine6>59000 LILLE</com:AddressLine6>
+                      </com:AddressLines>
+                      <com:Country>france</com:Country>
+                      <com:CountryCode>FR</com:CountryCode>
+                    </com:PaperAddress>
+                    <com:DigitalAddress>
+                      <com:FirstName>first</com:FirstName>
+                      <com:LastName>last</com:LastName>
+                      <com:Identifier>00000001</com:Identifier>
+                    </com:DigitalAddress>
+                  </pjs:Recipient>
+                </pjs:Internal>
+              </pjs:Recipients>
+              <pjs:Senders>
+                <pjs:Sender Id="001">
+                  <com:PaperAddress>
+                    <com:AddressLines>
+                      <com:AddressLine1>test_maileva_connector_sender</com:AddressLine1>
+                      <com:AddressLine2>122</com:AddressLine2>
+                      <com:AddressLine3>Rue 11</com:AddressLine3>
+                      <com:AddressLine6>59000 LILLE CEDEX</com:AddressLine6>
+                    </com:AddressLines>
+                    <com:Country>france</com:Country>
+                    <com:CountryCode>FR</com:CountryCode>
+                  </com:PaperAddress>
+                </pjs:Sender>
+              </pjs:Senders>
+              <pjs:DocumentData>
+                <pjs:Documents>
+                  <pjs:Document Id="001">
+                    <com:MergeFields>
+                      <com:MergeField>
+                        <com:PageNumber>1</com:PageNumber>
+                        <com:FontName>Arial</com:FontName>
+                        <com:FontSize>12</com:FontSize>
+                        <com:FontColor>#000000</com:FontColor>
+                        <com:FontBold>false</com:FontBold>
+                        <com:FontItalic>false</com:FontItalic>
+                        <com:FontUnderline>false</com:FontUnderline>
+                        <com:PosUnit>CM</com:PosUnit>
+                        <com:PosX>12.0</com:PosX>
+                        <com:PosY>7.0</com:PosY>
+                        <com:Content>
+                          <com:Automatic>DIGITAL_SECURITY_CODE</com:Automatic>
+                        </com:Content>
+                        <com:Orientation>0</com:Orientation>
+                        <com:Halign>CENTER</com:Halign>
+                      </com:MergeField>
+                    </com:MergeFields>
+                    <com:Content>
+                      <com:Value></com:Value>
+                    </com:Content>
+                  </pjs:Document>
+                </pjs:Documents>
+              </pjs:DocumentData>
+              <pjs:Options>
+                <pjs:RequestOption>
+                  <spec:DigitalOption>
+                    <spec:FoldOption>
+                      <spec:PostageClass>ECOPLI_GRAND_COMPTE</spec:PostageClass>
+                      <spec:DepositTitle>%s</spec:DepositTitle>
+                      <spec:DepositDescription>%s</spec:DepositDescription>
+                      <spec:UseFlyLeaf>true</spec:UseFlyLeaf>
+                    </spec:FoldOption>
+                    <spec:DepositType>PAYSLIP</spec:DepositType>
+                    <spec:DigitalArchiving>600</spec:DigitalArchiving>
+                  </spec:DigitalOption>
+                </pjs:RequestOption>
+              </pjs:Options>
+              <pjs:Notifications>
+                <pjs:Notification Type="GENERAL">
+                 <spec:Format>XML</spec:Format>
+                  <spec:Protocols>
+                    <spec:Protocol>
+                      <spec:Ws/>
+                    </spec:Protocol>
+                  </spec:Protocols>
+                </pjs:Notification>
+              </pjs:Notifications>
+            </pjs:Request>
+          </pjs:Requests>
+        </campaign>
+     </ns0:submit>
+    </SOAP-ENV:Body>
+  </SOAP-ENV:Envelope>
+''' %  (self.document.getTitle(),  self.document.getTitle())
+)
+
+  def test_maileva_request_validation(self):
+    xml = self.maileva_connector.generateRequestXML(self.recipient, self.sender, self.document, 'test_track_id', 'maileva_connection_for_test')
+    # lxml doesn't support https in schemaLocation, download locally
+    src = open(os.path.join(os.path.dirname(Products.ERP5.tests.__file__), 'test_data', "MailevaPJSSchema.xsd"))
+    xsd = etree.parse(src)
+    schema_validator = etree.XMLSchema(xsd)
+    schema_validator.assertValid(etree.fromstring(xml.encode("UTF-8")))
+
+
+  def test_send_state_workflow(self):
+    pdf = self.portal.document_module.newContent(portal_type='PDF')
+    self.tic()
+    self.assertEqual(pdf.getSendState(),'draft')
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'send'))
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'fail'))
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'succeed'))
+    pdf.send()
+    self.assertEqual(pdf.getSendState(),'sending')
+    self.tic()
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'fail'))
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'succeed'))
+    pdf.fail()
+    self.assertEqual(pdf.getSendState(), 'failed')
+    self.tic()
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'succeed'))
+    self.assertTrue(self.portal.portal_workflow.isTransitionPossible(pdf, 'send'))
+    pdf.succeed()
+    self.tic()
+    self.assertEqual(pdf.getSendState(), 'success')
diff --git a/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.xml b/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.xml
new file mode 100644
index 0000000000..e72741a200
--- /dev/null
+++ b/bt5/erp5_maileva_connector/TestTemplateItem/portal_components/test.erp5.testMailevaSOAPConnector.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Test Component" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_recorded_property_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>default_reference</string> </key>
+            <value> <string>testMailevaSOAPConnector</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>test.erp5.testMailevaSOAPConnector</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Test Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </value>
+        </item>
+        <item>
+            <key> <string>workflow_history</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>component_validation_workflow</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="4" aka="AAAAAAAAAAQ=">
+    <pickle>
+      <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_log</string> </key>
+            <value>
+              <list>
+                <dictionary>
+                  <item>
+                      <key> <string>action</string> </key>
+                      <value> <string>validate</string> </value>
+                  </item>
+                  <item>
+                      <key> <string>validation_state</string> </key>
+                      <value> <string>validated</string> </value>
+                  </item>
+                </dictionary>
+              </list>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow.xml
new file mode 100644
index 0000000000..e3ff0736e8
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_count</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_mt_index</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_tree</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>source/portal_workflow/send_state_workflow/state_draft</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>comment</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>send_state_workflow</string> </value>
+        </item>
+        <item>
+            <key> <string>manager_bypass</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow</string> </value>
+        </item>
+        <item>
+            <key> <string>state_variable</string> </key>
+            <value> <string>send_state</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Send State Workflow</string> </value>
+        </item>
+        <item>
+            <key> <string>workflow_managed_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+                <string>Add portal content</string>
+              </tuple>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Length" module="BTrees.Length"/>
+    </pickle>
+    <pickle> <int>0</int> </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="OOBTree" module="BTrees.OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+  <record id="4" aka="AAAAAAAAAAQ=">
+    <pickle>
+      <global name="OOBTree" module="BTrees.OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_draft.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_draft.xml
new file mode 100644
index 0000000000..3627129f5b
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_draft.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow State" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>acquire_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+                <string>Add portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>destination/portal_workflow/send_state_workflow/transition_fail</string>
+                <string>destination/portal_workflow/send_state_workflow/transition_send</string>
+                <string>destination/portal_workflow/send_state_workflow/transition_succeed</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>comment</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>state_draft</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow State</string> </value>
+        </item>
+        <item>
+            <key> <string>state_permission_role_list_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Draft</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>Add portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Associate</string>
+                        <string>Author</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>Modify portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Author</string>
+                        <string>Associate</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_failed.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_failed.xml
new file mode 100644
index 0000000000..277db3deec
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_failed.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow State" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>acquire_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+                <string>Add portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>destination/portal_workflow/send_state_workflow/transition_send</string>
+                <string>destination/portal_workflow/send_state_workflow/transition_succeed</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>comment</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>state_failed</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow State</string> </value>
+        </item>
+        <item>
+            <key> <string>state_permission_role_list_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Failed</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>Add portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Associate</string>
+                        <string>Author</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>Modify portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Author</string>
+                        <string>Associate</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_sending.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_sending.xml
new file mode 100644
index 0000000000..1af5bb7ca5
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_sending.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow State" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>acquire_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+                <string>Add portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>destination/portal_workflow/send_state_workflow/transition_fail</string>
+                <string>destination/portal_workflow/send_state_workflow/transition_succeed</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>comment</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>state_sending</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow State</string> </value>
+        </item>
+        <item>
+            <key> <string>state_permission_role_list_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Sending</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>Add portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Associate</string>
+                        <string>Author</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>Modify portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Author</string>
+                        <string>Associate</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_success.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_success.xml
new file mode 100644
index 0000000000..bd3af0b4ea
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/state_success.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow State" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>acquire_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+                <string>Add portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>comment</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>state_success</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow State</string> </value>
+        </item>
+        <item>
+            <key> <string>state_permission_role_list_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Success</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>Add portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Associate</string>
+                        <string>Author</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>Modify portal content</string> </key>
+                    <value>
+                      <tuple>
+                        <string>Assignor</string>
+                        <string>Authenticated</string>
+                        <string>Author</string>
+                        <string>Associate</string>
+                        <string>Member</string>
+                        <string>Assignee</string>
+                        <string>Manager</string>
+                        <string>Auditor</string>
+                        <string>Owner</string>
+                        <string>Reviewer</string>
+                      </tuple>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_fail.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_fail.xml
new file mode 100644
index 0000000000..8fc449fe5e
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_fail.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Transition" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/workflow</string>
+                <string>destination/portal_workflow/send_state_workflow/state_failed</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>guard_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>transition_fail</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Transition</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Fail</string> </value>
+        </item>
+        <item>
+            <key> <string>trigger_type</string> </key>
+            <value> <int>2</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_send.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_send.xml
new file mode 100644
index 0000000000..cd66dbd348
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_send.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Transition" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/workflow</string>
+                <string>destination/portal_workflow/send_state_workflow/state_sending</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>guard_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>transition_send</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Transition</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Send</string> </value>
+        </item>
+        <item>
+            <key> <string>trigger_type</string> </key>
+            <value> <int>2</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_succeed.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_succeed.xml
new file mode 100644
index 0000000000..8cc9b0c11f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/transition_succeed.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Transition" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/workflow</string>
+                <string>destination/portal_workflow/send_state_workflow/state_success</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>guard_permission</string> </key>
+            <value>
+              <tuple>
+                <string>Modify portal content</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>transition_succeed</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Transition</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Succeed</string> </value>
+        </item>
+        <item>
+            <key> <string>trigger_type</string> </key>
+            <value> <int>2</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_action.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_action.xml
new file mode 100644
index 0000000000..5f2962e3e7
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_action.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Transition id</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_action</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>variable_default_expression</string> </key>
+            <value> <string>transition/getReference|nothing</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_actor.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_actor.xml
new file mode 100644
index 0000000000..4c192a03a1
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_actor.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Name of the user who performed transition</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_actor</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>variable_default_expression</string> </key>
+            <value> <string>user/getIdOrUserName</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_comment.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_comment.xml
new file mode 100644
index 0000000000..a4003183b2
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_comment.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Comment about transition</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_comment</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>variable_default_expression</string> </key>
+            <value> <string>python:state_change.kwargs.get(\'comment\', \'\')</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_error_message.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_error_message.xml
new file mode 100644
index 0000000000..171a0e9690
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_error_message.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Error message if validation failed</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_error_message</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_history.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_history.xml
new file mode 100644
index 0000000000..bea1adc10d
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_history.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>automatic_update</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Provides access to workflow history</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_history</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>status_included</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>variable_default_expression</string> </key>
+            <value> <string>state_change/getHistory</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_portal_type.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_portal_type.xml
new file mode 100644
index 0000000000..437bece64f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_portal_type.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>automatic_update</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Portal type (used as filter for worklists)</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_portal_type</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>status_included</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_time.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_time.xml
new file mode 100644
index 0000000000..58df654f10
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/variable_time.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Workflow Variable" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string>Transition timestamp</string> </value>
+        </item>
+        <item>
+            <key> <string>for_catalog</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>variable_time</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Workflow Variable</string> </value>
+        </item>
+        <item>
+            <key> <string>variable_default_expression</string> </key>
+            <value> <string>state_change/getDateTime</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/worklist_failed_to_send.xml b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/worklist_failed_to_send.xml
new file mode 100644
index 0000000000..adf777b133
--- /dev/null
+++ b/bt5/erp5_maileva_connector/WorkflowTemplateItem/portal_workflow/send_state_workflow/worklist_failed_to_send.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Worklist" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_identity_criterion</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_range_criterion</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+ERP5Site_viewDocumentList?send_state=%(send_state)s&local_roles=%(local_roles)s&portal_type=%(portal_type)s&reset=1
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>action_name</string> </key>
+            <value> <string>Documents Failed To Send (%(count)s)</string> </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/global</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>criterion_property</string> </key>
+            <value>
+              <tuple>
+                <string>send_state</string>
+                <string>local_roles</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>guard_expression</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>worklist_failed_to_send</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Worklist</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>failed_to_send</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>local_roles</string> </key>
+                    <value>
+                      <list>
+                        <string>Assignor</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>send_state</string> </key>
+                    <value>
+                      <list>
+                        <string>failed</string>
+                      </list>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="PersistentMapping" module="Persistence.mapping"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>data</string> </key>
+            <value>
+              <dictionary/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_maileva_connector/bt/dependency_list b/bt5/erp5_maileva_connector/bt/dependency_list
new file mode 100644
index 0000000000..f83388d765
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/dependency_list
@@ -0,0 +1,3 @@
+erp5_web_service
+erp5_system_event
+erp5_dms
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_action_path_list b/bt5/erp5_maileva_connector/bt/template_action_path_list
new file mode 100644
index 0000000000..a1b3601cbb
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_action_path_list
@@ -0,0 +1,4 @@
+Maileva Exchange | view
+Maileva SOAP Connector | view
+PDF | maileva_connection_status
+PDF | resend_to_maileva
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_document_id_list b/bt5/erp5_maileva_connector/bt/template_document_id_list
new file mode 100644
index 0000000000..8a0b509670
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_document_id_list
@@ -0,0 +1 @@
+document.erp5.MailevaSOAPConnector
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_format_version b/bt5/erp5_maileva_connector/bt/template_format_version
new file mode 100644
index 0000000000..56a6051ca2
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_format_version
@@ -0,0 +1 @@
+1
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_keep_last_workflow_history_only_path_list b/bt5/erp5_maileva_connector/bt/template_keep_last_workflow_history_only_path_list
new file mode 100644
index 0000000000..f7b2f56cbc
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_keep_last_workflow_history_only_path_list
@@ -0,0 +1 @@
+portal_alarms/check_maileva_document_status
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_path_list b/bt5/erp5_maileva_connector/bt/template_path_list
new file mode 100644
index 0000000000..f7b2f56cbc
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_path_list
@@ -0,0 +1 @@
+portal_alarms/check_maileva_document_status
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_portal_type_allowed_content_type_list b/bt5/erp5_maileva_connector/bt/template_portal_type_allowed_content_type_list
new file mode 100644
index 0000000000..57aca93e9a
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_portal_type_allowed_content_type_list
@@ -0,0 +1,2 @@
+System Event Module | Maileva Exchange
+Web Service Tool | Maileva SOAP Connector
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_portal_type_id_list b/bt5/erp5_maileva_connector/bt/template_portal_type_id_list
new file mode 100644
index 0000000000..4ab56cfc06
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_portal_type_id_list
@@ -0,0 +1,2 @@
+Maileva Exchange
+Maileva SOAP Connector
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_portal_type_property_sheet_list b/bt5/erp5_maileva_connector/bt/template_portal_type_property_sheet_list
new file mode 100644
index 0000000000..8a7051871f
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_portal_type_property_sheet_list
@@ -0,0 +1,6 @@
+Maileva Exchange | Amount
+Maileva Exchange | Arrow
+Maileva Exchange | Event
+Maileva SOAP Connector | Login
+Maileva SOAP Connector | Reference
+Maileva SOAP Connector | Url
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_portal_type_workflow_chain_list b/bt5/erp5_maileva_connector/bt/template_portal_type_workflow_chain_list
new file mode 100644
index 0000000000..8c28d7f81b
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_portal_type_workflow_chain_list
@@ -0,0 +1,5 @@
+Maileva Exchange | edit_workflow
+Maileva Exchange | system_event_workflow
+Maileva SOAP Connector | edit_workflow
+Maileva SOAP Connector | validation_workflow
+PDF | send_state_workflow
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_skin_id_list b/bt5/erp5_maileva_connector/bt/template_skin_id_list
new file mode 100644
index 0000000000..e9cc125d81
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_skin_id_list
@@ -0,0 +1 @@
+erp5_maileva_connector
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_test_id_list b/bt5/erp5_maileva_connector/bt/template_test_id_list
new file mode 100644
index 0000000000..5631026db9
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_test_id_list
@@ -0,0 +1 @@
+test.erp5.testMailevaSOAPConnector
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/template_workflow_id_list b/bt5/erp5_maileva_connector/bt/template_workflow_id_list
new file mode 100644
index 0000000000..b25f09a915
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/template_workflow_id_list
@@ -0,0 +1 @@
+send_state_workflow
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/test_dependency_list b/bt5/erp5_maileva_connector/bt/test_dependency_list
new file mode 100644
index 0000000000..bff77e32d8
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/test_dependency_list
@@ -0,0 +1 @@
+erp5_full_text_mroonga_catalog
\ No newline at end of file
diff --git a/bt5/erp5_maileva_connector/bt/title b/bt5/erp5_maileva_connector/bt/title
new file mode 100644
index 0000000000..e9cc125d81
--- /dev/null
+++ b/bt5/erp5_maileva_connector/bt/title
@@ -0,0 +1 @@
+erp5_maileva_connector
\ No newline at end of file
diff --git a/product/ERP5/tests/test_data/CommonSchema.xsd b/product/ERP5/tests/test_data/CommonSchema.xsd
new file mode 100644
index 0000000000..a3992f1e34
--- /dev/null
+++ b/product/ERP5/tests/test_data/CommonSchema.xsd
@@ -0,0 +1,870 @@
+<?xml version='1.0' encoding='UTF-8'?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.maileva.fr/CommonSchema" elementFormDefault="qualified" targetNamespace="http://www.maileva.fr/CommonSchema" version="1.0">
+  <xs:complexType name="Recipient">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperAddress" type="tns:PaperAddress"/>
+      <xs:element minOccurs="0" name="FaxAddress" type="tns:FaxAddress"/>
+      <xs:element minOccurs="0" name="EmailAddress" type="tns:EmailAddress"/>
+      <xs:element minOccurs="0" name="SmsAddress" type="tns:SmsAddress"/>
+      <xs:element minOccurs="0" name="DigitalAddress" type="tns:DigitalAddress"/>
+      <xs:element minOccurs="0" name="Category" type="xs:string"/>
+      <xs:element minOccurs="0" name="HasDigitalId" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ProductionCenter">
+      <xs:simpleType>
+          <xs:restriction base="xs:string">
+            <xs:maxLength value="64"/>
+          </xs:restriction>
+        </xs:simpleType>
+      </xs:element>
+    </xs:sequence>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+    <xs:attribute name="TrackId" type="xs:string"/>
+    <xs:attribute name="PartnerTrackId" type="xs:string"/>
+  </xs:complexType>
+
+  <xs:complexType name="PaperAddress">
+    <xs:sequence>
+      <xs:element name="AddressLines" type="tns:AddressLines"/>
+      <xs:element minOccurs="0" name="Country" type="xs:string"/>
+      <xs:element minOccurs="0" name="CountryCode" type="tns:ComCountryCode"/>
+      <xs:element minOccurs="0" name="InvoiceAddress" type="tns:InvoiceAddress"/>
+    </xs:sequence>
+  </xs:complexType>
+  
+  <xs:complexType name="InvoiceAddress">
+    <xs:all>
+	    <xs:element minOccurs="0" name="Identifier">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	 <xs:element minOccurs="0" name="Email">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="InvoiceNumber">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+	    <xs:element maxOccurs="1" minOccurs="0" name="EmailTemplateId">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element maxOccurs="1" minOccurs="0" name="SendingMode" type="tns:ComInvoiceSendingMode"/>
+		<xs:element maxOccurs="1" minOccurs="0" name="AmountWithoutTax" type="xs:double"/>
+		<xs:element maxOccurs="1" minOccurs="0" name="TaxAmount" type="xs:double"/>
+		<xs:element maxOccurs="1" minOccurs="0" name="TotalAmount" type="xs:double"/>
+		<xs:element maxOccurs="1" minOccurs="0" name="NetPayableAmount" type="xs:double"/>
+		<xs:element minOccurs="0" name="RecipientDepartmentCode">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="110"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+		<xs:element minOccurs="0" name="LegalCommitmentNumber">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="50"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="ReferenceInvoiceNumber">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="RecipientCompanyName">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="RecipientSiret">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="14"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element maxOccurs="1" minOccurs="0" name="InvoiceDate" type="xs:date"/>
+  	   	<xs:element maxOccurs="1" minOccurs="0" name="InvoiceType" type="tns:ComInvoiceType"/>
+  	   	<xs:element maxOccurs="1" minOccurs="0" name="MarketType" type="tns:ComMarketType"/>
+      	<xs:element maxOccurs="1" minOccurs="0" name="ApproverSiret">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="14"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element maxOccurs="1" minOccurs="0" name="ApproverCompanyName">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="ApproverCountryCode" type="tns:ComCountryCode"/>
+      	<xs:element maxOccurs="1" minOccurs="0" name="FactorSiret">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="14"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element maxOccurs="1" minOccurs="0" name="FactorCompanyName">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="255"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+      	<xs:element minOccurs="0" name="FactorCountryCode" type="tns:ComCountryCode"/>
+      	<xs:element maxOccurs="1" minOccurs="0" name="DueDate" type="xs:date"/>
+      	<xs:element maxOccurs="1" minOccurs="0" name="Iban">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="48"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+        <xs:element maxOccurs="1" minOccurs="0" name="Bic">
+    	    <xs:simpleType>
+        	  <xs:restriction base="xs:string">
+              	<xs:maxLength value="20"/>
+          	  </xs:restriction>
+        	</xs:simpleType>
+      	</xs:element>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="AddressLines">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="AddressLine1" type="xs:string"/>
+      <xs:element minOccurs="0" name="AddressLine2" type="xs:string"/>
+      <xs:element minOccurs="0" name="AddressLine3" type="xs:string"/>
+      <xs:element minOccurs="0" name="AddressLine4" type="xs:string"/>
+      <xs:element minOccurs="0" name="AddressLine5" type="xs:string"/>
+      <xs:element minOccurs="0" name="AddressLine6" type="xs:string"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="FaxAddress">
+    <xs:all>
+      <xs:element minOccurs="0" name="FaxNumber" type="xs:string"/>
+      <xs:element minOccurs="0" name="PhoneNumber" type="xs:string"/>
+      <xs:element minOccurs="0" name="FaxName" type="xs:string"/>
+      <xs:element minOccurs="0" name="FaxCorporation" type="xs:string"/>
+      <xs:element minOccurs="0" name="FaxEmail" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="EmailAddress">
+    <xs:all>
+      <xs:element minOccurs="0" name="Email" type="xs:string"/>
+      <xs:element minOccurs="0" name="EmailFrom" type="xs:string"/>
+      <xs:element minOccurs="0" name="EmailReply" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="SmsAddress">
+    <xs:sequence>
+      <xs:element name="SmsNumber" type="xs:string"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="DigitalAddress">
+    <xs:all>
+      <xs:element name="Identifier" type="xs:string"/>
+      <xs:element name="FirstName" type="xs:string"/>
+      <xs:element name="LastName" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="Sender">
+    <xs:all>
+      <xs:element minOccurs="0" name="PaperAddress" type="tns:PaperAddress"/>
+      <xs:element minOccurs="0" name="FaxAddress" type="tns:FaxAddress"/>
+      <xs:element minOccurs="0" name="EmailAddress" type="tns:EmailAddress"/>
+      <xs:element minOccurs="0" name="SmsAddress" type="tns:SmsAddress"/>
+    </xs:all>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+  </xs:complexType>
+
+  <xs:complexType name="MergeField">
+    <xs:sequence>
+      <xs:element name="PageNumber" type="xs:int"/>
+      <xs:element name="FontName" type="xs:string"/>
+      <xs:element name="FontSize" type="xs:int"/>
+      <xs:element minOccurs="0" name="FontColor" type="xs:string"/>
+      <xs:element minOccurs="0" name="FontBold" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="FontItalic" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="FontUnderline" type="xs:boolean"/>
+      <xs:element name="PosUnit" type="tns:comMeasureUnit"/>
+      <xs:element name="PosX" type="xs:float"/>
+      <xs:element name="PosY" type="xs:float"/>
+      <xs:element name="Content" type="tns:Content"/>
+      <xs:element minOccurs="0" name="Orientation" type="xs:int"/>
+      <xs:element minOccurs="0" name="Halign" type="tns:ComHalignType"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="Content">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="Value" type="xs:string"/>
+      <xs:element minOccurs="0" name="Id" type="xs:string"/>
+      <xs:element minOccurs="0" name="Automatic" type="tns:ComAutoMergeField"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="document">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="Shrink" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="Size" type="xs:long"/>
+      <xs:element minOccurs="0" name="Hash" type="tns:Hash"/>
+      <xs:element minOccurs="0" name="MergeFields">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="MergeField" type="tns:MergeField"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="Content" type="tns:DocumentContent"/>
+      <xs:element minOccurs="0" name="DocumentCategory" type="tns:DocumentCategory"/>
+    </xs:sequence>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+    <xs:attribute name="DocumentType" use="optional"/>
+  </xs:complexType>
+
+  <xs:simpleType name="DocumentCategory">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="ATTACHMENT"/>
+    </xs:restriction>
+  </xs:simpleType>
+    
+  <xs:complexType name="Hash">
+    <xs:simpleContent>
+      <xs:extension base="xs:string">
+        <xs:attribute name="Type" type="xs:string" use="required"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+
+  <xs:complexType name="DocumentContent">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="Value" type="xs:base64Binary"/>
+      <xs:element minOccurs="0" name="Uri" type="xs:string"/>
+    </xs:sequence>
+    <xs:attribute name="encoding" type="tns:ComCharset"/>
+  </xs:complexType>
+
+  <xs:complexType name="DocInFold">
+    <xs:all>
+      <xs:element minOccurs="0" name="Pages">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="Page">
+              <xs:complexType>
+                <xs:complexContent>
+                  <xs:extension base="tns:PageInDoc">
+                    <xs:sequence/>
+                  </xs:extension>
+                </xs:complexContent>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="DocumentOptionId" type="xs:string"/>
+      <xs:element minOccurs="0" name="StaplingDetails" type="tns:StaplingDetails"/>
+    </xs:all>
+    <xs:attribute name="DocumentId" type="xs:string"/>
+    <xs:attribute name="FirstPage" type="xs:positiveInteger"/>
+    <xs:attribute name="LastPage" type="xs:integer"/>
+  </xs:complexType>
+
+  <xs:complexType name="PageInDoc">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PageOptionId" type="xs:string"/>
+    </xs:sequence>
+    <xs:attribute name="Number" type="xs:integer" use="required"/>
+  </xs:complexType>
+
+  <xs:complexType name="StaplingDetails">
+    <xs:sequence>
+      <xs:element maxOccurs="unbounded" name="Stapling">
+        <xs:complexType>
+          <xs:all>
+            <xs:element name="FirstPageOffset" type="xs:int"/>
+            <xs:element name="LastPageOffset" type="xs:int"/>
+          </xs:all>
+        </xs:complexType>
+      </xs:element>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="MergeValue">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="ValueWithRef">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:string">
+              <xs:attribute name="Ref" type="xs:string"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="ValueWithOrder">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:string">
+              <xs:attribute name="Order" type="xs:int"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+    </xs:sequence>
+  </xs:complexType>
+  
+  <xs:complexType name="FoldIndex">
+    <xs:all>
+      <xs:element name="Type">
+        <xs:simpleType>
+          <xs:restriction base="xs:string">
+            <xs:enumeration value="INDEX_BILLING_REF"/>
+            <xs:enumeration value="INDEX_SPLITTING_REF"/>
+            <xs:enumeration value="INDEX_1"/>
+            <xs:enumeration value="INDEX_2"/>
+            <xs:enumeration value="INDEX_3"/>
+            <xs:enumeration value="INDEX_4"/>
+            <xs:enumeration value="INDEX_5"/>
+            <xs:enumeration value="INDEX_6"/>
+            <xs:enumeration value="INDEX_7"/>
+            <xs:enumeration value="INDEX_8"/>
+            <xs:enumeration value="INDEX_9"/>
+            <xs:enumeration value="INDEX_10"/>
+            <xs:enumeration value="INDEX_11"/>
+            <xs:enumeration value="INDEX_12"/>
+            <xs:enumeration value="INDEX_13"/>
+            <xs:enumeration value="INDEX_14"/>
+            <xs:enumeration value="INDEX_15"/>
+            <xs:enumeration value="INDEX_16"/>
+            <xs:enumeration value="INDEX_17"/>
+            <xs:enumeration value="INDEX_18"/>
+            <xs:enumeration value="INDEX_19"/>
+            <xs:enumeration value="INDEX_20"/>
+          </xs:restriction>
+        </xs:simpleType>
+      </xs:element>
+      <xs:element name="Value" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="FtpNotificationProtocol">
+    <xs:all>
+      <xs:element minOccurs="0" name="Login" type="xs:string"/>
+      <xs:element minOccurs="0" name="Folder" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="CftNotificationProtocol">
+    <xs:all>
+      <xs:element minOccurs="0" name="Partner" type="xs:string"/>
+      <xs:element minOccurs="0" name="Idf" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="HttpNotificationProtocol">
+    <xs:all/>
+  </xs:complexType>
+
+  <xs:complexType name="WsNotificationProtocol">
+    <xs:all/>
+  </xs:complexType>
+  
+   <xs:complexType name="NotificationCenterNotificationProtocol">
+    <xs:all>
+      <xs:element maxOccurs="1" minOccurs="0" name="Url">
+        <xs:simpleType>
+          <xs:restriction base="xs:string">
+            <xs:maxLength value="255"/>
+          </xs:restriction>
+        </xs:simpleType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="Address">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperAddress" type="tns:PaperAddress"/>
+      <xs:element minOccurs="0" name="FaxAddress" type="tns:FaxAddress"/>
+      <xs:element minOccurs="0" name="EmailAddress" type="tns:EmailAddress"/>
+      <xs:element minOccurs="0" name="SmsAddress" type="tns:SmsAddress"/>
+      <xs:element minOccurs="0" name="DigiatlAddress" type="tns:DigitalAddress"/>
+    </xs:sequence>
+  </xs:complexType>
+
+  <xs:complexType name="BatchRecipientPageDetails">
+    <xs:all>
+      <xs:element name="physicalFirstPage" type="xs:int"/>
+      <xs:element name="physicalLastPage" type="xs:int"/>
+      <xs:element minOccurs="0" name="logicalFirstPage">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:int">
+              <xs:attribute name="position" type="xs:int"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="logicalLastPage">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:int">
+              <xs:attribute name="position" type="xs:int"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="StaplingDetails" type="tns:StaplingDetails"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="BatchFile">
+    <xs:all>
+      <xs:element name="Name" type="xs:string"/>
+      <xs:element name="Size" type="xs:long"/>
+      <xs:element minOccurs="0" name="Hash">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:string">
+              <xs:attribute name="Type" type="xs:string" use="required"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="physicalPagesCount" type="xs:int"/>
+      <xs:element minOccurs="0" name="logicalPagesCount" type="xs:int"/>
+      <xs:element minOccurs="0" name="Color" type="tns:ComPageColor"/>
+      <xs:element minOccurs="0" name="ReferenceBatchFileId" type="xs:int"/>
+    </xs:all>
+    <xs:attribute name="Id" type="xs:int" use="required"/>
+    <xs:attribute name="Type" type="tns:ComBatchFileType" use="required"/>
+  </xs:complexType>
+
+  <xs:complexType name="License">
+    <xs:all>
+      <xs:element name="Number" type="xs:string"/>
+      <xs:element name="Id" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="BatchSender">
+    <xs:all>
+      <xs:element name="PaperAddress" type="tns:PaperAddress"/>
+      <xs:element minOccurs="0" name="Email" type="xs:string"/>
+    </xs:all>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+  </xs:complexType>
+
+  <xs:simpleType name="ComCountryCode">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="AD"/>
+      <xs:enumeration value="AE"/>
+      <xs:enumeration value="AF"/>
+      <xs:enumeration value="AG"/>
+      <xs:enumeration value="AI"/>
+      <xs:enumeration value="AL"/>
+      <xs:enumeration value="AM"/>
+      <xs:enumeration value="AN"/>
+      <xs:enumeration value="AO"/>
+      <xs:enumeration value="AQ"/>
+      <xs:enumeration value="AR"/>
+      <xs:enumeration value="AS"/>
+      <xs:enumeration value="AT"/>
+      <xs:enumeration value="AU"/>
+      <xs:enumeration value="AW"/>
+      <xs:enumeration value="AX"/>
+      <xs:enumeration value="AZ"/>
+      <xs:enumeration value="BA"/>
+      <xs:enumeration value="BB"/>
+      <xs:enumeration value="BD"/>
+      <xs:enumeration value="BE"/>
+      <xs:enumeration value="BF"/>
+      <xs:enumeration value="BG"/>
+      <xs:enumeration value="BH"/>
+      <xs:enumeration value="BI"/>
+      <xs:enumeration value="BJ"/>
+      <xs:enumeration value="BL"/>
+      <xs:enumeration value="BM"/>
+      <xs:enumeration value="BN"/>
+      <xs:enumeration value="BO"/>
+      <xs:enumeration value="BQ"/>
+      <xs:enumeration value="BR"/>
+      <xs:enumeration value="BS"/>
+      <xs:enumeration value="BT"/>
+      <xs:enumeration value="BV"/>
+      <xs:enumeration value="BW"/>
+      <xs:enumeration value="BY"/>
+      <xs:enumeration value="BZ"/>
+      <xs:enumeration value="CA"/>
+      <xs:enumeration value="CC"/>
+      <xs:enumeration value="CD"/>
+      <xs:enumeration value="CF"/>
+      <xs:enumeration value="CG"/>
+      <xs:enumeration value="CH"/>
+      <xs:enumeration value="CI"/>
+      <xs:enumeration value="CK"/>
+      <xs:enumeration value="CL"/>
+      <xs:enumeration value="CM"/>
+      <xs:enumeration value="CN"/>
+      <xs:enumeration value="CO"/>
+      <xs:enumeration value="CR"/>
+      <xs:enumeration value="CS"/>
+      <xs:enumeration value="CU"/>
+      <xs:enumeration value="CV"/>
+      <xs:enumeration value="CW"/>
+      <xs:enumeration value="CX"/>
+      <xs:enumeration value="CY"/>
+      <xs:enumeration value="CZ"/>
+      <xs:enumeration value="DE"/>
+      <xs:enumeration value="DJ"/>
+      <xs:enumeration value="DK"/>
+      <xs:enumeration value="DM"/>
+      <xs:enumeration value="DO"/>
+      <xs:enumeration value="DZ"/>
+      <xs:enumeration value="EC"/>
+      <xs:enumeration value="EE"/>
+      <xs:enumeration value="EG"/>
+      <xs:enumeration value="EH"/>
+      <xs:enumeration value="ER"/>
+      <xs:enumeration value="ES"/>
+      <xs:enumeration value="ET"/>
+      <xs:enumeration value="FI"/>
+      <xs:enumeration value="FJ"/>
+      <xs:enumeration value="FK"/>
+      <xs:enumeration value="FM"/>
+      <xs:enumeration value="FO"/>
+      <xs:enumeration value="FR"/>
+      <xs:enumeration value="GA"/>
+      <xs:enumeration value="GB"/>
+      <xs:enumeration value="GD"/>
+      <xs:enumeration value="GE"/>
+      <xs:enumeration value="GF"/>
+      <xs:enumeration value="GG"/>
+      <xs:enumeration value="GH"/>
+      <xs:enumeration value="GI"/>
+      <xs:enumeration value="GL"/>
+      <xs:enumeration value="GM"/>
+      <xs:enumeration value="GN"/>
+      <xs:enumeration value="GP"/>
+      <xs:enumeration value="GQ"/>
+      <xs:enumeration value="GR"/>
+      <xs:enumeration value="GS"/>
+      <xs:enumeration value="GT"/>
+      <xs:enumeration value="GU"/>
+      <xs:enumeration value="GW"/>
+      <xs:enumeration value="GY"/>
+      <xs:enumeration value="HK"/>
+      <xs:enumeration value="HM"/>
+      <xs:enumeration value="HN"/>
+      <xs:enumeration value="HR"/>
+      <xs:enumeration value="HT"/>
+      <xs:enumeration value="HU"/>
+      <xs:enumeration value="ID"/>
+      <xs:enumeration value="IE"/>
+      <xs:enumeration value="IL"/>
+      <xs:enumeration value="IM"/>
+      <xs:enumeration value="IN"/>
+      <xs:enumeration value="IO"/>
+      <xs:enumeration value="IQ"/>
+      <xs:enumeration value="IR"/>
+      <xs:enumeration value="IS"/>
+      <xs:enumeration value="IT"/>
+      <xs:enumeration value="JE"/>
+      <xs:enumeration value="JM"/>
+      <xs:enumeration value="JO"/>
+      <xs:enumeration value="JP"/>
+      <xs:enumeration value="KE"/>
+      <xs:enumeration value="KG"/>
+      <xs:enumeration value="KH"/>
+      <xs:enumeration value="KI"/>
+      <xs:enumeration value="KM"/>
+      <xs:enumeration value="KN"/>
+      <xs:enumeration value="KP"/>
+      <xs:enumeration value="KR"/>
+      <xs:enumeration value="KW"/>
+      <xs:enumeration value="KY"/>
+      <xs:enumeration value="KZ"/>
+      <xs:enumeration value="LA"/>
+      <xs:enumeration value="LB"/>
+      <xs:enumeration value="LC"/>
+      <xs:enumeration value="LI"/>
+      <xs:enumeration value="LK"/>
+      <xs:enumeration value="LR"/>
+      <xs:enumeration value="LS"/>
+      <xs:enumeration value="LT"/>
+      <xs:enumeration value="LU"/>
+      <xs:enumeration value="LV"/>
+      <xs:enumeration value="LY"/>
+      <xs:enumeration value="MA"/>
+      <xs:enumeration value="MC"/>
+      <xs:enumeration value="MD"/>
+      <xs:enumeration value="ME"/>
+      <xs:enumeration value="MF"/>
+      <xs:enumeration value="MG"/>
+      <xs:enumeration value="MH"/>
+      <xs:enumeration value="MK"/>
+      <xs:enumeration value="ML"/>
+      <xs:enumeration value="MM"/>
+      <xs:enumeration value="MN"/>
+      <xs:enumeration value="MO"/>
+      <xs:enumeration value="MP"/>
+      <xs:enumeration value="MQ"/>
+      <xs:enumeration value="MR"/>
+      <xs:enumeration value="MS"/>
+      <xs:enumeration value="MT"/>
+      <xs:enumeration value="MU"/>
+      <xs:enumeration value="MV"/>
+      <xs:enumeration value="MW"/>
+      <xs:enumeration value="MX"/>
+      <xs:enumeration value="MY"/>
+      <xs:enumeration value="MZ"/>
+      <xs:enumeration value="NA"/>
+      <xs:enumeration value="NC"/>
+      <xs:enumeration value="NE"/>
+      <xs:enumeration value="NF"/>
+      <xs:enumeration value="NG"/>
+      <xs:enumeration value="NI"/>
+      <xs:enumeration value="NL"/>
+      <xs:enumeration value="NO"/>
+      <xs:enumeration value="NP"/>
+      <xs:enumeration value="NR"/>
+      <xs:enumeration value="NU"/>
+      <xs:enumeration value="NZ"/>
+      <xs:enumeration value="OM"/>
+      <xs:enumeration value="PA"/>
+      <xs:enumeration value="PE"/>
+      <xs:enumeration value="PF"/>
+      <xs:enumeration value="PG"/>
+      <xs:enumeration value="PH"/>
+      <xs:enumeration value="PK"/>
+      <xs:enumeration value="PL"/>
+      <xs:enumeration value="PM"/>
+      <xs:enumeration value="PN"/>
+      <xs:enumeration value="PR"/>
+      <xs:enumeration value="PS"/>
+      <xs:enumeration value="PT"/>
+      <xs:enumeration value="PW"/>
+      <xs:enumeration value="PY"/>
+      <xs:enumeration value="QA"/>
+      <xs:enumeration value="RE"/>
+      <xs:enumeration value="RO"/>
+      <xs:enumeration value="RS"/>
+      <xs:enumeration value="RU"/>
+      <xs:enumeration value="RW"/>
+      <xs:enumeration value="SA"/>
+      <xs:enumeration value="SB"/>
+      <xs:enumeration value="SC"/>
+      <xs:enumeration value="SD"/>
+      <xs:enumeration value="SE"/>
+      <xs:enumeration value="SG"/>
+      <xs:enumeration value="SH"/>
+      <xs:enumeration value="SI"/>
+      <xs:enumeration value="SJ"/>
+      <xs:enumeration value="SK"/>
+      <xs:enumeration value="SL"/>
+      <xs:enumeration value="SM"/>
+      <xs:enumeration value="SN"/>
+      <xs:enumeration value="SO"/>
+      <xs:enumeration value="SR"/>
+      <xs:enumeration value="SS"/>
+      <xs:enumeration value="ST"/>
+      <xs:enumeration value="SV"/>
+      <xs:enumeration value="SX"/>
+      <xs:enumeration value="SY"/>
+      <xs:enumeration value="SZ"/>
+      <xs:enumeration value="TC"/>
+      <xs:enumeration value="TD"/>
+      <xs:enumeration value="TF"/>
+      <xs:enumeration value="TG"/>
+      <xs:enumeration value="TH"/>
+      <xs:enumeration value="TJ"/>
+      <xs:enumeration value="TK"/>
+      <xs:enumeration value="TL"/>
+      <xs:enumeration value="TM"/>
+      <xs:enumeration value="TN"/>
+      <xs:enumeration value="TO"/>
+      <xs:enumeration value="TP"/>
+      <xs:enumeration value="TR"/>
+      <xs:enumeration value="TT"/>
+      <xs:enumeration value="TV"/>
+      <xs:enumeration value="TW"/>
+      <xs:enumeration value="TZ"/>
+      <xs:enumeration value="UA"/>
+      <xs:enumeration value="UG"/>
+      <xs:enumeration value="UM"/>
+      <xs:enumeration value="US"/>
+      <xs:enumeration value="UY"/>
+      <xs:enumeration value="UZ"/>
+      <xs:enumeration value="VA"/>
+      <xs:enumeration value="VC"/>
+      <xs:enumeration value="VE"/>
+      <xs:enumeration value="VG"/>
+      <xs:enumeration value="VI"/>
+      <xs:enumeration value="VN"/>
+      <xs:enumeration value="VU"/>
+      <xs:enumeration value="WF"/>
+      <xs:enumeration value="WS"/>
+      <xs:enumeration value="YE"/>
+      <xs:enumeration value="YT"/>
+      <xs:enumeration value="YU"/>
+      <xs:enumeration value="ZA"/>
+      <xs:enumeration value="ZM"/>
+      <xs:enumeration value="ZR"/>
+      <xs:enumeration value="ZW"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="comMeasureUnit">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="CM"/>
+      <xs:enumeration value="MM"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComAutoMergeField">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="DIGITAL_SECURITY_CODE"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComHalignType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="LEFT"/>
+      <xs:enumeration value="CENTER"/>
+      <xs:enumeration value="RIGHT"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComCharset">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="UTF-8"/>
+      <xs:enumeration value="ISO-8859-1"/>
+      <xs:enumeration value="windows-1252"/>
+      <xs:enumeration value="CP1252"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComInsertPageType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="RV"/>
+      <xs:enumeration value="SPL"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComSwitchingPolicy">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="AUTOMATIC"/>
+      <xs:enumeration value="REQUIRE_CHECKED_IDENTITY"/>
+      <xs:enumeration value="FORCE_DIGITAL_SENDING"/>
+      <xs:enumeration value="DISABLED"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComForceSendingMode">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="DEFAULT"/>
+      <xs:enumeration value="DIGITAL"/>
+      <xs:enumeration value="PAPER"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComMediaType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="PAPER"/>
+      <xs:enumeration value="FAX"/>
+      <xs:enumeration value="EMAIL"/>
+      <xs:enumeration value="SMS"/>
+      <xs:enumeration value="DIGITAL"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="ComMediaSubType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="INVOICE"/>
+      <xs:enumeration value="LEL_V3"/>
+      <xs:enumeration value="HEALTH"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="ComPageColor">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="BLUE"/>
+      <xs:enumeration value="YELLOW"/>
+      <xs:enumeration value="GREEN"/>
+      <xs:enumeration value="PINK"/>
+      <xs:enumeration value="WHITE"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComBatchFileType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="TREATMENT"/>
+      <xs:enumeration value="COMMAND"/>
+      <xs:enumeration value="BANNER"/>
+      <xs:enumeration value="SUMMARY"/>
+      <xs:enumeration value="METROPOL"/>
+      <xs:enumeration value="OTHER"/>
+      <xs:enumeration value="BALLOT_BOX"/>
+      <xs:enumeration value="PILOTE"/>
+      <xs:enumeration value="RETURN_ENVELOPE"/>
+      <xs:enumeration value="INDEX"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComAuthType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="PLAINTEXT"/>
+      <xs:enumeration value="MD5"/>
+      <xs:enumeration value="ACCESS_TOKEN"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ComVoteType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="IN_BALLOT_BOX"/>
+      <xs:enumeration value="BY_MAIL"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="ComInvoiceSendingMode">
+      <xs:restriction base="xs:string">
+        <xs:enumeration value="EMAIL"/>
+        <xs:enumeration value="CHORUS"/>
+        <xs:enumeration value="PAPER"/>
+      </xs:restriction>
+   </xs:simpleType>
+   <xs:simpleType name="ComInvoiceType">
+      <xs:restriction base="xs:string">
+        <xs:enumeration value="INVOICE"/>
+        <xs:enumeration value="CREDIT"/>
+      </xs:restriction>
+	</xs:simpleType>  
+	<xs:simpleType name="ComMarketType">
+      <xs:restriction base="xs:string">
+        <xs:enumeration value="CO_CONTRACTING"/>
+        <xs:enumeration value="SUBCONTRACTING"/>
+      </xs:restriction>
+	</xs:simpleType>  
+</xs:schema>
diff --git a/product/ERP5/tests/test_data/MailevaPJSSchema.xsd b/product/ERP5/tests/test_data/MailevaPJSSchema.xsd
new file mode 100644
index 0000000000..849602944f
--- /dev/null
+++ b/product/ERP5/tests/test_data/MailevaPJSSchema.xsd
@@ -0,0 +1,200 @@
+<?xml version='1.0' encoding='UTF-8'?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.maileva.fr/MailevaPJSSchema" xmlns:ns2="http://www.maileva.fr/MailevaSpecificSchema" xmlns:ns1="http://www.maileva.fr/CommonSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.maileva.fr/MailevaPJSSchema">
+  <xs:import namespace="http://www.maileva.fr/CommonSchema" schemaLocation="CommonSchema.xsd"/>
+  <xs:import namespace="http://www.maileva.fr/MailevaSpecificSchema" schemaLocation="MailevaSpecificSchema.xsd"/>
+  <xs:element name="Campaign" type="tns:Campaign"/>
+  <xs:complexType name="Campaign">
+    <xs:sequence>
+      <xs:element name="Requests" type="tns:Requests"/>
+    </xs:sequence>
+    <xs:attribute name="Name" type="xs:string"/>
+    <xs:attribute name="TrackId" type="xs:string"/>
+    <xs:attribute name="PartnerTrackId" type="xs:string"/>
+    <xs:attribute name="Application" type="xs:string"/>
+    <xs:attribute name="BreakdownCode" type="xs:string"/>
+  </xs:complexType>
+  <xs:complexType name="Requests">
+    <xs:sequence>
+      <xs:element maxOccurs="unbounded" name="Request" type="tns:Request"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="Request">
+    <xs:sequence>
+      <xs:element name="Recipients">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element minOccurs="0" name="Internal">
+              <xs:complexType>
+                <xs:sequence>
+                  <xs:element maxOccurs="unbounded" name="Recipient" type="ns1:Recipient"/>
+                </xs:sequence>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="Senders">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="Sender" type="tns:Sender"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="DocumentData">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element minOccurs="0" name="MergeFields">
+              <xs:complexType>
+                <xs:sequence>
+                  <xs:element maxOccurs="unbounded" name="MergeField" type="ns1:MergeField"/>
+                </xs:sequence>
+              </xs:complexType>
+            </xs:element>
+            <xs:element minOccurs="0" name="Documents">
+              <xs:complexType>
+                <xs:sequence>
+                  <xs:element maxOccurs="unbounded" name="Document">
+                    <xs:complexType>
+                      <xs:complexContent>
+                        <xs:extension base="ns1:document">
+                          <xs:sequence/>
+                        </xs:extension>
+                      </xs:complexContent>
+                    </xs:complexType>
+                  </xs:element>
+                </xs:sequence>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="Options" type="tns:Options"/>
+      <xs:element minOccurs="0" name="Folds">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="Fold">
+              <xs:complexType>
+                <xs:all>
+                  <xs:element name="RecipientId" type="xs:string"/>
+                  <xs:element minOccurs="0" name="SenderId" type="xs:string"/>
+                  <xs:element minOccurs="0" name="FoldOptionId" type="xs:string"/>
+                  <xs:element minOccurs="0" name="Documents">
+                    <xs:complexType>
+                      <xs:sequence>
+                        <xs:element maxOccurs="unbounded" name="Document" type="ns1:DocInFold"/>
+                      </xs:sequence>
+                    </xs:complexType>
+                  </xs:element>
+                  <xs:element minOccurs="0" name="MergeValues">
+                    <xs:complexType>
+                      <xs:sequence>
+                        <xs:element maxOccurs="unbounded" name="MergeValue" type="ns1:MergeValue"/>
+                      </xs:sequence>
+                    </xs:complexType>
+                  </xs:element>
+                  <xs:element maxOccurs="1" minOccurs="0" name="Indexes">
+					<xs:complexType>
+						<xs:sequence maxOccurs="100" minOccurs="1">
+							<xs:element name="Index" type="ns1:FoldIndex"/>
+						</xs:sequence>
+					</xs:complexType>
+				  </xs:element>
+                </xs:all>
+                <xs:attribute name="Id" type="xs:string" use="required"/>
+                <xs:attribute name="TrackId" type="xs:string"/>                
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="Notifications" type="tns:Notifications"/>
+      <xs:element minOccurs="0" name="ProductionDate" type="tns:ProductionDate"/>
+      <xs:element minOccurs="0" name="ErlDeliveryDate" type="tns:ErlDeliveryDate"/>
+    </xs:sequence>
+    <xs:attribute name="MediaType" type="ns1:ComMediaType" use="required"/>
+    <xs:attribute name="TrackId" type="xs:string"/>
+    <xs:attribute name="MediaSubType" type="ns1:ComMediaSubType" use="optional"/>
+  </xs:complexType>
+  <xs:complexType name="Sender">
+    <xs:complexContent>
+      <xs:extension base="ns1:Sender">
+        <xs:sequence/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  <xs:complexType name="Options">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="RequestOption" type="ns2:RequestOption"/>
+      <xs:element minOccurs="0" name="FoldOptions">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="FoldOption">
+              <xs:complexType>
+                <xs:complexContent>
+                  <xs:extension base="ns2:FoldOption">
+                    <xs:sequence/>
+                  </xs:extension>
+                </xs:complexContent>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="DocumentOptions">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="DocumentOption">
+              <xs:complexType>
+                <xs:complexContent>
+                  <xs:extension base="ns2:DocumentOption">
+                    <xs:sequence/>
+                  </xs:extension>
+                </xs:complexContent>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="PageOptions">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="PageOption">
+              <xs:complexType>
+                <xs:complexContent>
+                  <xs:extension base="ns2:PageOption">
+                    <xs:sequence/>
+                  </xs:extension>
+                </xs:complexContent>
+              </xs:complexType>
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="Notifications">
+    <xs:sequence>
+      <xs:element maxOccurs="unbounded" name="Notification" type="ns2:Notification"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ProductionDate">
+    <xs:simpleContent>
+      <xs:extension base="xs:dateTime">
+        <xs:attribute name="UseLocalDate" type="xs:boolean"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="ErlDeliveryDate">
+    <xs:simpleContent>
+      <xs:extension base="xs:dateTime">
+        <xs:attribute name="UseLocalDate" type="xs:boolean"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="User">
+    <xs:sequence>
+      <xs:element name="Login" type="xs:string"/>
+      <xs:element name="Password" type="xs:string"/>
+    </xs:sequence>
+    <xs:attribute name="AuthType" type="ns1:ComAuthType" use="required"/>
+  </xs:complexType>
+</xs:schema>
diff --git a/product/ERP5/tests/test_data/MailevaSpecificSchema.xsd b/product/ERP5/tests/test_data/MailevaSpecificSchema.xsd
new file mode 100644
index 0000000000..ca29610654
--- /dev/null
+++ b/product/ERP5/tests/test_data/MailevaSpecificSchema.xsd
@@ -0,0 +1,518 @@
+<?xml version='1.0' encoding='UTF-8'?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.maileva.fr/MailevaSpecificSchema" xmlns:ns1="http://www.maileva.fr/CommonSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.maileva.fr/MailevaSpecificSchema">
+  <xs:import namespace="http://www.maileva.fr/CommonSchema" schemaLocation="CommonSchema.xsd"/>
+  <xs:complexType name="RequestOption">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperOption" type="tns:RequestOptionPaper"/>
+      <xs:element minOccurs="0" name="FaxOption" type="tns:RequestOptionFax"/>
+      <xs:element minOccurs="0" name="EmailOption" type="tns:RequestOptionEmail"/>
+      <xs:element minOccurs="0" name="SmsOption" type="tns:RequestOptionSms"/>
+      <xs:element minOccurs="0" name="DigitalOption" type="tns:RequestOptionDigital"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionPaper">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="ExpectedGrouping" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="GroupingDate" type="tns:GroupingDate"/>
+      <xs:element minOccurs="0" name="ExpectedSplitting" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="StampAdjust" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="RemoveInvalidReturnEnvelope" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="DocumentsRestitution" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PostalTracking" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="FoldOption" type="tns:FoldOptionPaper"/>
+       <!-- for invoice use -->
+      <xs:element minOccurs="0" name="InvoiceOption" type="tns:RequestOptionInvoice"/>
+    </xs:sequence>
+  </xs:complexType>
+  
+   <xs:complexType name="RequestOptionInvoice">
+    <xs:all>
+      <xs:element maxOccurs="1" minOccurs="0" name="UseAddressBook" type="xs:boolean"/>
+      <xs:element maxOccurs="1" minOccurs="0" name="EmailFrom">
+   		<xs:simpleType>
+          <xs:restriction base="xs:string">
+            <xs:maxLength value="50"/>
+          </xs:restriction>
+        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="EmailReply">
+	       <xs:simpleType>
+	          <xs:restriction base="xs:string">
+	          	<xs:pattern value="[^@]+@[^\.]+\..+"/>
+	            <xs:maxLength value="80"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="EmailFooter">
+      		<xs:simpleType>
+	          <xs:restriction base="xs:string">
+	            <xs:maxLength value="255"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="MsgObject">
+      		<xs:simpleType>
+	          <xs:restriction base="xs:string">
+	            <xs:maxLength value="255"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="SenderTaxNumber">
+      		<xs:simpleType>
+	          <xs:restriction base="xs:string">
+	            <xs:maxLength value="13"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="SenderSiret">
+      		<xs:simpleType>
+	          <xs:restriction base="xs:string">
+	            <xs:maxLength value="14"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="SenderCompanyName">
+      		<xs:simpleType>
+	          <xs:restriction base="xs:string">
+	            <xs:maxLength value="255"/>
+	          </xs:restriction>
+	        </xs:simpleType>
+      </xs:element>
+      <xs:element maxOccurs="1" minOccurs="0" name="SenderCountryCode" type="ns1:ComCountryCode"/>
+      <xs:element maxOccurs="1" minOccurs="0" name="SenderPaymentType" type="tns:MlvSenderPaymentType"/> 
+      
+    </xs:all>
+  </xs:complexType>
+  
+   <xs:simpleType name="MlvSenderPaymentType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="VAT_DEBIT"/>
+      <xs:enumeration value="VAT_CASHING"/>
+      <xs:enumeration value="VAT_EXEMPT"/>
+      <xs:enumeration value="VAT_FREE"/>
+    </xs:restriction>
+  </xs:simpleType>
+  
+  <xs:complexType name="GroupingDate">
+    <xs:simpleContent>
+      <xs:extension base="xs:dateTime">
+        <xs:attribute name="UseLocalDate" type="xs:boolean"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="FoldOptionPaper">
+    <xs:all>
+      <xs:element minOccurs="0" name="EnvelopeType" type="tns:MlvEnvelopeType"/>
+      <xs:element minOccurs="0" name="EnvelopeWindowType" type="tns:MlvEnvelopeWindowType"/>
+      <xs:element minOccurs="0" name="PostageClass" type="tns:MlvPostageClass"/>
+      <xs:element minOccurs="0" name="PrintSenderAddress" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PrintRecipAddress" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ClearSenderArea" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ClearRecipArea" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PrintRecipTrackId" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="TreatUndeliveredMail" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="TreatAR" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="DigitalArchiving" type="tns:DigitalArchiving"/>
+      <xs:element minOccurs="0" name="GroupingPriority" type="xs:positiveInteger"/>
+      <xs:element minOccurs="0" name="UseFlyLeaf" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="LogoRef" type="xs:string"/>
+      <xs:element minOccurs="0" name="ReturnEnvelopeRef" type="xs:string"/>
+      <xs:element minOccurs="0" name="DocumentOption" type="tns:DocumentOptionPaper"/>
+      <xs:element minOccurs="0" name="SwitchingPolicy" type="ns1:ComSwitchingPolicy"/>
+      <xs:element minOccurs="0" name="ForceSendingMode" type="ns1:ComForceSendingMode"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DigitalArchiving">
+    <xs:all>
+      <xs:element name="Online" type="xs:string"/>
+      <xs:element name="Standard" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DocumentOptionPaper">
+    <xs:all>
+      <xs:element minOccurs="0" name="PrintDuplex" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PageOption" type="tns:PageOptionPaper"/>
+      <xs:element minOccurs="0" name="Staple" type="xs:boolean"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="PageOptionPaper">
+    <xs:all>
+      <xs:element minOccurs="0" name="PrintColor" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="BackgroundId" type="xs:string"/>
+      <xs:element minOccurs="0" name="InsertPageId" type="tns:InsertPageId"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="InsertPageId">
+    <xs:simpleContent>
+      <xs:extension base="xs:string">
+        <xs:attribute name="Type" type="ns1:ComInsertPageType" use="required"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionFax">
+    <xs:sequence>
+      <xs:element name="FoldOption" type="tns:FoldOptionFax"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="FoldOptionFax">
+    <xs:all>
+      <xs:element minOccurs="0" name="EmissionMode" type="tns:MlvOfferType"/>
+      <xs:element minOccurs="0" name="FlyLeaf" type="tns:FlyLeaf"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FlyLeaf">
+    <xs:all>
+      <xs:element minOccurs="0" name="Object" type="xs:string"/>
+      <xs:element minOccurs="0" name="Warning" type="xs:string"/>
+      <xs:element name="Type" type="tns:MlvFlyLeafType"/>
+    </xs:all>
+    <xs:attribute name="CustomRef" type="xs:string"/>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionEmail">
+    <xs:all>
+      <xs:element minOccurs="0" name="RemoveEmailNoteText" type="xs:boolean"/>
+      <xs:element name="FoldOption" type="tns:FoldOptionEmail"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="FoldOptionEmail">
+    <xs:sequence>
+      <xs:element name="MsgObject" type="xs:string"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionSms">
+    <xs:all>
+      <xs:element minOccurs="0" name="RemoveEmailNoteText" type="xs:boolean"/>
+      <xs:element name="FoldOption" type="tns:FoldOptionSms"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FoldOptionSms">
+    <xs:sequence>
+      <xs:element name="EmissionMode" type="tns:MlvOfferType"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionDigital">
+    <xs:all>
+      <xs:element minOccurs="0" name="FoldOption" type="tns:FoldOptionDigital"/>
+      <xs:element name="DepositType" type="xs:string"/>
+      <xs:element name="DigitalArchiving" type="xs:string"/>
+      <xs:element minOccurs="0" name="StampAdjust" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ExpectedGrouping" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="GroupingDate">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:anySimpleType">
+              <xs:attribute name="UseLocalDate" type="xs:boolean"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="ExpectedSplitting" type="xs:boolean"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FoldOptionDigital">
+    <xs:all>
+      <xs:element minOccurs="0" name="EnvelopeType" type="tns:MlvEnvelopeType"/>
+      <xs:element minOccurs="0" name="EnvelopeWindowType" type="tns:MlvEnvelopeWindowType"/>
+      <xs:element minOccurs="0" name="PostageClass" type="tns:MlvPostageClass"/>
+      <xs:element minOccurs="0" name="PrintSenderAddress" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PrintRecipAddress" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ClearSenderArea" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ClearRecipArea" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PrintRecipTrackId" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="DigitalArchiving" type="tns:DigitalArchiving"/>
+      <xs:element minOccurs="0" name="GroupingPriority" type="xs:positiveInteger"/>
+      <xs:element minOccurs="0" name="UseFlyLeaf" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="LogoRef" type="xs:string"/>
+      <xs:element minOccurs="0" name="DocumentOption" type="tns:DocumentOptionDigital"/>
+      <xs:element name="DepositTitle" type="xs:string"/>
+      <xs:element minOccurs="0" name="DepositDescription" type="xs:string"/>
+      <xs:element minOccurs="0" name="TreatAR" type="xs:boolean"/>
+	  <xs:element minOccurs="0" name="TreatUndeliveredMail" type="xs:boolean"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DocumentOptionDigital">
+    <xs:all>
+      <xs:element minOccurs="0" name="PrintDuplex" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PageOption" type="tns:PageOptionDigital"/>
+      <xs:element minOccurs="0" name="Staple" type="xs:boolean"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="PageOptionDigital">
+    <xs:all>
+      <xs:element minOccurs="0" name="PrintColor" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="BackgroundId" type="xs:string"/>
+      <xs:element minOccurs="0" name="InsertPageId">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="xs:string">
+              <xs:attribute name="Type" type="ns1:ComInsertPageType" use="required"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FoldOption">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperOption" type="tns:FoldOptionPaper"/>
+      <xs:element minOccurs="0" name="FaxOption" type="tns:FoldOptionFax"/>
+      <xs:element minOccurs="0" name="EmailOption" type="tns:FoldOptionEmail"/>
+      <xs:element minOccurs="0" name="SmsOption" type="tns:FoldOptionSms"/>
+      <xs:element minOccurs="0" name="VoteOption" type="tns:FoldOptionVote"/>
+      <xs:element minOccurs="0" name="DigitalOption" type="tns:FoldOptionDigital"/>
+    </xs:sequence>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+  </xs:complexType>
+  <xs:complexType name="FoldOptionVote">
+    <xs:all>
+      <xs:element minOccurs="0" name="EnvelopeType" type="tns:MlvEnvelopeType"/>
+      <xs:element minOccurs="0" name="EnvelopeWindowType" type="tns:MlvEnvelopeWindowType"/>
+      <xs:element minOccurs="0" name="PostageClass" type="tns:MlvPostageClass"/>
+      <xs:element minOccurs="0" name="UseFlyLeaf" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="LogoRef" type="xs:string"/>
+      <xs:element minOccurs="0" name="ClearSenderArea" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PrintSenderAdress" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="ReturnEnvelopeRef" type="xs:string"/>
+      <xs:element minOccurs="0" name="DocumentOption" type="tns:DocumentOptionVote"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DocumentOptionVote">
+    <xs:all>
+      <xs:element minOccurs="0" name="PrintDuplex" type="xs:boolean"/>
+      <xs:element minOccurs="0" name="PageOption" type="tns:PageOptionVote"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="PageOptionVote">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PrintColor" type="xs:boolean"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="DocumentOption">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperOption" type="tns:DocumentOptionPaper"/>
+      <xs:element minOccurs="0" name="FaxOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="EmailOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="SmsOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="DigitalOption" type="tns:DocumentOptionDigital"/>
+    </xs:sequence>
+    <xs:attribute name="Id" type="xs:string" use="required"/>
+  </xs:complexType>
+  <xs:complexType name="PageOption">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="PaperOption" type="tns:PageOptionPaper"/>
+      <xs:element minOccurs="0" name="FaxOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="EmailOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="SmsOption">
+        <xs:complexType>
+          <xs:all/>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="VoteOption" type="tns:PageOptionVote"/>
+      <xs:element minOccurs="0" name="DigitalOption" type="tns:PageOptionDigital"/>
+    </xs:sequence>
+    <xs:attribute name="Id" type="xs:string"/>
+  </xs:complexType>
+  <xs:complexType name="Notification">
+    <xs:sequence>
+      <xs:element name="Format" type="tns:MlvNotificationFormat"/>
+      <xs:element minOccurs="0" name="Language" type="xs:language"/>
+      <xs:element name="Protocols">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="Protocol" type="tns:Protocol"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:sequence>
+    <xs:attribute name="Type" type="tns:MlvNotificationType" use="required"/>
+  </xs:complexType>
+  <xs:complexType name="Protocol">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="Email" type="xs:string"/>
+      <xs:element minOccurs="0" name="Ftp" type="ns1:FtpNotificationProtocol"/>
+      <xs:element minOccurs="0" name="Cft" type="ns1:CftNotificationProtocol"/>
+      <xs:element minOccurs="0" name="Http" type="ns1:HttpNotificationProtocol"/>
+      <xs:element minOccurs="0" name="Ws" type="ns1:WsNotificationProtocol"/>
+      <xs:element minOccurs="0" name="NotificationCenter" type="ns1:NotificationCenterNotificationProtocol"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="VoteCategory">
+    <xs:all>
+      <xs:element name="VoteCategoryType">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="tns:MlvVoteCategoryType">
+              <xs:attribute name="Name" type="xs:string"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="CandidateLists">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="CandidateList" type="tns:CandidateList"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="CandidateList">
+    <xs:all>
+      <xs:element name="Candidates">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="Candidate" type="tns:Candidate"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="Order" type="xs:positiveInteger"/>
+      <xs:element name="VoteFunction" type="tns:MlvVoteFunction"/>
+      <xs:element name="VoteColor" type="ns1:ComPageColor"/>
+      <xs:element minOccurs="0" name="UnionName" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Candidate">
+    <xs:all>
+      <xs:element name="Order" type="xs:positiveInteger"/>
+      <xs:element name="Name" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="RequestOptionVote">
+    <xs:all>
+      <xs:element name="VoteCollege">
+        <xs:complexType>
+          <xs:simpleContent>
+            <xs:extension base="tns:MlvVoteCollege">
+              <xs:attribute name="Name" type="xs:string"/>
+            </xs:extension>
+          </xs:simpleContent>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="VoteType" type="ns1:ComVoteType"/>
+      <xs:element name="VoteRound" type="tns:MlvVoteRound"/>
+      <xs:element name="VoteCategories">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="VoteCategory" type="tns:VoteCategory"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="FoldOption" type="tns:FoldOptionVote"/>
+      <xs:element minOccurs="0" name="VoteQuantity" type="xs:positiveInteger"/>
+      <xs:element name="Company" type="xs:string"/>
+      <xs:element name="PollDate" type="xs:date"/>
+    </xs:all>
+  </xs:complexType>
+  <xs:simpleType name="MlvEnvelopeType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="C4"/>
+      <xs:enumeration value="C6"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvEnvelopeWindowType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="SMPL"/>
+      <xs:enumeration value="DBL"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvPostageClass">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="LETTRE_VERTE"/>
+      <xs:enumeration value="LETTRE_VERTE_NB"/>
+      <xs:enumeration value="STANDARD"/>
+      <xs:enumeration value="LPL"/>
+      <xs:enumeration value="LSM"/>
+      <xs:enumeration value="SLOW"/>
+      <xs:enumeration value="SLOW_NB"/>
+      <xs:enumeration value="RECOMMANDE_AR"/>
+      <xs:enumeration value="RECOMMANDE"/>
+      <xs:enumeration value="LRE"/>
+      <xs:enumeration value="LRE_AR"/>
+      <xs:enumeration value="LRE_TE"/>
+      <xs:enumeration value="LRE_TE_AR"/>
+      <xs:enumeration value="LP_RECO"/>
+      <xs:enumeration value="DESTINEO_EL"/>
+      <xs:enumeration value="DESTINEO_EL_STD_S1"/>
+      <xs:enumeration value="DESTINEO_EL_STD_S2"/>
+      <xs:enumeration value="DESTINEO_EL_MECA_S1"/>
+      <xs:enumeration value="DESTINEO_EL_MECA_S2"/>
+      <xs:enumeration value="LETTRE_GRAND_COMPTE"/>
+      <xs:enumeration value="ECOPLI_GRAND_COMPTE"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvOfferType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="DIRECT_MKT"/>
+      <xs:enumeration value="OTHER"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvFlyLeafType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="STANDARD"/>
+      <xs:enumeration value="CUSTOM"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvNotificationFormat">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="INI"/>
+      <xs:enumeration value="TXT"/>
+      <xs:enumeration value="XML"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvNotificationType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="GENERAL"/>
+      <xs:enumeration value="NPAI"/>
+      <xs:enumeration value="PND"/>
+      <xs:enumeration value="LRE"/>
+      <xs:enumeration value="ENCOURS"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvVoteCategoryType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="DP"/>
+      <xs:enumeration value="CE"/>
+      <xs:enumeration value="DU"/>
+      <xs:enumeration value="CSE"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvVoteFunction">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="PERMANENT"/>
+      <xs:enumeration value="SUBSTITUTE"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvVoteCollege">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="FIRST"/>
+      <xs:enumeration value="SECOND"/>
+      <xs:enumeration value="THIRD"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:simpleType name="MlvVoteRound">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="FIRST"/>
+      <xs:enumeration value="SECOND"/>
+    </xs:restriction>
+  </xs:simpleType>
+</xs:schema>
-- 
2.30.9