# How to Push a Module/Package to the Marketplace and updating version

## Prerequisites

We assume you have all prerequisites you may need, including:

1. If needed: the VPN is configured to access the Finmars resources
2. If needed: access to the Virtual Machine to work with the sensitive information
3. Must have: registered in Finmars in the needed region environment (self-registered or registered by Finmars)
4. Must have: having permissions set to allow continue with the Action in the Guide
5. Must have: registered in Finmars Marketplace to use credentials to push a module/package
6. Must have: the module/package is already created

## Pushing a Module/Package to the Marketplace and updating version

**Step 1:** After creating/modified the module/package, go to the Configuration Manage page, click on the card for the module/package. It has been created/modified locally, but now it needs to be pushed to the marketplace.

\* The example in the pictures shows a module, but the process is the same for a package.

[![Untitled6.png](https://docs.finmars.com/uploads/images/gallery/2025-01/scaled-1680-/65Puntitled6.png)](https://docs.finmars.com/uploads/images/gallery/2025-01/65Puntitled6.png)

Picture 1. Marketplace with new module

**Step 2.** Before pushing a new module/package, ensure that the date and version are correct. Usually a new version is needed, so increment the version number in the configuration manager and the manifest file so they will be the same.

[![Untitled9.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/untitled9.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/untitled9.png)

Picture 2. Date and version of the released package/module

**Step 3.**  Select appropriate Status for the configuration's version:

1. **Stable** - the latest version of stable releases are installed by default from the Marketplace
2. **Release** Candidate - this version can be installed manually from the Marketplace

[![image.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/saSimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/saSimage.png)

Picture 3. Selecting Status

**Step 4.** When creating a package, ensure that all required dependencies are included in the Manifest JSON. Refer to the example below.

```json
{
    "actions": [
        {
            "workflow": "com.finmars.standard-workflow:init"
        }
    ],
    "configuration_code": "com.finmars.standard",
    "date": "2025-02-08",
    "dependencies": [
        {
            "channel": "stable",
            "configuration_code": "com.finmars.standard-transaction-type",
            "version": "1.6.1"
        },
        ...
        {
            "channel": "stable",
            "configuration_code": "com.finmars.standard-iam",
            "version": "1.0.2"
        }
    ],
    "description": "Package for Standard configuration",
    "name": "Standard - Configuration",
    "primary_module": "com.finmars.standard-aliases",
    "version": "1.6.4"
}
```

[![image.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/6ycimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/6ycimage.png)

Picture 4. Adding dependencies in case of the package creating

**Step 5**: Click the **'UPDATE'** button to apply changes to the Manifest for further Export to Storage and Push.

[![2jf.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/2jf.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/2jf.png)

Picture 5. Updating the version of the released package/module

**Step 6**: After updating, open the configuration again and export the configuration to storage. Click on the button "**Export to storage**" This action will save and export all configuration files to the local system storage.

[![Untitled7.png](https://docs.finmars.com/uploads/images/gallery/2025-01/scaled-1680-/untitled7.png)](https://docs.finmars.com/uploads/images/gallery/2025-01/untitled7.png)

Picture 6. Export to storage

**Step 7.** Clicking the button will initiate export to storage.

[![Untitled15.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/h9Luntitled15.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/h9Luntitled15.png)

Picture 7. Exporting to storage

**Step 8.** Wait until the task status shows "**Task Finished**" and manually verify that the export was completed successfully to ensure everything is in order.

[![Untitled16.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/jtQuntitled16.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/jtQuntitled16.png)

Picture 8. Successful export to storage

**Step 9:** Enter Changelog

[![image.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/rqtimage.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/rqtimage.png)

**Step 10:** Once the files have been successfully exported, enter the username and password provided by the administrator, then click "**OK**."

[![Untitled8.png](https://docs.finmars.com/uploads/images/gallery/2025-01/scaled-1680-/untitled8.png)](https://docs.finmars.com/uploads/images/gallery/2025-01/untitled8.png)

Picture 9. Pushing configuration to the marketplace

**Step 11**. Wait and verify until the task status shows "**Task finished**."

[![2.png](https://docs.finmars.com/uploads/images/gallery/2025-02/scaled-1680-/AUF2.png)](https://docs.finmars.com/uploads/images/gallery/2025-02/AUF2.png)

Picture 10. Successful pushing configuration to the marketplace