Alquist Dropship

Dashboard

Build roadmap (from your plan)

Full platform: Sources → Catalog Browser → Staging → Pricing → Publish to Medusa → Orders review → SS dropship → IMS. Hosted on DS1621+ Docker as a web app.

  1. Medusa on NAS Docker (deploy/synology)
  2. This Dropship app against live Medusa
  3. Sports South catalog browser → Staging only
  4. Pricing, publish, orders, tax/IMS, marketing, RBAC…

Connection log

Specification

Modules A–P

Module A

Sources

Connect Sports South · pull catalog · keep qty current.

  1. 1 · Connect Save SS credentials and test the inventory API.
  2. 2 · Catalog Pull products — brand deep-pull when a brand looks thin.
  3. 3 · Stock + publish Inventory refresh · Ready products go live on schedule (or Send).

Sports South

Primary warehouse · catalog · dropship

Configure below

Lipsey’s

Later

Second source when SS is live

Other

Planned

Bill Hicks, RSR, custom feeds

1 · Credentials

Saved on this server only (data/)

Test: 99994 / 99994 / 12345 / 99994

2 · Catalog pull

Products into local cache → Catalog Browser

General pull

Shallow pulls miss high item #s — brand may look incomplete.

Brand deep-pull

Prefer this for Streamlight etc. Scans until SS item count is met. Merges into cache.

Coverage: local count vs SS warehouse count.

3 · Inventory

Qty / cost for Staging + website stock

Refresh now

No inventory sync yet.

Auto schedule

While Dropship is running · min 15 min · uses mode above

Schedule off.

4 · Ready → website

Mark Ready only queues products. Schedule (or Send) puts them live.

Auto-publish Ready products

While Dropship is running · pushes Staging Ready items to Medusa (same as Send to website).

Publish schedule off.

Live SS when ready · Lipsey’s later · multi-offer on orders after that.

Module B

Catalog Browser

Category and/or brand · e.g. Ammo first, then brand/sort inside · Staging only (never auto-publish) · Not CA-filtered · deeper pull under Sources if a brand looks thin

Pick category/brand → Load. Quick: Ammo · Firearms · Mags · Optics.

0 selected
Item Title Model Series Brand Category Qty Cost MAP Mar% Stk

Module C

Staging · Product Hub

Draft → Mark Ready (queues only) → schedule or Send to website → live. Ready alone does not go live.

Brand → category · status · ship · website · stock

0 drafts selected
Safety defaults
Status Item Title Brand Category OH Web Ship Cost Sell Mar%

Module D

Pricing

Markup on dealer cost. Save rules stores settings. Use Apply brands, Apply categories, or Apply all to reprice Staging.

  1. 1 · Save rules Stores default, brand, and category markups (no reprice yet).
  2. 2 · Apply scope Apply brands, categories, or all unlocked Staging products.
  3. 3 · Import + Ready New imports and Mark Ready still use the saved rules.

Sell = cost × (1 + markup%) · then round up to .99 · MAP products use MAP as sell · never below cost · edit one product anytime in Staging

Default markup

Used for most products

Example

Cost $100 → Sell $110.00

≈ 9.1% margin on sell

When sell is set Import · Ready

Recommended: leave both on

Guards MAP · Cost · .99 · Locks

Safety rails (recommended on)

Brand overrides

Highest priority · wins over category & default

No brand overrides — everything uses default (or category).

Category overrides

Used when no brand rule matches

No category overrides.

Module E

Categories

Clean shop tree · Sports South maps in automatically · Apply writes categories onto Staging · Sync to website creates Medusa categories so the storefront nav and PLPs work.

Last website sync: never

Shop categories

SS categories

Mapped

In staging

Shop tree

What customers browse

    Edit category

    Select a category in the tree

    Sports South → shop

    Distributor name maps to your tree

    Sports South # Shop category

    Module F

    Facet Manager

    Filterable attributes for the warehouse and (later) storefront: Caliber, Capacity, Color, Action, Platform, etc.

    Name Key Options Usage

    Edit facet

    Module G

    SEO Manager

    Search scores · live SERP preview · smart autofill · duplicate handle detection — optimize before you publish.

    Catalog SEO health

    Loading…

    Site SEO settings Brand name · store URL · title patterns

    Tokens: {title} {brand} {category} {name} {site}

    Staging products

    Sorted by score · fix lowest first

    Select a product

    Click a row to audit & edit SEO

    Choose a product from the list. You’ll get a live Google-style preview, character guidance, and a fix checklist.

    Module H

    Shipping & Compliance

    FFL · ship class · state packs · customer rates. Auto-tag Staging from category, then test ship-to state.

    Staging compliance

    Gaps first · fix with Auto-tag or edit product

    Item Kind FFL FFL only Class Packs Issues

    State restriction packs

    Attach to products in Staging. Checkout blocks ship-to states in the pack.

    Pack States
    Add / edit pack

    Customer rates

    Simple flat rates (covers SS cost)

    SS ref: acc/ammo/FFL premium ≈ $10.95

    Local pickup

    Nearby customers · ship to store · they pick up

    Pickup at Alquist Arms On checkout

    • Shopper chooses Pickup at Alquist Arms (free).
    • You dropship SS to this store — not their house.
    • They get tracking and must wait until it arrives before coming in (consent required).

    Medusa code: alquist_pickup · Save also updates the store location shown at checkout when Medusa is reachable.

    Ship-to tester

    Uses real Staging tags

    Brand blocklist No import if hard-blocked

    Module J

    Orders · Dropship review

    Review → Push to SSPull tracking (SS invoices, hourly). Marks Medusa shipped when tracking appears. Nothing auto-ships on its own.

    Filter by status · dropship · pushed

    # Status Customer Items Total Created Dropship SS / PO Tracking

    Module P

    Technical foundation

    Host

    • Target: Synology DS1621+ · Docker · reverse proxy
    • Stack files: deploy/synology/
    • This app: web UI on port 4200 (local) / container alquist-dropship
    • Medusa: port 9000 · customer shop separate storefront

    Medusa link

    Medusa admin (required to send products to website)

    Dropship logs into Medusa Admin to create/update products on the live shop. Same account you use at http://localhost:9000/app.