# Importing the Forter Cartridge

## 1. Import the Cartridge

- Connect to your Demandware server and select the Import option.
- Then select “Existing Project into Workspace” option
- In **Import Projects** → Select archive file (or “root directory”) if you have already unzipped the cartridge

## 2. Import the Metadata from the Forter Cartridge

- In the Metadata folder of the cartridge you will find a zip file called **site_template**.
- Go to Administration > Site development > Site Import & Export and upload the zip file.
- From there, select your uploaded zip file, click “Import” and then click “OK” to complete.

## 3. Review your cartridge paths

### (deprecated) Non-SFRA (Controllers or Pipelines only)

- Go to Administration > Sites > Manage Sites and choose your site. Click on the Settings tab, add in the cartridge path int_forter then click Apply
- Go to Administration > Sites > Manage Sites and click on Business Manager link
- Add the following cartridge path: **bm_forter**:int_forter
- Click Apply

### MFRA/SFRA

- Add in the cartridge path **int_forter_mfra** in case if site is MFRA/SFRA-based.

## 4. Customize your site preferences

- Go to: Merchant Tools > Site Preferences > Custom Preferences > Forter.
  - **Forter Enabled**  - Indicates whether the Forter code will be executed or not
  - **Forter Cancel Order On Decline**  - If enabled, when Forter returns a “decline” decision, the order is Failed and request is made to the payment processor to void the order. If this option is not selected, then in cases of a “decline” decision, the order is placed (and order status will be “New”).
  - **Forter Auto-Invoice On Approve**  - If enabled, when an “approve” decision is returned the payment gateway capture request is called and the order is placed.
  - **Forter Custom Decline Message**  - Option to create a message that can be shown if the Forter Show Declined Page option is selected
  - **Forter Show Decline Page**  - If enabled this option means that a decline page (with a customizable message) is shown in cases when Forter declines the order. This setting is disabled if the Cancel order when transaction is declined is disabled
  - **Number of weeks**  - the time range (number of weeks) that the Forter Order Update job queries in order to update the order status of past orders. The default value is 4 weeks.

## 5. Specify your API version

- Your dedicated Forter implementation team will generate an API schema tailored to your specific market, vertical, and checkout flow. You can find all published versions of the API schema, you visit the [API reference section](https://portal.forter.com/app/developer/api/api/general/introduction) where you will see the API versions under "Version" on the upper left-hand corner of the screen.
  - Note that you may need to toggle to your Forter portal sandbox environment to see the schema.
- Once you've identified the schema version you should point to, go to: **Cartridges** > **int_forter** > **cartridge** > **scripts** > **init** > **forterServiceInit.js**.
- In the function **createRequest: function(svc, args, params)** which is used to create requests from the cartridge to Forter's server, modify the api-version line. The default line should read: **svc.addHeader("api-version", "2.86");**. Modify **2.86** to align with the schema version provided to you in the portal.
  - Note: the **createRequest** function will appear multiple times within the forterServiceInit.js file and the api-version will need to be adjusted for each instance of this function.

## 6. Finalize the Forter Permissions

- Go to Administration > Organization > Roles & Permissions.
- Choose the Administrator role and click on the Business Manager Modules tab.
- Select your site from the **Select Context** section.
- Select Forter modules and click **Apply**.
