# Setup Guide

URL: https://zerodev.ca/docs/store/setup

> Install Store on AthenaBot and activate your license.



Store is a plugin for AthenaBot by Iynx Development. It runs inside your AthenaBot install and is set up through its config files.

## Requirements

| Requirement       | Details                                                                                                       |
| ----------------- | ------------------------------------------------------------------------------------------------------------- |
| AthenaBot         | **2.6.0** or newer                                                                                            |
| AthenaBot plugins | `core`, `web_api`. These come with AthenaBot. Make sure none of them are disabled.                            |
| npm packages      | `stripe`, `razorpay`, `@polar-sh/sdk`. AthenaBot installs these for you on the next start.                    |
| License key       | From the [Zero Development Discord](https://discord.zerodev.ca). Open a ticket with your BuiltByBit username. |

Store does not need ZDLibrary or any other Zero Development plugin.

## Install

1. Stop AthenaBot.
2. Extract the download and put the `store` folder in AthenaBot's `plugins/` folder, so you have `plugins/store/main.js`.
3. Start AthenaBot once. It creates `configuration/store.json5` and `configuration/store-lang.json5`, then disables the plugin because there is no license key yet.
4. Open `configuration/store.json5` and paste your key into `LICENSE_KEY`.
5. Restart AthenaBot.

When the license is accepted, the console prints the Store banner. If it is not, the console says why and the plugin stays off:

| Console message                                  | Fix                                                                     |
| ------------------------------------------------ | ----------------------------------------------------------------------- |
| `[store] No license key found in configuration.` | `LICENSE_KEY` is empty.                                                 |
| `[store] License verification failed: ...`       | The key is wrong, revoked or for another product. Check it in a ticket. |
| `Plugin store requires Athena version 2.6.0`     | Update AthenaBot.                                                       |

The license is checked against `api.zerodev.ca` each time AthenaBot starts, so the server needs internet access.

## Channels

Set this channel with AthenaBot's `/setup` command:

| Channel      | What it is for                            |
| ------------ | ----------------------------------------- |
| `store-logs` | A log entry for every completed purchase. |

## Permissions

Commands and buttons use AthenaBot's permission levels from `configuration/permission.json5`, such as `admin`, `staff` or `everyone`. A level also lets in anyone with a higher role. Set the level for each action under `permissions` in `store.json5`.

## Next

Set up at least one payment provider and its webhook, add your products, then post a panel with `/store panel`. See [Payment Providers](/docs/store/providers).
