> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shoppex.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Customer accounts

> The account inside your store at /dashboard, where buyers find their orders, keys, subscriptions, rewards and support.

Every Shoppex store has a customer account at `/dashboard` on your store's address, for example `yourshop.shoppex.io/dashboard` or `yourdomain.com/dashboard`. Buyers open it from the account link in your store's header. They sign in with an email code and see everything they bought from you: orders, keys, files, subscriptions, store credit, points, referral earnings and support tickets.

You do not build or switch on the account. It comes with the store and uses your theme's colors and fonts.

![The account overview: three notices that need the buyer, the latest purchase with its license key and file, and the balance, points and support cards on the right](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/overview.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=c05bc6ec09219c443ab40b7326fea5e5)

## Sign-in

Buyers enter their email and get a 6-digit code. There is no password to forget.

![The sign-in card after the email step: six code cells, a Sign in button, and a timer to send a new code](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/sign-in-code.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=bfcd977647f63344ee206bb5c41d3da1)

* The code email also has an **Open my account** button. It opens the account with the code already filled in; the buyer still presses **Sign in**. A mail scanner that opens the link first cannot use up the code.
* A wrong code, an expired code and too many tries each get their own message. After too many tries the card says how long to wait.
* The buyer signs in with the email they used at checkout. That is how the account finds their orders.
* To let buyers sign in with Discord as well, turn on **Allow Discord sign-in** on **Channels → Discord**. A buyer whose Discord is not connected yet signs in with their email once and connects Discord in **Settings**.

## What buyers see

The side navigation groups the account into Purchases, Benefits, Support and Settings. On a phone, the same sections open from a menu, and each page fills the screen.

### Overview

The first screen after sign-in. At the top, everything that needs the buyer: an order waiting for payment (**Pay now**), a subscription on hold (**Pay and resume**), a support ticket you answered (**Open**). Below that, the latest purchase with its keys, files and links, then the store balance, points and the latest ticket.

The **Orders**, **Subscriptions** and **Support** entries in the navigation carry a badge while something there needs the buyer.

### Orders

Every order with its status, searchable by order ID or product. An order opens with its items, what was delivered, and the action that fits its state: **Pay now** on an unpaid order, **Buy again** on an expired one, **Contact shop** on a disputed one.

### Downloads

Keys and files from completed orders, grouped by order, with **All**, **Keys** and **Files** filters.

![Downloads grouped by order: a license key with Copy and Unbind device, a PDF with Download, a Discord link, and a second order with a license that expires](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/downloads.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=3f529e16968ab3d658a447fdcb01a5bc)

* A key locked to a device has **Unbind device**, so the buyer can move it to a new PC without a ticket.
* A license that expires has **Renew**. Renewing is a purchase, so it goes through checkout.
* Files show how many downloads are left.

### Subscriptions

Every plan with its state: active, in a trial, paused, on hold, or ending on a date. A plan opens with its price, next billing date, payment method and billing history. The buttons follow your rules in **Settings › Store › Subscriptions**:

* **Change plan**, with the exact amount before the buyer confirms.
* **Pause** and **Resume**, within your pause limits.
* **Pay and resume** on a plan that is on hold.
* **Cancel plan**, and **Undo cancel** until the period ends.
* **Update card** for card subscriptions. It opens a secure Shoppex page.

![The Subscriptions page: five plans in a list, and the selected plan on hold with the notice Payment needed to keep this plan and a Pay and resume button](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/subscription-hold.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=0cface66d871a812a3123a558925c8fe)

The pause dialog shows the buyer exactly what happens: the dates without payment, when billing starts again and at what price, and how many pauses they have left this year.

![The pause dialog on an active plan: length choices of 1 week, 2 weeks and 1 month, an optional reason, and the dates and price after the pause](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/subscription-pause.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=454a97f11e8660fc0c52eb743519cfc1)

What each action does, and the limits you set, are on [Subscriptions](https://docs.shoppex.io/selling/subscriptions.md).

### Rewards and saved items

**Rewards** shows the buyer's points, what they are worth in store credit, and the reward codes they earned. Buyers redeem points into store credit here. **Saved items** lists the products they saved in your store.

### Referrals

Buyers in your affiliate program see their earnings (available, pending, withdrawn), their referral links with clicks and sales, and their commission rates. They can ask for a new link.

![The Referrals page: available, pending and withdrawn earnings, a Request payout row, and the buyer's referral links with clicks, sales and revenue](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/referrals.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=432d78bb7178453a93582fa38322d257)

**Request payout** opens the hosted payout page (see below).

### Support

The buyer's tickets, with whose turn it is: **Shop replied** or **Waiting for the shop**. Buyers reply in the thread, attach images, and open a new ticket with an order already picked.

### Settings

* Name and profile.
* **Order emails**: which order updates they get. The delivery email is always sent.
* **Marketing emails**: news and offers from your shop.
* **Signed in devices**: every device that can open the account, with sign-out per device.
* **Discord**: connect or disconnect their Discord account.
* **Sign out**.

### Wholesale

When you run a reseller program, buyers who are resellers, or who can apply, get a Wholesale section with reseller top-ups and tools. See [Resellers](https://docs.shoppex.io/customers/resellers.md).

## Every theme shows the same account

All visual themes draw the same account, in their own colors and fonts. A buyer finds the same sections and buttons in every theme, and a change of theme does not move them.

![The same account overview in the Starlight theme, with Starlight's font and magenta accent](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/overview-starlight.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=420e0f6560bb2a1c02426292d779823a)

Code storefronts serve their own account from the theme's source. See [Customer accounts in code storefronts](https://docs.shoppex.io/storefront/code-storefront-accounts.md). Headless stores build it with the SDK: see [Headless customer accounts](https://docs.shoppex.io/developers/headless/customer-accounts.md).

## On a phone

On a phone, the navigation opens from the menu, the notices stack, and each plan or order opens as its own screen with a way back.

![The account overview on a phone: the notices stacked full width above the latest purchase](https://mintcdn.com/shoppex/8rARl2zaiwsM9pvh/images/customer-accounts/phone-overview.png?fit=max\&auto=format\&n=8rARl2zaiwsM9pvh\&q=85\&s=06f83aa2628dfb781f3d9198370f2755)

## Shops without a live storefront

The account works even when your store does not:

* **Storefront not published yet**: the shop is open but has no live theme (no theme picked, hidden, setup not finished, or a code storefront without a published build). `/dashboard` still serves the account, so buyers can sign in and find their orders. The other store pages show that the store is not published yet.
* **Hosted Storefront off**: you sell on your own site and turned off **Hosted Storefront** in **Settings › Store › General**, with a **Redirect Visitors To** address. Store pages on your Shoppex address send visitors to that address. `/dashboard` still serves the account, and its way back leads to your site.

With **Hosted Storefront** off and no redirect address, every page on the Shoppex address, the account included, answers Not found.

## Sign a buyer in from your own app

Your app, support desk or bot can send a buyer straight into their account without an email code. It creates a portal session with the Developer API and sends the buyer the link. The API key needs the **Log buyers into the portal** scope, which only the store owner can give.

* The link works once and expires after 15 minutes. The session it opens lasts 24 hours.
* An optional return address puts a **Back to** link at the top of the account. It must be an `https` address on your store's own domains: your `myshoppex.io` address or a custom domain you verified.
* A session from a link can read the account, but cannot move money, change how the buyer signs in, or see or sign out the buyer's devices. For those, the buyer signs in with their email code.

The request, the sections a link can open and every limit are on [Portal sessions](https://docs.shoppex.io/developers/portal-sessions.md).

## Hosted buyer pages

Some actions move money or hand out credentials. These open on a secure page on Shoppex's checkout host instead of inside your store, and ask the buyer for an email code first. The account links to them, and each page has a way back to the account.

| Page | Opened from | What the buyer does |
| - | - | - |
| **Payouts** | **Request payout** in Referrals | Withdraws referral earnings as store credit at your shop (right away) or as a crypto payout you send from your wallet. Shows a history of payouts and conversions. |
| **Top up** | **Top up** on the balance card | Adds money to their store balance, with your top-up bonus if one applies. They pay on the next page. |
| **Update card** | **Update card** on a card subscription | Changes the card a subscription is charged to. |
| **Reseller tools** | The Wholesale section | Creates keys and delivery URLs for resellers. |

The payout page checks the amount, the wallet address and the network before it sends a request. A request that was already sent is never sent twice.

## What you configure

The account reads your settings. There is no separate account setup.

| To change | Go to |
| - | - |
| What buyers can do with subscriptions: change plan, pause, pause limits | **Settings › Store › Subscriptions** |
| Store credit, and whether buyers can top up | **Settings › Payments › Store Credit** (**Allow Top-Ups**) |
| Points and reward codes | **Loyalty & Rewards** |
| The referral program, commission rates and payout options | **Partners › Affiliates** |
| The reseller program | **Partners › Resellers** |
| Discord sign-in | **Channels → Discord** (**Allow Discord sign-in**) |
| The sign-in code email and order emails | [Email templates](https://docs.shoppex.io/selling/email-templates.md) |
| Colors and fonts | Your theme, in the Builder |

Downloads and Subscriptions are always in the navigation. A buyer with nothing there sees a short empty state. Referrals shows up for buyers in your affiliate program, or who can join it by making their first link.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.