> For the complete documentation index, see [llms.txt](https://docs.spurtcommerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spurtcommerce.com/addons/sales-related-add-ons/abandoned-cart-addon-old.md).

# Abandoned Cart Addon old

**Installation of Spurtcommerce Abandoned Cart Addon**

This document will help you to install Abandoned Cart add-on to your spurtcommerce server for single vendor as well as multi vendor

#### [<mark style="color:blue;">**Setup an API (Step By Step)**</mark>](#setup-an-api-step-by-step)

For setting up the API, you need to execute the following steps:

* Installing an extension&#x20;
* Run the application&#x20;
* Make the build

**Step 1 : Installing an extension**&#x20;

These are the steps that need to be executed for installation of the extension.

Usually spurcommerce comes packed in a zip, whose name ends in <mark style="color:green;">**"abandonedcart-addon.zip".**</mark> Extract the zip file, open api folder and open addon folder within that and copy the content of addon folder into the specified path

&#x20;                                      **Path - \<PROJECT\_ROOT>/addon**

**Step 2 : Run the application**

After you have completed the installation of the above mentioned steps, you can run the application and also view the changes.

```
$ npm start serve
```

Once you execute the above command, add-on file will get integrated into the backend API.

**Step 3 : Make the build**

These are the steps that need to be followed for generating the build.

To run the below command

```
 $ npm run build
```

Then latest built files can be deployed into the server.

## Admin Setup

&#x20;These are the steps that need to be executed for installation of the extension.

* Installing an extension
* Update the configuration
* Module Detail
* Run the application
* Make the build

**Step 1 : Installing an extension**      &#x20;

These are the steps that need to be executed for installation of the extension.

Usually spurcommerce comes packed in a zip, whose name ends in "<mark style="color:green;">**abandonedcart.addOn.zip**</mark>".&#x20;

Extract the zip file and copy the content of admin/add-ons folder into the specified path

&#x20;                                                        **Path -  admin/add-ons**

**Note:**

1\) In <mark style="color:green;">**add-ons**</mark> folder if already a sales folder exists.

Inside sales/manage-orders folder paste abandoned folder.

In sales routing file<mark style="color:green;">**(catalog.routing.ts)**</mark> paste the below code.

export const abandonedRoutes=\[&#x20;

{

&#x20;path:'abandoned\_module', loadChildren:()=>import('./manage-orders/abandoned/abandonedcart.module').then(m=>

m.AbandonedCartModule),&#x20;

&#x20;  canActivate: \[AuthGuard]

&#x20;}

&#x20;]

2\) Inside the addon if the sales folder doesn’t exist.

Paste

**Step 2 : Update the configuration**

After the installation of the extension, you will have to update certain configurations into the default Spurtcommerce config files. For this, you need to follow the steps below.&#x20;

**Update Reducer Config**

1. Import below line into the <mark style="color:green;">**add-ons/add-ons-reducer.ts**</mark>

```
import * as fromAbandonedCart from '../add-ons/sales/manage-orders/abandoned/core/reducer/abandonedcart.reducer';

```

2. Add the reducer into the below object

```
  abondonedCart: fromAbandonedCart.reducer,

```

3. After adding its looks like below

export const AddOnReducers: ActionReducerMap\<State> = {

&#x20;abondonedCart: fromAbandonedCart.reducer,

};

**Update State Config**

1. &#x20;Import below line into the <mark style="color:green;">**add-ons/add-ons-state.ts**</mark>

```
abondonedCart: fromAbandonedCart.reducer,import { AbandonedCartStates } from '../add-ons/sales/manage-orders/abandoned/core/reducer/abandonedcart.state';

```

2. Add the state into the below object

```
abondonedCart: AbandonedCartStates,

```

3. After adding its looks like below

&#x20;export interface AddOnAppState {

abondonedCart: AbandonedCartStates,

}

**Step 3 : Change the routing file**<mark style="color:green;">**(manage-orders.routing.ts)**</mark>

Inside the

&#x20;<mark style="color:green;">**/src/theme/default/admin/sales/components/manage-orders/manage-orders.routing.ts**</mark>

&#x20; If the point one already exists in your file, skip point one

1. Import below line

```
import * as SalesInventoryRoutes  from 'add-ons/sales/sales.routing';

```

2. Add these routes below the manageOrderRoutes array

manageOrderRoutes.forEach(data =>&#x20;

{ if (data) { manageOrderRoutes.push(SalesInventoryRoutes.

abandonedRoutes\[0]); }&#x20;

});

For setting up the tab add this line in

<mark style="color:green;">**/src/theme/default/admin/sales/components/header/header.component.html**</mark>

<mark style="color:green;">**Below line no=39**</mark>

\<li \[appHideIfUnauthorized]="''" >

&#x20;\<a href="javascript:void(0)" \[routerLink]="\['/sales/manage-orders/abandoned\_module']"&#x20;

\[routerLinkActive]="'active'">

&#x20;{{'Sales.nav.Abandoned'|translate}}

&#x20;\</a>&#x20;

\</li>

**Step 4 : Run the application**

After you have integrated the Abandoned Module into Spurtcommerce, you can use the following command to run the application.

```
 npm run large-serve

```

Once you execute the above command you can view the installed module in Spurtcommerce, within the page in which you have integrated.&#x20;

**Step 5 : Make the build**

To run the below command

```
 npm run large-build

```

Then the latest built files can be deployed into the server.
