Merge pull request #4 from myrle-krantz/develop

Updating package names.
diff --git a/README.md b/README.md
index 068d03b..d09b82a 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,5 @@
 # Apache Fineract CN Deposit Account Management
 
-[![Join the chat at https://gitter.im/mifos-initiative/mifos.io](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mifos-initiative/mifos.io?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-
 This project provides a services to create deposit accounts, e.g. checking, savings, and shares.
 
 ## Abstract
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/EventConstants.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/EventConstants.java
similarity index 98%
rename from api/src/main/java/io/mifos/deposit/api/v1/EventConstants.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/EventConstants.java
index 34d9129..8f8a101 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/EventConstants.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/EventConstants.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1;
+package org.apache.fineract.cn.deposit.api.v1;
 
 @SuppressWarnings("unused")
 public interface EventConstants {
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/PermittableGroupIds.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/PermittableGroupIds.java
similarity index 95%
rename from api/src/main/java/io/mifos/deposit/api/v1/PermittableGroupIds.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/PermittableGroupIds.java
index eb4eb5a..31c90c4 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/PermittableGroupIds.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/PermittableGroupIds.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1;
+package org.apache.fineract.cn.deposit.api.v1;
 
 @SuppressWarnings("unused")
 public interface PermittableGroupIds {
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/client/DepositAccountManager.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/client/DepositAccountManager.java
similarity index 86%
rename from api/src/main/java/io/mifos/deposit/api/v1/client/DepositAccountManager.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/client/DepositAccountManager.java
index 92cd6ac..cdee071 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/client/DepositAccountManager.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/client/DepositAccountManager.java
@@ -16,23 +16,26 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.client;
+package org.apache.fineract.cn.deposit.api.v1.client;
 
-import io.mifos.core.api.annotation.ThrowsException;
-import io.mifos.core.api.annotation.ThrowsExceptions;
-import io.mifos.core.api.util.CustomFeignClientsConfiguration;
-import io.mifos.deposit.api.v1.definition.ActionAlreadyExistsException;
-import io.mifos.deposit.api.v1.definition.ProductDefinitionAlreadyExistsException;
-import io.mifos.deposit.api.v1.definition.ProductDefinitionNotFoundException;
-import io.mifos.deposit.api.v1.definition.ProductDefinitionValidationException;
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.api.v1.instance.ProductInstanceNotFoundException;
-import io.mifos.deposit.api.v1.instance.ProductInstanceValidationException;
-import io.mifos.deposit.api.v1.instance.domain.AvailableTransactionType;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.definition.ActionAlreadyExistsException;
+import org.apache.fineract.cn.deposit.api.v1.definition.ProductDefinitionAlreadyExistsException;
+import org.apache.fineract.cn.deposit.api.v1.definition.ProductDefinitionNotFoundException;
+import org.apache.fineract.cn.deposit.api.v1.definition.ProductDefinitionValidationException;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.DividendDistribution;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.instance.ProductInstanceNotFoundException;
+import org.apache.fineract.cn.deposit.api.v1.instance.ProductInstanceValidationException;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.AvailableTransactionType;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import java.util.List;
+import java.util.Set;
+import javax.validation.Valid;
+import org.apache.fineract.cn.api.annotation.ThrowsException;
+import org.apache.fineract.cn.api.annotation.ThrowsExceptions;
+import org.apache.fineract.cn.api.util.CustomFeignClientsConfiguration;
 import org.springframework.cloud.netflix.feign.FeignClient;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
@@ -43,10 +46,6 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import javax.validation.Valid;
-import java.util.List;
-import java.util.Set;
-
 @SuppressWarnings("unused")
 @FeignClient(value = "deposit-v1", path = "/deposit/v1", configuration = CustomFeignClientsConfiguration.class)
 public interface DepositAccountManager {
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/ActionAlreadyExistsException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ActionAlreadyExistsException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/ActionAlreadyExistsException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ActionAlreadyExistsException.java
index b7d0446..4a26650 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/ActionAlreadyExistsException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ActionAlreadyExistsException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition;
+package org.apache.fineract.cn.deposit.api.v1.definition;
 
 public class ActionAlreadyExistsException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java
index 3b51d6f..4b84037 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionAlreadyExistsException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition;
+package org.apache.fineract.cn.deposit.api.v1.definition;
 
 public class ProductDefinitionAlreadyExistsException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionNotFoundException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionNotFoundException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionNotFoundException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionNotFoundException.java
index 4033b3c..99d6f97 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionNotFoundException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionNotFoundException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition;
+package org.apache.fineract.cn.deposit.api.v1.definition;
 
 public class ProductDefinitionNotFoundException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionValidationException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionValidationException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionValidationException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionValidationException.java
index c9bbdc3..70f12c2 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/ProductDefinitionValidationException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/ProductDefinitionValidationException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition;
+package org.apache.fineract.cn.deposit.api.v1.definition;
 
 public class ProductDefinitionValidationException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Action.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Action.java
similarity index 92%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Action.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Action.java
index d404c79..07e84b4 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Action.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Action.java
@@ -16,11 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
-
-import io.mifos.core.lang.validation.constraints.ValidIdentifier;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
 import javax.validation.constraints.NotNull;
+import org.apache.fineract.cn.lang.validation.constraints.ValidIdentifier;
 
 public class Action {
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Charge.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Charge.java
similarity index 94%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Charge.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Charge.java
index 49ec815..8915a88 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Charge.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Charge.java
@@ -16,11 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
-
-import io.mifos.core.lang.validation.constraints.ValidIdentifier;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
 import javax.validation.constraints.NotNull;
+import org.apache.fineract.cn.lang.validation.constraints.ValidIdentifier;
 
 public class Charge {
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Currency.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Currency.java
similarity index 95%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Currency.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Currency.java
index 485a016..6ad3248 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Currency.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Currency.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
 import javax.validation.constraints.NotNull;
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/DividendDistribution.java
similarity index 94%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/DividendDistribution.java
index 4a0a6a7..4d2ba2e 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/DividendDistribution.java
@@ -16,12 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
-
-import io.mifos.core.lang.DateOfBirth;
-import org.hibernate.validator.constraints.NotBlank;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
 import javax.validation.constraints.NotNull;
+import org.apache.fineract.cn.lang.DateOfBirth;
+import org.hibernate.validator.constraints.NotBlank;
 
 public class DividendDistribution {
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinition.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinition.java
similarity index 95%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinition.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinition.java
index ec078f7..8223948 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinition.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinition.java
@@ -16,14 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
-import io.mifos.core.lang.validation.constraints.ValidIdentifier;
-import io.mifos.deposit.api.v1.domain.Type;
-
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import java.util.Set;
 import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
-import java.util.Set;
+import org.apache.fineract.cn.lang.validation.constraints.ValidIdentifier;
 
 public class ProductDefinition {
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinitionCommand.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinitionCommand.java
similarity index 96%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinitionCommand.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinitionCommand.java
index a1e27cf..50a95a0 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/ProductDefinitionCommand.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/ProductDefinitionCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
 import javax.validation.constraints.NotNull;
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Term.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Term.java
similarity index 89%
rename from api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Term.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Term.java
index 03fd286..45b464e 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/Term.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/definition/domain/Term.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.definition.domain;
+package org.apache.fineract.cn.deposit.api.v1.definition.domain;
 
-import io.mifos.deposit.api.v1.domain.InterestPayable;
-import io.mifos.deposit.api.v1.domain.TimeUnit;
+import org.apache.fineract.cn.deposit.api.v1.domain.InterestPayable;
+import org.apache.fineract.cn.deposit.api.v1.domain.TimeUnit;
 
 import javax.validation.constraints.NotNull;
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/domain/InterestPayable.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/InterestPayable.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/domain/InterestPayable.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/InterestPayable.java
index e1da348..13cc2f5 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/domain/InterestPayable.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/InterestPayable.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.domain;
+package org.apache.fineract.cn.deposit.api.v1.domain;
 
 public enum InterestPayable {
   MATURITY,
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/domain/TimeUnit.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/TimeUnit.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/domain/TimeUnit.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/TimeUnit.java
index 9976f9d..255a346 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/domain/TimeUnit.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/TimeUnit.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.domain;
+package org.apache.fineract.cn.deposit.api.v1.domain;
 
 public enum TimeUnit {
   MONTH,
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/domain/Type.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/Type.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/domain/Type.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/Type.java
index dbc1883..b6c2a06 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/domain/Type.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/domain/Type.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.domain;
+package org.apache.fineract.cn.deposit.api.v1.domain;
 
 public enum Type {
   CHECKING,
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceNotFoundException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceNotFoundException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceNotFoundException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceNotFoundException.java
index 9db8b3e..ebf5425 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceNotFoundException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceNotFoundException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.instance;
+package org.apache.fineract.cn.deposit.api.v1.instance;
 
 public class ProductInstanceNotFoundException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceValidationException.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceValidationException.java
similarity index 93%
rename from api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceValidationException.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceValidationException.java
index e02dfaf..07b3cf6 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/instance/ProductInstanceValidationException.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/ProductInstanceValidationException.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.instance;
+package org.apache.fineract.cn.deposit.api.v1.instance;
 
 public class ProductInstanceValidationException extends RuntimeException {
 }
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/instance/domain/AvailableTransactionType.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/AvailableTransactionType.java
similarity index 95%
rename from api/src/main/java/io/mifos/deposit/api/v1/instance/domain/AvailableTransactionType.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/AvailableTransactionType.java
index 958154b..bedd408 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/instance/domain/AvailableTransactionType.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/AvailableTransactionType.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.instance.domain;
+package org.apache.fineract.cn.deposit.api.v1.instance.domain;
 
 import org.hibernate.validator.constraints.NotEmpty;
 
diff --git a/api/src/main/java/io/mifos/deposit/api/v1/instance/domain/ProductInstance.java b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/ProductInstance.java
similarity index 95%
rename from api/src/main/java/io/mifos/deposit/api/v1/instance/domain/ProductInstance.java
rename to api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/ProductInstance.java
index 75ae2be..ad8de46 100644
--- a/api/src/main/java/io/mifos/deposit/api/v1/instance/domain/ProductInstance.java
+++ b/api/src/main/java/org/apache/fineract/cn/deposit/api/v1/instance/domain/ProductInstance.java
@@ -16,11 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.api.v1.instance.domain;
-
-import io.mifos.core.lang.validation.constraints.ValidIdentifier;
+package org.apache.fineract.cn.deposit.api.v1.instance.domain;
 
 import java.util.Set;
+import org.apache.fineract.cn.lang.validation.constraints.ValidIdentifier;
 
 public class ProductInstance {
 
diff --git a/component-test/src/main/java/io/mifos/deposit/AbstractDepositAccountManagementTest.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/AbstractDepositAccountManagementTest.java
similarity index 79%
rename from component-test/src/main/java/io/mifos/deposit/AbstractDepositAccountManagementTest.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/AbstractDepositAccountManagementTest.java
index 8a4fd38..5da6c56 100644
--- a/component-test/src/main/java/io/mifos/deposit/AbstractDepositAccountManagementTest.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/AbstractDepositAccountManagementTest.java
@@ -16,19 +16,19 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.anubis.test.v1.TenantApplicationSecurityEnvironmentTestRule;
-import io.mifos.core.api.context.AutoUserContext;
-import io.mifos.core.lang.ApplicationName;
-import io.mifos.core.test.fixture.TenantDataStoreContextTestRule;
-import io.mifos.core.test.listener.EnableEventRecording;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.client.DepositAccountManager;
-import io.mifos.deposit.service.DepositAccountManagementConfiguration;
-import io.mifos.deposit.service.internal.service.helper.AccountingService;
-import io.mifos.deposit.service.internal.service.helper.RhythmService;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.client.DepositAccountManager;
+import org.apache.fineract.cn.deposit.service.DepositAccountManagementConfiguration;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.AccountingService;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.RhythmService;
+import org.apache.fineract.cn.anubis.test.v1.TenantApplicationSecurityEnvironmentTestRule;
+import org.apache.fineract.cn.api.context.AutoUserContext;
+import org.apache.fineract.cn.lang.ApplicationName;
+import org.apache.fineract.cn.test.fixture.TenantDataStoreContextTestRule;
+import org.apache.fineract.cn.test.listener.EnableEventRecording;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.ClassRule;
@@ -111,10 +111,10 @@
 
   @Configuration
   @EnableEventRecording
-  @EnableFeignClients(basePackages = {"io.mifos.deposit.api.v1"})
+  @EnableFeignClients(basePackages = {"org.apache.fineract.cn.deposit.api.v1"})
   @RibbonClient(name = APP_NAME)
   @Import({DepositAccountManagementConfiguration.class})
-  @ComponentScan("io.mifos.deposit.listener")
+  @ComponentScan("org.apache.fineract.cn.deposit.listener")
   public static class TestConfiguration {
     public TestConfiguration() {
       super();
diff --git a/component-test/src/main/java/io/mifos/deposit/Fixture.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/Fixture.java
similarity index 84%
rename from component-test/src/main/java/io/mifos/deposit/Fixture.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/Fixture.java
index 89fd8e3..09f0b80 100644
--- a/component-test/src/main/java/io/mifos/deposit/Fixture.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/Fixture.java
@@ -16,17 +16,17 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.api.v1.definition.domain.Charge;
-import io.mifos.deposit.api.v1.definition.domain.Currency;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.Term;
-import io.mifos.deposit.api.v1.domain.InterestPayable;
-import io.mifos.deposit.api.v1.domain.TimeUnit;
-import io.mifos.deposit.api.v1.domain.Type;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Charge;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Currency;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Term;
+import org.apache.fineract.cn.deposit.api.v1.domain.InterestPayable;
+import org.apache.fineract.cn.deposit.api.v1.domain.TimeUnit;
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
 import org.apache.commons.lang3.RandomStringUtils;
 
 import java.util.Arrays;
diff --git a/component-test/src/main/java/io/mifos/deposit/SuiteTestEnvironment.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/SuiteTestEnvironment.java
similarity index 86%
rename from component-test/src/main/java/io/mifos/deposit/SuiteTestEnvironment.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/SuiteTestEnvironment.java
index 134cd49..c8a0716 100644
--- a/component-test/src/main/java/io/mifos/deposit/SuiteTestEnvironment.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/SuiteTestEnvironment.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
 
-import io.mifos.core.test.env.TestEnvironment;
-import io.mifos.core.test.fixture.cassandra.CassandraInitializer;
-import io.mifos.core.test.fixture.mariadb.MariaDBInitializer;
+import org.apache.fineract.cn.test.env.TestEnvironment;
+import org.apache.fineract.cn.test.fixture.cassandra.CassandraInitializer;
+import org.apache.fineract.cn.test.fixture.mariadb.MariaDBInitializer;
 import org.junit.ClassRule;
 import org.junit.rules.RuleChain;
 import org.junit.rules.RunExternalResourceOnce;
diff --git a/component-test/src/main/java/io/mifos/deposit/TestAccrual.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestAccrual.java
similarity index 83%
rename from component-test/src/main/java/io/mifos/deposit/TestAccrual.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestAccrual.java
index 589215b..ba3071d 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestAccrual.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestAccrual.java
@@ -16,33 +16,32 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.accounting.api.v1.domain.AccountType;
-import io.mifos.core.api.util.ApiFactory;
-import io.mifos.core.lang.DateConverter;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.api.v1.domain.Type;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.internal.repository.AccruedInterestEntity;
-import io.mifos.deposit.service.internal.repository.AccruedInterestRepository;
-import io.mifos.rhythm.spi.v1.client.BeatListener;
-import io.mifos.rhythm.spi.v1.domain.BeatPublish;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.internal.repository.AccruedInterestEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.AccruedInterestRepository;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Optional;
 import org.apache.commons.lang.RandomStringUtils;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.accounting.api.v1.domain.AccountType;
+import org.apache.fineract.cn.api.util.ApiFactory;
+import org.apache.fineract.cn.lang.DateConverter;
+import org.apache.fineract.cn.rhythm.spi.v1.client.BeatListener;
+import org.apache.fineract.cn.rhythm.spi.v1.domain.BeatPublish;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.springframework.beans.factory.annotation.Autowired;
 
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-import java.util.List;
-import java.util.Optional;
-
 public class TestAccrual extends AbstractDepositAccountManagementTest {
 
   @Autowired
diff --git a/component-test/src/main/java/io/mifos/deposit/TestActions.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestActions.java
similarity index 87%
rename from component-test/src/main/java/io/mifos/deposit/TestActions.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestActions.java
index 5869e2d..03a47df 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestActions.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestActions.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.ActionAlreadyExistsException;
-import io.mifos.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.ActionAlreadyExistsException;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestDividendDistribution.java
similarity index 84%
rename from component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestDividendDistribution.java
index 01d5aca..d889496 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestDividendDistribution.java
@@ -16,25 +16,24 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.accounting.api.v1.domain.AccountType;
-import io.mifos.accounting.api.v1.domain.JournalEntry;
-import io.mifos.core.lang.DateOfBirth;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.api.v1.domain.Type;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.DividendDistribution;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import java.util.List;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.accounting.api.v1.domain.AccountType;
+import org.apache.fineract.cn.accounting.api.v1.domain.JournalEntry;
+import org.apache.fineract.cn.lang.DateOfBirth;
 import org.junit.Assert;
 import org.junit.Test;
 import org.mockito.Matchers;
 import org.mockito.Mockito;
 
-import java.util.List;
-
 public class TestDividendDistribution extends AbstractDepositAccountManagementTest {
 
   public TestDividendDistribution() {
diff --git a/component-test/src/main/java/io/mifos/deposit/TestProductDefinition.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductDefinition.java
similarity index 94%
rename from component-test/src/main/java/io/mifos/deposit/TestProductDefinition.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductDefinition.java
index d9254fd..47e6bae 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestProductDefinition.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductDefinition.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.ProductDefinitionAlreadyExistsException;
-import io.mifos.deposit.api.v1.definition.ProductDefinitionValidationException;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.ProductDefinitionAlreadyExistsException;
+import org.apache.fineract.cn.deposit.api.v1.definition.ProductDefinitionValidationException;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/component-test/src/main/java/io/mifos/deposit/TestProductInstance.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductInstance.java
similarity index 96%
rename from component-test/src/main/java/io/mifos/deposit/TestProductInstance.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductInstance.java
index 91c72ac..f14f421 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestProductInstance.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestProductInstance.java
@@ -16,28 +16,27 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
 import com.google.common.collect.Sets;
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.domain.Charge;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.instance.ProductInstanceNotFoundException;
-import io.mifos.deposit.api.v1.instance.ProductInstanceValidationException;
-import io.mifos.deposit.api.v1.instance.domain.AvailableTransactionType;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.junit.Assert;
-import org.junit.Test;
-import org.mockito.Matchers;
-import org.mockito.Mockito;
-
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Charge;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.instance.ProductInstanceNotFoundException;
+import org.apache.fineract.cn.deposit.api.v1.instance.ProductInstanceValidationException;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.AvailableTransactionType;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Optional;
 import java.util.Set;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.junit.Assert;
+import org.junit.Test;
+import org.mockito.Matchers;
+import org.mockito.Mockito;
 
 public class TestProductInstance extends AbstractDepositAccountManagementTest {
 
diff --git a/component-test/src/main/java/io/mifos/deposit/TestSuite.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestSuite.java
similarity index 96%
rename from component-test/src/main/java/io/mifos/deposit/TestSuite.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/TestSuite.java
index 8fbf1b2..a412f90 100644
--- a/component-test/src/main/java/io/mifos/deposit/TestSuite.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/TestSuite.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit;
+package org.apache.fineract.cn.deposit;
 
 import org.junit.runner.RunWith;
 import org.junit.runners.Suite;
diff --git a/component-test/src/main/java/io/mifos/deposit/listener/ActionEventListener.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ActionEventListener.java
similarity index 86%
rename from component-test/src/main/java/io/mifos/deposit/listener/ActionEventListener.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ActionEventListener.java
index 4b33efb..698efc7 100644
--- a/component-test/src/main/java/io/mifos/deposit/listener/ActionEventListener.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ActionEventListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.listener;
+package org.apache.fineract.cn.deposit.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.AbstractDepositAccountManagementTest;
-import io.mifos.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.AbstractDepositAccountManagementTest;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/component-test/src/main/java/io/mifos/deposit/listener/InterestCalculationEventListener.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/InterestCalculationEventListener.java
similarity index 89%
rename from component-test/src/main/java/io/mifos/deposit/listener/InterestCalculationEventListener.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/listener/InterestCalculationEventListener.java
index cbb6e27..a658151 100644
--- a/component-test/src/main/java/io/mifos/deposit/listener/InterestCalculationEventListener.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/InterestCalculationEventListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.listener;
+package org.apache.fineract.cn.deposit.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.AbstractDepositAccountManagementTest;
-import io.mifos.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.AbstractDepositAccountManagementTest;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/component-test/src/main/java/io/mifos/deposit/listener/MigrationEventListener.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/MigrationEventListener.java
similarity index 86%
rename from component-test/src/main/java/io/mifos/deposit/listener/MigrationEventListener.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/listener/MigrationEventListener.java
index b56ebd3..b1cec08 100644
--- a/component-test/src/main/java/io/mifos/deposit/listener/MigrationEventListener.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/MigrationEventListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.listener;
+package org.apache.fineract.cn.deposit.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.AbstractDepositAccountManagementTest;
-import io.mifos.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.AbstractDepositAccountManagementTest;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/component-test/src/main/java/io/mifos/deposit/listener/ProductDefinitionEventListener.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductDefinitionEventListener.java
similarity index 91%
rename from component-test/src/main/java/io/mifos/deposit/listener/ProductDefinitionEventListener.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductDefinitionEventListener.java
index 2609b3d..d7c3a68 100644
--- a/component-test/src/main/java/io/mifos/deposit/listener/ProductDefinitionEventListener.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductDefinitionEventListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.listener;
+package org.apache.fineract.cn.deposit.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.AbstractDepositAccountManagementTest;
-import io.mifos.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.AbstractDepositAccountManagementTest;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/component-test/src/main/java/io/mifos/deposit/listener/ProductInstanceEventListener.java b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductInstanceEventListener.java
similarity index 91%
rename from component-test/src/main/java/io/mifos/deposit/listener/ProductInstanceEventListener.java
rename to component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductInstanceEventListener.java
index 68fad34..ee5221b 100644
--- a/component-test/src/main/java/io/mifos/deposit/listener/ProductInstanceEventListener.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/deposit/listener/ProductInstanceEventListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.listener;
+package org.apache.fineract.cn.deposit.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
+import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index 400f155..f5273b0 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 71e5108..9b672c0 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Tue Jul 25 13:05:05 CEST 2017
+#Mon Apr 16 11:37:22 CEST 2018
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.4.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-3.4.1-bin.zip
diff --git a/gradlew.bat b/gradlew.bat
index f955316..e95643d 100644
--- a/gradlew.bat
+++ b/gradlew.bat
@@ -1,84 +1,84 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem  Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off

+@rem ##########################################################################

+@rem

+@rem  Gradle startup script for Windows

+@rem

+@rem ##########################################################################

+

+@rem Set local scope for the variables with windows NT shell

+if "%OS%"=="Windows_NT" setlocal

+

+set DIRNAME=%~dp0

+if "%DIRNAME%" == "" set DIRNAME=.

+set APP_BASE_NAME=%~n0

+set APP_HOME=%DIRNAME%

+

+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.

+set DEFAULT_JVM_OPTS=

+

+@rem Find java.exe

+if defined JAVA_HOME goto findJavaFromJavaHome

+

+set JAVA_EXE=java.exe

+%JAVA_EXE% -version >NUL 2>&1

+if "%ERRORLEVEL%" == "0" goto init

+

+echo.

+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.

+echo.

+echo Please set the JAVA_HOME variable in your environment to match the

+echo location of your Java installation.

+

+goto fail

+

+:findJavaFromJavaHome

+set JAVA_HOME=%JAVA_HOME:"=%

+set JAVA_EXE=%JAVA_HOME%/bin/java.exe

+

+if exist "%JAVA_EXE%" goto init

+

+echo.

+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%

+echo.

+echo Please set the JAVA_HOME variable in your environment to match the

+echo location of your Java installation.

+

+goto fail

+

+:init

+@rem Get command-line arguments, handling Windows variants

+

+if not "%OS%" == "Windows_NT" goto win9xME_args

+

+:win9xME_args

+@rem Slurp the command line arguments.

+set CMD_LINE_ARGS=

+set _SKIP=2

+

+:win9xME_args_slurp

+if "x%~1" == "x" goto execute

+

+set CMD_LINE_ARGS=%*

+

+:execute

+@rem Setup the command line

+

+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar

+

+@rem Execute Gradle

+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%

+

+:end

+@rem End local scope for the variables with windows NT shell

+if "%ERRORLEVEL%"=="0" goto mainEnd

+

+:fail

+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of

+rem the _cmd.exe /c_ return code!

+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1

+exit /b 1

+

+:mainEnd

+if "%OS%"=="Windows_NT" endlocal

+

+:omega

diff --git a/service/src/main/java/io/mifos/deposit/service/DepositAccountManagementApplication.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementApplication.java
similarity index 95%
rename from service/src/main/java/io/mifos/deposit/service/DepositAccountManagementApplication.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementApplication.java
index 3fc75a2..ca3b038 100644
--- a/service/src/main/java/io/mifos/deposit/service/DepositAccountManagementApplication.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementApplication.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service;
+package org.apache.fineract.cn.deposit.service;
 
 import org.springframework.boot.SpringApplication;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/DepositAccountManagementConfiguration.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementConfiguration.java
similarity index 70%
rename from service/src/main/java/io/mifos/deposit/service/DepositAccountManagementConfiguration.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementConfiguration.java
index aa9d23b..cea6978 100644
--- a/service/src/main/java/io/mifos/deposit/service/DepositAccountManagementConfiguration.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/DepositAccountManagementConfiguration.java
@@ -16,17 +16,17 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service;
+package org.apache.fineract.cn.deposit.service;
 
-import io.mifos.accounting.api.v1.client.LedgerManager;
-import io.mifos.anubis.config.EnableAnubis;
-import io.mifos.core.async.config.EnableAsync;
-import io.mifos.core.cassandra.config.EnableCassandra;
-import io.mifos.core.command.config.EnableCommandProcessing;
-import io.mifos.core.lang.config.EnableServiceException;
-import io.mifos.core.lang.config.EnableTenantContext;
-import io.mifos.core.mariadb.config.EnableMariaDB;
-import io.mifos.rhythm.api.v1.client.RhythmManager;
+import org.apache.fineract.cn.accounting.api.v1.client.LedgerManager;
+import org.apache.fineract.cn.anubis.config.EnableAnubis;
+import org.apache.fineract.cn.async.config.EnableAsync;
+import org.apache.fineract.cn.cassandra.config.EnableCassandra;
+import org.apache.fineract.cn.command.config.EnableCommandProcessing;
+import org.apache.fineract.cn.lang.config.EnableServiceException;
+import org.apache.fineract.cn.lang.config.EnableTenantContext;
+import org.apache.fineract.cn.mariadb.config.EnableMariaDB;
+import org.apache.fineract.cn.rhythm.api.v1.client.RhythmManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
@@ -55,13 +55,13 @@
     RhythmManager.class
 })
 @ComponentScan({
-    "io.mifos.deposit.service.rest",
-    "io.mifos.deposit.service.internal.service",
-    "io.mifos.deposit.service.internal.repository",
-    "io.mifos.deposit.service.internal.command.handler"
+    "org.apache.fineract.cn.deposit.service.rest",
+    "org.apache.fineract.cn.deposit.service.internal.service",
+    "org.apache.fineract.cn.deposit.service.internal.repository",
+    "org.apache.fineract.cn.deposit.service.internal.command.handler"
 })
 @EnableJpaRepositories({
-    "io.mifos.deposit.service.internal.repository"
+    "org.apache.fineract.cn.deposit.service.internal.repository"
 })
 public class DepositAccountManagementConfiguration extends WebMvcConfigurerAdapter {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/ServiceConstants.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/ServiceConstants.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/ServiceConstants.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/ServiceConstants.java
index 1cd7968..d9bc845 100644
--- a/service/src/main/java/io/mifos/deposit/service/ServiceConstants.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/ServiceConstants.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service;
+package org.apache.fineract.cn.deposit.service;
 
 public interface ServiceConstants {
   String LOGGER_NAME = "deposit-account-management";
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/AccrualCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/AccrualCommand.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/AccrualCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/AccrualCommand.java
index c0d16a8..205347b 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/AccrualCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/AccrualCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 import java.time.LocalDate;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductDefinitionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductDefinitionCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductDefinitionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductDefinitionCommand.java
index ac80ade..fdf412f 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductDefinitionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductDefinitionCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
 
 public class ActivateProductDefinitionCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductInstanceCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductInstanceCommand.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductInstanceCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductInstanceCommand.java
index c7090bc..f64f2a5 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/ActivateProductInstanceCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/ActivateProductInstanceCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 public class ActivateProductInstanceCommand {
   private final String identifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/BeatListenerCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/BeatListenerCommand.java
similarity index 89%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/BeatListenerCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/BeatListenerCommand.java
index ea83d2c..30dc03e 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/BeatListenerCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/BeatListenerCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.rhythm.spi.v1.domain.BeatPublish;
+import org.apache.fineract.cn.rhythm.spi.v1.domain.BeatPublish;
 
 public class BeatListenerCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/CloseProductInstanceCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CloseProductInstanceCommand.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/CloseProductInstanceCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CloseProductInstanceCommand.java
index 956f9d9..f9fb36d 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/CloseProductInstanceCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CloseProductInstanceCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 public class CloseProductInstanceCommand {
   private final String identifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateActionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateActionCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/CreateActionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateActionCommand.java
index d9c63f3..ab4104c 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateActionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateActionCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
 
 public class CreateActionCommand {
   private final Action action;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductDefinitionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductDefinitionCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductDefinitionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductDefinitionCommand.java
index 82965a7..686bee3 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductDefinitionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductDefinitionCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
 
 public class CreateProductDefinitionCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductInstanceCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductInstanceCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductInstanceCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductInstanceCommand.java
index e334d4d..4f2f0c6 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/CreateProductInstanceCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/CreateProductInstanceCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
 
 public class CreateProductInstanceCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/DeactivateProductDefinitionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeactivateProductDefinitionCommand.java
similarity index 89%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/DeactivateProductDefinitionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeactivateProductDefinitionCommand.java
index 97518b8..a6afcb6 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/DeactivateProductDefinitionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeactivateProductDefinitionCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
 
 public class DeactivateProductDefinitionCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/DeleteProductDefinitionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeleteProductDefinitionCommand.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/DeleteProductDefinitionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeleteProductDefinitionCommand.java
index dc85c7f..dd21714 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/DeleteProductDefinitionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DeleteProductDefinitionCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 public class DeleteProductDefinitionCommand {
   private final String identifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/DividendDistributionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DividendDistributionCommand.java
similarity index 95%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/DividendDistributionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DividendDistributionCommand.java
index b1e03d7..40acddc 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/DividendDistributionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/DividendDistributionCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 import java.time.LocalDate;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/MigrationCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/MigrationCommand.java
similarity index 92%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/MigrationCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/MigrationCommand.java
index 34c23c8..118e190 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/MigrationCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/MigrationCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 public class MigrationCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/PayInterestCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/PayInterestCommand.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/PayInterestCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/PayInterestCommand.java
index ad22916..1183e31 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/PayInterestCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/PayInterestCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 import java.time.LocalDate;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/TransactionProcessedCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/TransactionProcessedCommand.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/TransactionProcessedCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/TransactionProcessedCommand.java
index 2d72102..5eb3384 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/TransactionProcessedCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/TransactionProcessedCommand.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
 public class TransactionProcessedCommand {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductDefinitionCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductDefinitionCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductDefinitionCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductDefinitionCommand.java
index 00c528d..d7f8316 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductDefinitionCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductDefinitionCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
 
 public class UpdateProductDefinitionCommand {
   private final ProductDefinition productDefinition;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductInstanceCommand.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductInstanceCommand.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductInstanceCommand.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductInstanceCommand.java
index 6d28074..47cd604 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/UpdateProductInstanceCommand.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/UpdateProductInstanceCommand.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command;
+package org.apache.fineract.cn.deposit.service.internal.command;
 
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
 
 public class UpdateProductInstanceCommand {
   private final ProductInstance productInstance;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ActionAggregate.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ActionAggregate.java
similarity index 72%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/ActionAggregate.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ActionAggregate.java
index 5279c00..e5b4619 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ActionAggregate.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ActionAggregate.java
@@ -16,17 +16,17 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.annotation.EventEmitter;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.CreateActionCommand;
-import io.mifos.deposit.service.internal.mapper.ActionMapper;
-import io.mifos.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateActionCommand;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ActionMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.annotation.EventEmitter;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/BeatListenerCommandHandler.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/BeatListenerCommandHandler.java
similarity index 73%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/BeatListenerCommandHandler.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/BeatListenerCommandHandler.java
index bb07f5e..59d566e 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/BeatListenerCommandHandler.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/BeatListenerCommandHandler.java
@@ -16,21 +16,20 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.domain.CommandCallback;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.core.lang.DateConverter;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.service.internal.command.AccrualCommand;
-import io.mifos.deposit.service.internal.command.BeatListenerCommand;
-import io.mifos.deposit.service.internal.command.PayInterestCommand;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import javax.transaction.Transactional;
+import org.apache.fineract.cn.deposit.service.internal.command.AccrualCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.BeatListenerCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.PayInterestCommand;
 import java.time.LocalDateTime;
+import javax.transaction.Transactional;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.domain.CommandCallback;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
+import org.apache.fineract.cn.lang.DateConverter;
+import org.apache.fineract.cn.lang.ServiceException;
+import org.springframework.beans.factory.annotation.Autowired;
 
 @Aggregate
 public class BeatListenerCommandHandler {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/InterestCalculator.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/InterestCalculator.java
similarity index 89%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/InterestCalculator.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/InterestCalculator.java
index 21224b3..6619921 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/InterestCalculator.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/InterestCalculator.java
@@ -16,54 +16,29 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
 import com.google.common.collect.Sets;
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.accounting.api.v1.domain.AccountEntry;
-import io.mifos.accounting.api.v1.domain.Creditor;
-import io.mifos.accounting.api.v1.domain.Debtor;
-import io.mifos.accounting.api.v1.domain.JournalEntry;
-import io.mifos.core.api.util.UserContextHolder;
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.annotation.CommandLogLevel;
-import io.mifos.core.command.annotation.EventEmitter;
-import io.mifos.core.lang.DateConverter;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.domain.InterestPayable;
-import io.mifos.deposit.api.v1.domain.Type;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.AccrualCommand;
-import io.mifos.deposit.service.internal.command.DividendDistributionCommand;
-import io.mifos.deposit.service.internal.command.PayInterestCommand;
-import io.mifos.deposit.service.internal.repository.AccruedInterestEntity;
-import io.mifos.deposit.service.internal.repository.AccruedInterestRepository;
-import io.mifos.deposit.service.internal.repository.CurrencyEntity;
-import io.mifos.deposit.service.internal.repository.CurrencyRepository;
-import io.mifos.deposit.service.internal.repository.DividendDistributionEntity;
-import io.mifos.deposit.service.internal.repository.DividendDistributionRepository;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.ProductInstanceEntity;
-import io.mifos.deposit.service.internal.repository.ProductInstanceRepository;
-import io.mifos.deposit.service.internal.repository.TermEntity;
-import io.mifos.deposit.service.internal.repository.TermRepository;
-import io.mifos.deposit.service.internal.service.helper.AccountingService;
-import org.apache.commons.lang.RandomStringUtils;
-import org.javamoney.calc.banking.AnnualPercentageYield;
-import org.javamoney.calc.common.Rate;
-import org.javamoney.moneta.Money;
-import org.slf4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.data.domain.Sort;
-import org.threeten.extra.YearQuarter;
-
-import javax.money.CurrencyUnit;
-import javax.money.Monetary;
-import javax.money.MonetaryAmount;
-import javax.transaction.Transactional;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.domain.InterestPayable;
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.AccrualCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DividendDistributionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.PayInterestCommand;
+import org.apache.fineract.cn.deposit.service.internal.repository.AccruedInterestEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.AccruedInterestRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.DividendDistributionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.DividendDistributionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermRepository;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.AccountingService;
 import java.math.BigDecimal;
 import java.sql.Date;
 import java.time.Clock;
@@ -74,6 +49,30 @@
 import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
+import javax.money.CurrencyUnit;
+import javax.money.Monetary;
+import javax.money.MonetaryAmount;
+import javax.transaction.Transactional;
+import org.apache.commons.lang.RandomStringUtils;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.accounting.api.v1.domain.AccountEntry;
+import org.apache.fineract.cn.accounting.api.v1.domain.Creditor;
+import org.apache.fineract.cn.accounting.api.v1.domain.Debtor;
+import org.apache.fineract.cn.accounting.api.v1.domain.JournalEntry;
+import org.apache.fineract.cn.api.util.UserContextHolder;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.annotation.CommandLogLevel;
+import org.apache.fineract.cn.command.annotation.EventEmitter;
+import org.apache.fineract.cn.lang.DateConverter;
+import org.javamoney.calc.banking.AnnualPercentageYield;
+import org.javamoney.calc.common.Rate;
+import org.javamoney.moneta.Money;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.data.domain.Sort;
+import org.threeten.extra.YearQuarter;
 
 @Aggregate
 public class InterestCalculator {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/MigrationAggregate.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/MigrationAggregate.java
similarity index 78%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/MigrationAggregate.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/MigrationAggregate.java
index 05182c7..a071225 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/MigrationAggregate.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/MigrationAggregate.java
@@ -16,24 +16,23 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.annotation.EventEmitter;
-import io.mifos.core.lang.ApplicationName;
-import io.mifos.core.mariadb.domain.FlywayFactoryBean;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.MigrationCommand;
-import io.mifos.deposit.service.internal.service.helper.RhythmService;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.MigrationCommand;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.RhythmService;
+import javax.sql.DataSource;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.annotation.EventEmitter;
+import org.apache.fineract.cn.lang.ApplicationName;
+import org.apache.fineract.cn.mariadb.domain.FlywayFactoryBean;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.transaction.annotation.Transactional;
 
-import javax.sql.DataSource;
-
 @Aggregate
 public class MigrationAggregate {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductDefinitionAggregate.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductDefinitionAggregate.java
similarity index 81%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductDefinitionAggregate.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductDefinitionAggregate.java
index 48b1178..39c12df 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductDefinitionAggregate.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductDefinitionAggregate.java
@@ -16,49 +16,48 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
-import io.mifos.core.api.util.UserContextHolder;
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.annotation.EventEmitter;
-import io.mifos.core.lang.DateConverter;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.ActivateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.CreateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.DeactivateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.DeleteProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.UpdateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.mapper.ChargeMapper;
-import io.mifos.deposit.service.internal.mapper.CurrencyMapper;
-import io.mifos.deposit.service.internal.mapper.ProductDefinitionCommandMapper;
-import io.mifos.deposit.service.internal.mapper.ProductDefinitionMapper;
-import io.mifos.deposit.service.internal.mapper.TermMapper;
-import io.mifos.deposit.service.internal.repository.ActionRepository;
-import io.mifos.deposit.service.internal.repository.ChargeEntity;
-import io.mifos.deposit.service.internal.repository.ChargeRepository;
-import io.mifos.deposit.service.internal.repository.CurrencyEntity;
-import io.mifos.deposit.service.internal.repository.CurrencyRepository;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionCommandEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionCommandRepository;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.TermEntity;
-import io.mifos.deposit.service.internal.repository.TermRepository;
-import org.slf4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.transaction.annotation.Transactional;
-
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.ActivateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DeactivateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DeleteProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.UpdateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ChargeMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.CurrencyMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductDefinitionCommandMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductDefinitionMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.TermMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ChargeEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ChargeRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionCommandEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionCommandRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermRepository;
 import java.time.Clock;
 import java.time.LocalDateTime;
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
+import org.apache.fineract.cn.api.util.UserContextHolder;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.annotation.EventEmitter;
+import org.apache.fineract.cn.lang.DateConverter;
+import org.apache.fineract.cn.lang.ServiceException;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.transaction.annotation.Transactional;
 
 @Aggregate
 public class ProductDefinitionAggregate {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductInstanceAggregate.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductInstanceAggregate.java
similarity index 85%
rename from service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductInstanceAggregate.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductInstanceAggregate.java
index 49f3776..0ea7f07 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/command/handler/ProductInstanceAggregate.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/command/handler/ProductInstanceAggregate.java
@@ -16,34 +16,22 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.command.handler;
+package org.apache.fineract.cn.deposit.service.internal.command.handler;
 
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.core.api.util.UserContextHolder;
-import io.mifos.core.command.annotation.Aggregate;
-import io.mifos.core.command.annotation.CommandHandler;
-import io.mifos.core.command.annotation.EventEmitter;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.ActivateProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.CloseProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.CreateProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.TransactionProcessedCommand;
-import io.mifos.deposit.service.internal.command.UpdateProductInstanceCommand;
-import io.mifos.deposit.service.internal.mapper.ProductInstanceMapper;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.ProductInstanceEntity;
-import io.mifos.deposit.service.internal.repository.ProductInstanceRepository;
-import io.mifos.deposit.service.internal.service.helper.AccountingService;
-import org.apache.commons.lang.StringUtils;
-import org.slf4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.transaction.annotation.Transactional;
-
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.ActivateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CloseProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.TransactionProcessedCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.UpdateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductInstanceMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceRepository;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.AccountingService;
 import java.time.Clock;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
@@ -52,6 +40,17 @@
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
+import org.apache.commons.lang.StringUtils;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.api.util.UserContextHolder;
+import org.apache.fineract.cn.command.annotation.Aggregate;
+import org.apache.fineract.cn.command.annotation.CommandHandler;
+import org.apache.fineract.cn.command.annotation.EventEmitter;
+import org.apache.fineract.cn.lang.ServiceException;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.transaction.annotation.Transactional;
 
 @Aggregate
 public class ProductInstanceAggregate {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ActionMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ActionMapper.java
similarity index 87%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/ActionMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ActionMapper.java
index 3472a17..7bdf228 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ActionMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ActionMapper.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.service.internal.repository.ActionEntity;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionEntity;
 
 public class ActionMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ChargeMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ChargeMapper.java
similarity index 84%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/ChargeMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ChargeMapper.java
index 9dcc256..97eecf4 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ChargeMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ChargeMapper.java
@@ -16,15 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.definition.domain.Charge;
-import io.mifos.deposit.service.internal.repository.ActionEntity;
-import io.mifos.deposit.service.internal.repository.ActionRepository;
-import io.mifos.deposit.service.internal.repository.ChargeEntity;
-
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Charge;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ChargeEntity;
 import java.util.Optional;
+import org.apache.fineract.cn.lang.ServiceException;
 
 public class ChargeMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/CurrencyMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/CurrencyMapper.java
similarity index 87%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/CurrencyMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/CurrencyMapper.java
index 73dc59b..3e59da3 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/CurrencyMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/CurrencyMapper.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.deposit.api.v1.definition.domain.Currency;
-import io.mifos.deposit.service.internal.repository.CurrencyEntity;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Currency;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyEntity;
 
 public class CurrencyMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/DividendDistributionMapper.java
similarity index 78%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/DividendDistributionMapper.java
index 056eacf..5d3125d 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/DividendDistributionMapper.java
@@ -16,17 +16,16 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.core.api.util.UserContextHolder;
-import io.mifos.core.lang.DateOfBirth;
-import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
-import io.mifos.deposit.service.internal.repository.DividendDistributionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.DividendDistribution;
+import org.apache.fineract.cn.deposit.service.internal.repository.DividendDistributionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
 import java.sql.Date;
 import java.time.Clock;
 import java.time.LocalDateTime;
+import org.apache.fineract.cn.api.util.UserContextHolder;
+import org.apache.fineract.cn.lang.DateOfBirth;
 
 public class DividendDistributionMapper {
 
@@ -52,7 +51,8 @@
     final DividendDistribution dividendDistribution = new DividendDistribution();
 
     dividendDistribution.setDividendRate(dividendDistributionEntity.getRate().toString());
-    dividendDistribution.setDueDate(DateOfBirth.fromLocalDate(dividendDistributionEntity.getDueDate().toLocalDate()));
+    dividendDistribution.setDueDate(DateOfBirth
+        .fromLocalDate(dividendDistributionEntity.getDueDate().toLocalDate()));
 
     return dividendDistribution;
   }
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java
similarity index 85%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java
index 6c8efa0..b136eff 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionCommandMapper.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.core.lang.DateConverter;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionCommandEntity;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionCommandEntity;
+import org.apache.fineract.cn.lang.DateConverter;
 
 public class ProductDefinitionCommandMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionMapper.java
similarity index 92%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionMapper.java
index f359e69..1178e7c 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductDefinitionMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductDefinitionMapper.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
 
 public class ProductDefinitionMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductInstanceMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductInstanceMapper.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductInstanceMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductInstanceMapper.java
index 53b841b..f19b518 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/ProductInstanceMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/ProductInstanceMapper.java
@@ -16,21 +16,20 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.core.lang.DateConverter;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.ProductInstanceEntity;
-import org.apache.commons.lang.StringUtils;
-
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceEntity;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Optional;
 import java.util.stream.Collectors;
+import org.apache.commons.lang.StringUtils;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.lang.DateConverter;
+import org.apache.fineract.cn.lang.ServiceException;
 
 public class ProductInstanceMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/mapper/TermMapper.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/TermMapper.java
similarity index 87%
rename from service/src/main/java/io/mifos/deposit/service/internal/mapper/TermMapper.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/TermMapper.java
index 7be6ffb..f17c470 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/mapper/TermMapper.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/mapper/TermMapper.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.mapper;
+package org.apache.fineract.cn.deposit.service.internal.mapper;
 
-import io.mifos.deposit.api.v1.definition.domain.Term;
-import io.mifos.deposit.service.internal.repository.TermEntity;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Term;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermEntity;
 
 public class TermMapper {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestEntity.java
similarity index 96%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestEntity.java
index e6fed07..c3baf43 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestEntity.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestRepository.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestRepository.java
index d8f63e6..904cd07 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/AccruedInterestRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/AccruedInterestRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Repository;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ActionEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionEntity.java
similarity index 96%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ActionEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionEntity.java
index a41b806..56c63fd 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ActionEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionEntity.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ActionRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionRepository.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ActionRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionRepository.java
index 62f3a5c..8da9a68 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ActionRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ActionRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeEntity.java
similarity index 97%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeEntity.java
index 2d71979..0100269 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeEntity.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeRepository.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeRepository.java
index 8c06617..05f82cd 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ChargeRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ChargeRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyEntity.java
similarity index 97%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyEntity.java
index 4dd8868..58fe44d 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyEntity.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyRepository.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyRepository.java
index 67240ea..fe62bf5 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/CurrencyRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/CurrencyRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionEntity.java
similarity index 95%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionEntity.java
index a836e42..514c8c0 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionEntity.java
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
-import io.mifos.core.mariadb.util.LocalDateTimeConverter;
-
+import java.sql.Date;
+import java.time.LocalDateTime;
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Convert;
@@ -31,8 +31,7 @@
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
-import java.sql.Date;
-import java.time.LocalDateTime;
+import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "shed_dividend_distributions")
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionRepository.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionRepository.java
index cee0571..8e914a0 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/DividendDistributionRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/DividendDistributionRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandEntity.java
similarity index 95%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandEntity.java
index f9d1bbd..7c8cb75 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandEntity.java
@@ -16,10 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
-import io.mifos.core.mariadb.util.LocalDateTimeConverter;
-
+import java.time.LocalDateTime;
 import javax.persistence.Column;
 import javax.persistence.Convert;
 import javax.persistence.Entity;
@@ -30,7 +29,7 @@
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
-import java.time.LocalDateTime;
+import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "shed_commands")
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandRepository.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandRepository.java
index b3466c5..c9b8cb9 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionCommandRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionCommandRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionEntity.java
similarity index 97%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionEntity.java
index cf7419c..193a952 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionEntity.java
@@ -16,10 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
-import io.mifos.core.mariadb.util.LocalDateTimeConverter;
-
+import java.time.LocalDateTime;
 import javax.persistence.Column;
 import javax.persistence.Convert;
 import javax.persistence.Entity;
@@ -27,7 +26,7 @@
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.Table;
-import java.time.LocalDateTime;
+import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "shed_product_definitions")
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionRepository.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionRepository.java
index 75fe2eb..a1f4c9a 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductDefinitionRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductDefinitionRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceEntity.java
similarity index 95%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceEntity.java
index 93c8921..c0eaab3 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceEntity.java
@@ -16,11 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
-import io.mifos.core.mariadb.util.LocalDateConverter;
-import io.mifos.core.mariadb.util.LocalDateTimeConverter;
-
+import java.time.LocalDate;
+import java.time.LocalDateTime;
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Convert;
@@ -32,8 +31,8 @@
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
+import org.apache.fineract.cn.mariadb.util.LocalDateConverter;
+import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "shed_product_instances")
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceRepository.java
similarity index 94%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceRepository.java
index cbf6ead..083e621 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/ProductInstanceRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/ProductInstanceRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/TermEntity.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermEntity.java
similarity index 97%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/TermEntity.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermEntity.java
index a128ddb..f5f58fa 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/TermEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermEntity.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/repository/TermRepository.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermRepository.java
similarity index 93%
rename from service/src/main/java/io/mifos/deposit/service/internal/repository/TermRepository.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermRepository.java
index 458c0af..7ca92bf 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/repository/TermRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/repository/TermRepository.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.repository;
+package org.apache.fineract.cn.deposit.service.internal.repository;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/service/ActionService.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ActionService.java
similarity index 83%
rename from service/src/main/java/io/mifos/deposit/service/internal/service/ActionService.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ActionService.java
index a560552..e5cc435 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/service/ActionService.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ActionService.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.service;
+package org.apache.fineract.cn.deposit.service.internal.service;
 
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.mapper.ActionMapper;
-import io.mifos.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ActionMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionRepository;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/service/ProductDefinitionService.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductDefinitionService.java
similarity index 75%
rename from service/src/main/java/io/mifos/deposit/service/internal/service/ProductDefinitionService.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductDefinitionService.java
index 282dd8b..d3ab88b 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/service/ProductDefinitionService.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductDefinitionService.java
@@ -16,36 +16,35 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.service;
+package org.apache.fineract.cn.deposit.service.internal.service;
 
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.mapper.ChargeMapper;
-import io.mifos.deposit.service.internal.mapper.CurrencyMapper;
-import io.mifos.deposit.service.internal.mapper.DividendDistributionMapper;
-import io.mifos.deposit.service.internal.mapper.ProductDefinitionCommandMapper;
-import io.mifos.deposit.service.internal.mapper.ProductDefinitionMapper;
-import io.mifos.deposit.service.internal.mapper.TermMapper;
-import io.mifos.deposit.service.internal.repository.ActionRepository;
-import io.mifos.deposit.service.internal.repository.ChargeRepository;
-import io.mifos.deposit.service.internal.repository.CurrencyRepository;
-import io.mifos.deposit.service.internal.repository.DividendDistributionRepository;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionCommandRepository;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.TermRepository;
-import org.slf4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Service;
-
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.DividendDistribution;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ChargeMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.CurrencyMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.DividendDistributionMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductDefinitionCommandMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductDefinitionMapper;
+import org.apache.fineract.cn.deposit.service.internal.mapper.TermMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ActionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ChargeRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.CurrencyRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.DividendDistributionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionCommandRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.TermRepository;
 import java.util.Collections;
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
+import org.apache.fineract.cn.lang.ServiceException;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Service;
 
 @Service
 public class ProductDefinitionService {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/service/ProductInstanceService.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductInstanceService.java
similarity index 83%
rename from service/src/main/java/io/mifos/deposit/service/internal/service/ProductInstanceService.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductInstanceService.java
index 7bd3a81..7ac3ef3 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/service/ProductInstanceService.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/ProductInstanceService.java
@@ -16,25 +16,24 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.service;
+package org.apache.fineract.cn.deposit.service.internal.service;
 
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.mapper.ProductInstanceMapper;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
-import io.mifos.deposit.service.internal.repository.ProductDefinitionRepository;
-import io.mifos.deposit.service.internal.repository.ProductInstanceRepository;
-import io.mifos.deposit.service.internal.service.helper.AccountingService;
-import org.slf4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Service;
-
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.mapper.ProductInstanceMapper;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionEntity;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductDefinitionRepository;
+import org.apache.fineract.cn.deposit.service.internal.repository.ProductInstanceRepository;
+import org.apache.fineract.cn.deposit.service.internal.service.helper.AccountingService;
 import java.util.Collections;
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Service;
 
 @Service
 public class ProductInstanceService {
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/service/helper/AccountingService.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/AccountingService.java
similarity index 82%
rename from service/src/main/java/io/mifos/deposit/service/internal/service/helper/AccountingService.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/AccountingService.java
index f42ae0b..4c514d2 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/service/helper/AccountingService.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/AccountingService.java
@@ -16,27 +16,26 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.service.helper;
+package org.apache.fineract.cn.deposit.service.internal.service.helper;
 
 import com.google.common.collect.Lists;
-import io.mifos.accounting.api.v1.client.AccountNotFoundException;
-import io.mifos.accounting.api.v1.client.LedgerManager;
-import io.mifos.accounting.api.v1.client.LedgerNotFoundException;
-import io.mifos.accounting.api.v1.domain.Account;
-import io.mifos.accounting.api.v1.domain.AccountEntry;
-import io.mifos.accounting.api.v1.domain.AccountPage;
-import io.mifos.accounting.api.v1.domain.JournalEntry;
-import io.mifos.accounting.api.v1.domain.Ledger;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import java.util.HashSet;
+import java.util.List;
+import org.apache.fineract.cn.accounting.api.v1.client.AccountNotFoundException;
+import org.apache.fineract.cn.accounting.api.v1.client.LedgerManager;
+import org.apache.fineract.cn.accounting.api.v1.client.LedgerNotFoundException;
+import org.apache.fineract.cn.accounting.api.v1.domain.Account;
+import org.apache.fineract.cn.accounting.api.v1.domain.AccountEntry;
+import org.apache.fineract.cn.accounting.api.v1.domain.AccountPage;
+import org.apache.fineract.cn.accounting.api.v1.domain.JournalEntry;
+import org.apache.fineract.cn.accounting.api.v1.domain.Ledger;
+import org.apache.fineract.cn.lang.ServiceException;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Service;
 
-import java.util.HashSet;
-import java.util.List;
-
 @Service
 public class AccountingService {
 
diff --git a/service/src/main/java/io/mifos/deposit/service/internal/service/helper/RhythmService.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/RhythmService.java
similarity index 84%
rename from service/src/main/java/io/mifos/deposit/service/internal/service/helper/RhythmService.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/RhythmService.java
index c4a26f0..fa64282 100644
--- a/service/src/main/java/io/mifos/deposit/service/internal/service/helper/RhythmService.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/internal/service/helper/RhythmService.java
@@ -16,13 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.internal.service.helper;
+package org.apache.fineract.cn.deposit.service.internal.service.helper;
 
-import io.mifos.core.api.util.NotFoundException;
-import io.mifos.core.lang.ApplicationName;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.rhythm.api.v1.client.RhythmManager;
-import io.mifos.rhythm.api.v1.domain.Beat;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.api.util.NotFoundException;
+import org.apache.fineract.cn.lang.ApplicationName;
+import org.apache.fineract.cn.rhythm.api.v1.client.RhythmManager;
+import org.apache.fineract.cn.rhythm.api.v1.domain.Beat;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/rest/ActionRestController.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ActionRestController.java
similarity index 81%
rename from service/src/main/java/io/mifos/deposit/service/rest/ActionRestController.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ActionRestController.java
index b53f6f8..7762986 100644
--- a/service/src/main/java/io/mifos/deposit/service/rest/ActionRestController.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ActionRestController.java
@@ -16,17 +16,19 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.rest;
+package org.apache.fineract.cn.deposit.service.rest;
 
-import io.mifos.anubis.annotation.AcceptedTokenType;
-import io.mifos.anubis.annotation.Permittable;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.PermittableGroupIds;
-import io.mifos.deposit.api.v1.definition.domain.Action;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.CreateActionCommand;
-import io.mifos.deposit.service.internal.service.ActionService;
+import org.apache.fineract.cn.deposit.api.v1.PermittableGroupIds;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.Action;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateActionCommand;
+import org.apache.fineract.cn.deposit.service.internal.service.ActionService;
+import java.util.List;
+import javax.validation.Valid;
+import org.apache.fineract.cn.anubis.annotation.AcceptedTokenType;
+import org.apache.fineract.cn.anubis.annotation.Permittable;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
+import org.apache.fineract.cn.lang.ServiceException;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -37,9 +39,6 @@
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.validation.Valid;
-import java.util.List;
-
 @RestController
 @RequestMapping("/actions")
 public class ActionRestController {
diff --git a/service/src/main/java/io/mifos/deposit/service/rest/BeatListenerRestController.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/BeatListenerRestController.java
similarity index 82%
rename from service/src/main/java/io/mifos/deposit/service/rest/BeatListenerRestController.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/rest/BeatListenerRestController.java
index 57039c7..32d017f 100644
--- a/service/src/main/java/io/mifos/deposit/service/rest/BeatListenerRestController.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/BeatListenerRestController.java
@@ -16,15 +16,16 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.rest;
+package org.apache.fineract.cn.deposit.service.rest;
 
-import io.mifos.anubis.annotation.AcceptedTokenType;
-import io.mifos.anubis.annotation.Permittable;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.BeatListenerCommand;
-import io.mifos.rhythm.spi.v1.client.BeatListener;
-import io.mifos.rhythm.spi.v1.domain.BeatPublish;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.BeatListenerCommand;
+import javax.validation.Valid;
+import org.apache.fineract.cn.anubis.annotation.AcceptedTokenType;
+import org.apache.fineract.cn.anubis.annotation.Permittable;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
+import org.apache.fineract.cn.rhythm.spi.v1.client.BeatListener;
+import org.apache.fineract.cn.rhythm.spi.v1.domain.BeatPublish;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -36,8 +37,6 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.validation.Valid;
-
 @RestController
 @RequestMapping(BeatListener.PUBLISH_BEAT_PATH)
 public class BeatListenerRestController {
diff --git a/service/src/main/java/io/mifos/deposit/service/rest/DepositAccountManagementRestController.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/DepositAccountManagementRestController.java
similarity index 84%
rename from service/src/main/java/io/mifos/deposit/service/rest/DepositAccountManagementRestController.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/rest/DepositAccountManagementRestController.java
index 55e0f87..13b9c25 100644
--- a/service/src/main/java/io/mifos/deposit/service/rest/DepositAccountManagementRestController.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/DepositAccountManagementRestController.java
@@ -16,13 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.rest;
+package org.apache.fineract.cn.deposit.service.rest;
 
-import io.mifos.anubis.annotation.AcceptedTokenType;
-import io.mifos.anubis.annotation.Permittable;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.MigrationCommand;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.MigrationCommand;
+import org.apache.fineract.cn.anubis.annotation.AcceptedTokenType;
+import org.apache.fineract.cn.anubis.annotation.Permittable;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductDefinitionRestController.java
similarity index 88%
rename from service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductDefinitionRestController.java
index 85981bb..705a9c2 100644
--- a/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductDefinitionRestController.java
@@ -16,27 +16,31 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.rest;
+package org.apache.fineract.cn.deposit.service.rest;
 
-import io.mifos.anubis.annotation.AcceptedTokenType;
-import io.mifos.anubis.annotation.Permittable;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.PermittableGroupIds;
-import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
-import io.mifos.deposit.api.v1.definition.domain.ProductDefinitionCommand;
-import io.mifos.deposit.api.v1.domain.Type;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.ActivateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.CreateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.DeactivateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.DeleteProductDefinitionCommand;
-import io.mifos.deposit.service.internal.command.DividendDistributionCommand;
-import io.mifos.deposit.service.internal.command.UpdateProductDefinitionCommand;
-import io.mifos.deposit.service.internal.service.ProductDefinitionService;
-import io.mifos.deposit.service.internal.service.ProductInstanceService;
+import org.apache.fineract.cn.deposit.api.v1.PermittableGroupIds;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.DividendDistribution;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinition;
+import org.apache.fineract.cn.deposit.api.v1.definition.domain.ProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.api.v1.domain.Type;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.ActivateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DeactivateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DeleteProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.DividendDistributionCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.UpdateProductDefinitionCommand;
+import org.apache.fineract.cn.deposit.service.internal.service.ProductDefinitionService;
+import org.apache.fineract.cn.deposit.service.internal.service.ProductInstanceService;
+import java.time.LocalDate;
+import java.util.List;
+import java.util.Optional;
+import javax.validation.Valid;
+import org.apache.fineract.cn.anubis.annotation.AcceptedTokenType;
+import org.apache.fineract.cn.anubis.annotation.Permittable;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
+import org.apache.fineract.cn.lang.ServiceException;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -49,11 +53,6 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.validation.Valid;
-import java.time.LocalDate;
-import java.util.List;
-import java.util.Optional;
-
 @RestController
 @RequestMapping("/definitions")
 public class ProductDefinitionRestController {
diff --git a/service/src/main/java/io/mifos/deposit/service/rest/ProductInstanceRestController.java b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductInstanceRestController.java
similarity index 87%
rename from service/src/main/java/io/mifos/deposit/service/rest/ProductInstanceRestController.java
rename to service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductInstanceRestController.java
index 8c38651..d9025c9 100644
--- a/service/src/main/java/io/mifos/deposit/service/rest/ProductInstanceRestController.java
+++ b/service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductInstanceRestController.java
@@ -16,23 +16,27 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.deposit.service.rest;
+package org.apache.fineract.cn.deposit.service.rest;
 
-import io.mifos.anubis.annotation.AcceptedTokenType;
-import io.mifos.anubis.annotation.Permittable;
-import io.mifos.core.command.gateway.CommandGateway;
-import io.mifos.core.lang.ServiceException;
-import io.mifos.deposit.api.v1.EventConstants;
-import io.mifos.deposit.api.v1.PermittableGroupIds;
-import io.mifos.deposit.api.v1.instance.domain.AvailableTransactionType;
-import io.mifos.deposit.api.v1.instance.domain.ProductInstance;
-import io.mifos.deposit.service.ServiceConstants;
-import io.mifos.deposit.service.internal.command.ActivateProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.CloseProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.CreateProductInstanceCommand;
-import io.mifos.deposit.service.internal.command.TransactionProcessedCommand;
-import io.mifos.deposit.service.internal.command.UpdateProductInstanceCommand;
-import io.mifos.deposit.service.internal.service.ProductInstanceService;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.deposit.api.v1.PermittableGroupIds;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.AvailableTransactionType;
+import org.apache.fineract.cn.deposit.api.v1.instance.domain.ProductInstance;
+import org.apache.fineract.cn.deposit.service.ServiceConstants;
+import org.apache.fineract.cn.deposit.service.internal.command.ActivateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CloseProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.CreateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.TransactionProcessedCommand;
+import org.apache.fineract.cn.deposit.service.internal.command.UpdateProductInstanceCommand;
+import org.apache.fineract.cn.deposit.service.internal.service.ProductInstanceService;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import javax.validation.Valid;
+import org.apache.fineract.cn.anubis.annotation.AcceptedTokenType;
+import org.apache.fineract.cn.anubis.annotation.Permittable;
+import org.apache.fineract.cn.command.gateway.CommandGateway;
+import org.apache.fineract.cn.lang.ServiceException;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -46,11 +50,6 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.validation.Valid;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
 @RestController
 @RequestMapping("/instances")
 public class ProductInstanceRestController {