diff --git a/search_api_solr.api.php b/search_api_solr.api.php
index f407407..da17b93 100644
--- a/search_api_solr.api.php
+++ b/search_api_solr.api.php
@@ -47,6 +47,21 @@ function hook_search_api_solr_field_mapping_alter(SearchApiIndex $index, array &
 }
 
 /**
+ * Change the way the index's field names are mapped to Solr field names.
+ *
+ * @param $index
+ *   The index whose field mappings are altered.
+ * @param $document
+ *   The Solr Document that will be sent for indexing.
+ * @param array $item
+ *   An associative array containing the entities fields that will be included in the index
+ *   as derived from the indexes Fields configuration.
+ */
+function hook_search_api_solr_document_alter(SearchApiIndex $index, Apache_Solr_Document &$document, array $item) {
+  $document->setField('foo', 'bar');
+}
+
+/**
  * Lets modules alter the search results returned from a Solr search, based on
  * the original Solr response.
  *
diff --git a/service.inc b/service.inc
index b2221c0..876939e 100644
--- a/service.inc
+++ b/service.inc
@@ -268,6 +268,8 @@ class SearchApiSolrService extends SearchApiAbstractService {
           }
           $this->addIndexField($doc, $fields[$key], $field['value'], $field['type']);
         }
+  
+        drupal_alter('search_api_solr_document', $index, $doc, $item);
 
         $documents[] = $doc;
         $ret[] = $id;
