ARMANOS

Solutions

E-commerce

You sell on several marketplaces, in several countries, from one laptop. The E-commerce scenario gives each seller account its own profile, its own exit country and its own daily ceiling, and tells you which one you are looking at.
7
Platforms this scenario names
120
Pages a day at full pace
7 days
Warm-up ramp
5
Per-action ceilings

Several stores, several countries, one laptop

A seller rarely has one account. There is an Amazon account for the United States, an eBay account opened years ago, an Etsy shop aimed at the United Kingdom, and two Shopify admin panels you keep for clients. All of them open on the same computer, usually in the same browser.

A marketplace does not see an account when you log in. It sees a browser and a connection. In one plain browser profile those are identical for every store you run, and the overlap is the thing platforms are built to notice. Their own seller policies say plainly that linked accounts are treated as one seller.

Incognito mode does not solve this. It forgets the session at the end and presents the same machine while it lasts. A VPN changes the address and leaves the browser untouched. A virtual machine per store does work, and costs you a machine per store, plus the memory to keep three of them open at once.

ARMANOS puts each store in its own profile. A profile is a folder of browsing data plus a description of a device, and both belong to that one store. Launching two profiles at once opens two browsers that share nothing.

  • Cookies and storage

    One jar in a plain browser. The session of one marketplace sits next to the session of the account beside it.

  • Saved logins

    One password store holding every account you have ever typed into that browser.

  • Fingerprint

    One screen, one graphics card, one font list, one timezone, offered to every site you open.

  • Exit address

    One IP, usually the one your other accounts have already been seen from.

  • History and open tabs

    The pages one account visits land in the same history as the next one.

Choosing E-commerce fills the profile in for you

The scenario is chosen once, when you create the profile. Its id in the code is shopping, and it lives in packages/shared/src/index.js, so the desktop app, the server and this website read one set of numbers rather than three.

It decides the address the profile opens on, which scripts are injected into pages, which tracker list the network layer loads, whether links are cleaned of tracking parameters, and what a safe working day looks like for a seller.

The five per-action ceilings are the part that is specific to selling. They ramp over the first week together with the page counter, so a profile you made this morning shows smaller numbers than the same profile will show next Monday.

  • Start page

    https://www.amazon.com, unless the profile has a start address of its own. Your address always wins.

  • Injected scripts

    fingerprint and stealth. The tracker and link work happens at the network layer, not in the page.

  • Tracker list

    general: 31 domains cancelled at the request level, including analytics, session recorders and crash reporters.

  • Link cleaning

    On. 40 tracking parameters are stripped from URLs, among them utm_source, fbclid, gclid, ttclid and _ga.

  • Daily page ceiling

    120 at full pace, reached on day seven.

  • Fingerprint template

    Not forced. You choose one of the five: macOS, Windows, Linux, Android phone, Android tablet.

ActionDay 1Day 7 and after
New listings210
Listing edits840
Buyer replies630
Review requests840
Account switches12

The seven platforms this scenario names

The scenario carries a list of platforms. It is what the defaults were chosen against, and it is what the app shows you when you pick the scenario in the create window.

These are names, not integrations. ARMANOS does not connect to any of the seven through an API, does not read your orders, does not publish listings and does not touch your payouts. A profile is a browser with a fixed identity, and everything you do inside it you do yourself or with your own scripts.

Across the five scenarios the app names twenty platforms in total. Seven of them sit here. The other four scenarios cover social media, ad accounts, freelance marketplaces and plain private browsing.

PlatformKindWhat one profile usually carries
AmazonMarketplaceOne seller login, its marketplace country, its payout account
eBayMarketplaceOne seller account and the feedback attached to it
EtsyMarketplaceOne shop, its listings and its buyer conversations
WalmartMarketplaceOne seller account for one country
ShopifyStore platformOne store admin, or one client store you manage
WooCommerceStore platformOne WordPress admin standing behind one store
BigCommerceStore platformOne store control panel

Setting up one store, step by step

This is the whole path for a single account, from an empty list to a profile you can work in. It takes a few minutes, and the week that follows is waiting rather than work.

Two of these steps are checks rather than settings. The proxy check and the start page exist so you find out that something is wrong before an account does.

  1. 1

    Create the profile and name it after the store

    Etsy, home goods, UK tells you more in a list of fifty than Etsy 3. The name is what you will read at two in the morning.

  2. 2

    Pick E-commerce as the scenario

    This is the moment the ceilings, the start page, the tracker list and the link cleaning are attached. You can change it later on the profile.

  3. 3

    Pick the device template

    One of five: macOS, Windows, Linux, Android phone, Android tablet. Pick the machine that seller would plausibly work from, then leave it alone forever.

  4. 4

    Attach a proxy from the right country

    A shop aimed at Germany wants a German exit. Take the proxy from the library, or paste a line in host:port:user:pass form and let the app parse it.

  5. 5

    Press Check and let the country be measured

    The check goes out through the same path the launch will use, including the authentication bridge and the SSH tunnel. The country that comes back is saved on the profile.

  6. 6

    Let the country set the clock and the languages

    A German exit produces Europe/Berlin and de-DE, de, en. In a country with several zones the profile keeps one of them, chosen from its own id, so it is the same on every launch and on every machine you sign in from.

  7. 7

    Launch and read the start page

    The first tab is served by the app itself from 127.0.0.1 under a one-time token. It names the exit IP, the country and city, the profile, the engine and the fingerprint.

  8. 8

    Warm the profile up before the first login

    See the next section, then log in and keep the day inside the ceilings.

The ARMANOS profile start page showing the exit IP with country and city, a profile card with name, group, scenario and proxy, an engine card, and a fingerprint card listing user agent, screen, languages, timezone, cores, memory and graphics card.
The first tab of every launch. If the address shown here equals your own address, the page says so in red instead of staying quiet.

The first week is a ramp, not a switch

A new profile does not get the full ceiling on day one. The ramp is a fixed curve of seven fractions, 0.2, 0.35, 0.5, 0.65, 0.8, 0.9 and 1.0, applied to both the page count and every action ceiling. Day eight and everything after it sit at the full number.

Warming up also means giving the profile something to remember. A browser created five minutes ago, with an empty cookie jar, no history and nothing cached, is unusual by itself. The cookie robot browses ordinary public sites in that profile first: 30 addresses in six categories, one of them a shopping group of eBay, Etsy, AliExpress, IKEA and Zalando. Nothing in the pool requires a login, because a robot landing on a sign-in wall produces failed sessions instead of history.

Order and selection are random per profile, so two profiles never walk the same path in the same order. The dwell on each page varies between 0.6 and 1.4 of the seconds you asked for, and each site gets six steps: open, settle, scroll, pause, scroll, pause. A fixed rhythm would be a pattern of its own.

DayShare of the ceilingPagesNew listingsBuyer replies
Day 120%2426
Day 235%42411
Day 350%60515
Day 465%78720
Day 580%96824
Day 690%108927
Day 7100%1201030

Fifty stores start as a spreadsheet

Your accounts already live in a table somewhere. The import reads that table instead of asking you to retype it. Column names are matched by meaning, not by an exact string: Name, Название, profile name and имя профиля all reach the same field, in about twenty languages.

The import runs in two steps on purpose. The file is read and shown first: which column became which field, which columns were not recognised, a sample of the first five profiles, and the line numbers of rows that could not be read. Nothing is created until you have looked. Two hundred profiles carrying someone else's proxy are worse than two hundred profiles made by hand.

Groups arrive as names and become real groups, matched case insensitively, so Etsy and etsy do not become two folders. Proxies from the file join the proxy library, so an imported profile gets the same rotation and the same checks a hand made one gets. A one-time-code key in the file is validated and stored on the profile; a key that cannot produce codes is reported rather than saved, because wrong codes lock accounts out.

Then the list works in bulk. Select rows and you get launch, stop, move to group, assign proxy, export and delete. Bulk launch spaces the logins randomly between 3 and 14 seconds, because fifty accounts entering in one minute at even intervals reads as one script behind all of them. Only one bulk run happens at a time, and when the open-browser limit is reached the queue waits for a free slot instead of reporting fifty failures. That limit is computed from your memory: three gigabytes for the system, one per browser, clamped between 4 and 32, and you can override it by hand.

Name
Etsy, home goods, UK
Group
Etsy
Proxy
http://198.51.100.10:8080:user:password
Template
Windows
2FA
JBSWY3DPEHPK3PXP
Tags
etsy, uk
Notes
Payout account 3

The example file the app writes for you carries exactly these seven columns. Add an eighth named Scenario with the value shopping in every row, or the imported profiles land on Privacy and you set the scenario yourself afterwards.

The ARMANOS profile list with rows for separate accounts, each showing its group, its proxy, its status and a safe pace bar.
Fifty rows behave like fifty rows: filter by group, select, launch. The pace bar sits on every row.

What the safe pace counts, and what it does not

The counter counts top-level navigations. Each profile window reports a page load to the app over an internal channel, and the app adds it to that profile's number for today. The count lives in pace.json, is written at most once a second, survives a relaunch on the same day and resets when the calendar date changes.

The bar turns amber at 80 percent of today's ceiling and red at 100 percent, and it never blocks anything. Under it you get either the warm-up day out of seven, or the age of the profile in days. That is the age of the ARMANOS profile, not of the seller account behind it, because the app has no way to know when the account was opened.

The five action ceilings are numbers on the screen, ramped by the same curve. Nothing in the app counts a listing, an edit, a buyer reply, a review request or an account switch. A browser cannot tell a page where you published a listing from a page where you read one. So those five are a target you hold yourself to, and the honest label under the bar says pages.

  • Counted

    Pages opened in the profile today, per profile, resetting daily.

  • Not counted

    Listings, edits, buyer replies, review requests, account switches.

  • Where the numbers come from

    The scenario record in the shared package, ramped by account age. They are our recommendation, not a published platform rule.

  • What happens at the ceiling

    The bar goes red. Nothing closes, nothing is refused, nothing is reported anywhere.

The counter is guidance, not a gate

No marketplace publishes its thresholds, and the ones that exist change without notice. A ceiling that is generous today can be strict next quarter. Treat 120 pages and 10 listings as a starting discipline for a new account, not as a line you are safe on the correct side of.

Keep the payment identity apart from the account identity

Accounts get linked through the payment method as easily as through a cookie. One card behind ten seller accounts is one identifier behind ten seller accounts, and no browser setting hides that. The same is true of one payout bank account, one legal name and one warehouse address.

What the app does keep apart is everything that lives inside the browser. Each profile gets its own session partition, named persist:armanos-profile plus the profile id, and on the ARMANOS Browser build it also gets its own engine directory under fork-profiles. Cookies, local storage, saved cards in the browser's own autofill and service workers belong to one profile and never reach another one. The proxy is per profile too, and WebRTC is set to disable-non-proxied-udp so a media connection does not slip out around it.

The rest is your discipline, and the app gives you a place to write it down. The Notes field and the tags travel with the profile, including through export and through sync, so which payout account belongs to which store is recorded next to the store rather than in your head. The account password and the proxy password go into the operating system keychain when it is available, and the profile file itself is written readable by its owner alone.

  • Session

    persist:armanos-profile-<profile id>. Cookies, storage and browser autofill belong to one profile.

  • Engine directory

    The ARMANOS Browser build runs with its own user-data-dir per profile, under fork-profiles/<profile id>.

  • Exit

    One proxy per profile, measured through the same path the launch uses, with the country remembered on the profile.

  • Real address

    WebRTC policy disable-non-proxied-udp, so a call does not travel around the proxy.

  • Secrets

    Account and proxy passwords go into the system keychain when the system offers one. The files are owner readable only.

  • The card itself

    Yours. Nothing here checks whether two profiles share a payout account, and nothing here should pretend to.

What this does not do

  • It does not bring back a suspended seller account. A fresh profile is a fresh browser, not a fresh company, and marketplaces verify documents, bank accounts and addresses that no browser touches.
  • It does not count your selling actions. The five ceilings are numbers on screen. The only thing measured is pages opened in the profile today.
  • The numbers are our recommendation, not a platform rule. No marketplace publishes its thresholds, and they change.
  • There is no integration with any of the seven platforms. No API connection, no order reading, no listing publication. The scenario sets defaults and ceilings, nothing more.
  • The spreadsheet import does not set the scenario unless your file has a column for it. The example file the app writes has no such column, so imported rows arrive as Privacy profiles until you change them.
  • Payment separation is your discipline. The app isolates sessions, proxies and stored passwords. It does not issue cards and does not warn you that two profiles share a payout account.

How to check

Every number on this page comes out of a file you can open, and most of them are guarded by a stand that executes the real product code.

The E-commerce scenario is exactly these settings and ceilings
packages/shared/src/index.js (SCENARIOS.shopping) · apps/desktop/test/слитый-сценарий.js
The ceilings ramp over seven days, and a ramped ceiling never rounds down to zero
packages/shared/src/index.js (WARMUP_RAMP, warmupLimit) · apps/desktop/src/main/main.js (paceInfoFor, actionLimitsFor)
The counter counts pages, not listings, and resets daily
apps/desktop/src/lib/pace.js · apps/desktop/src/main/browser-preload.js
A spreadsheet becomes profiles, groups and proxy library entries
apps/desktop/src/lib/profileImport.js · apps/desktop/test/csv-import.js · apps/desktop/test/csv-import-groups.js
Bulk launch spaces logins randomly between 3 and 14 seconds
apps/desktop/src/manager/renderer.js · apps/desktop/test/запуск-не-залпом.js · apps/desktop/test/очередь-запуска.js
The proxy country sets the timezone and the language stack, and the start page says so when the exit is your own address
apps/desktop/src/lib/exitGeo.js · apps/desktop/test/exit-geo.js · apps/desktop/test/leak-verdict.js

Two profiles cost nothing

The Free plan gives you two profiles, every scenario and a proxy per profile. That is enough to run one real store next to one test and see whether the pace fits how you work.