GunBroker Integration
Connect your FirearmCart store with GunBroker to list products on the marketplace and import orders back to your store.
Features
| Feature | Description |
|---|---|
| Product listings | List products as fixed price or auction |
| Import existing listings | Link listings you already had on GunBroker to your catalog by SKU or UPC |
| Order import | Import GunBroker orders into FirearmCart |
| Order sync | Keep order statuses synchronized, automatically every 30 minutes |
| Delist when sold out | Automatically end a product’s listings when it runs out of stock (opt-in) |
| Auto-relist | Automatically relist items that go unsold (opt-in, webhook-driven) |
| Category browsing | Browse GunBroker categories when creating listings |
| Webhook support | Receive real-time notifications from GunBroker |
Prerequisites
Before connecting, you need:
- Active GunBroker seller account
- GunBroker Developer Key (Dev Key)
- GunBroker username and password
- Valid FFL license (for firearms listings)
Getting API Credentials
- Log into your GunBroker account
- Request a Developer Key from GunBroker
- Note your GunBroker username and password
Setting Up
- Navigate to Plugins > Marketplace
- Find GunBroker
- Click Activate
- Enter your credentials:
- Dev Key — Your GunBroker Developer Key
- Username — Your GunBroker account username
- Password — Your GunBroker account password
- Enable Sandbox Mode — Tick for testing (clear for live listings)
- Click Activate Plugin
Your credentials are verified against GunBroker before the plugin activates — a failure blocks activation with “Unable to authenticate with GunBroker. Please verify your Dev Key, username, and password.” Once active, a GunBroker entry appears under Plugins in the sidebar.
Webhooks
GunBroker pushes real-time notifications (item sold, item unsold, winning bid, order status update, listing failed) to FirearmCart. GunBroker has no API for managing webhook subscriptions, so this is a one-time manual step:
- Open Plugins > GunBroker > Settings and find the Connection card
- Copy the callback URL and event list shown there
- Add them in GunBroker under Selling → Webhooks
Without webhooks configured, listing status changes and auto-relist rely on the scheduled polling jobs instead.
Creating Listings
Single Listing
- Navigate to Plugins > GunBroker
- Click the Create Listing tab
- Search for and select a product from your catalog
- Configure the listing:
| Setting | Description |
|---|---|
| Category | GunBroker category — drilled down through Subcategory selects until you reach a leaf |
| Listing Type | Fixed Price or Auction |
| Price / Starting Bid | List price for fixed price, or opening bid for auctions |
| Buy Now Price (optional) | Instant purchase price |
| Reserve Price (optional) | Minimum acceptable price — auctions only |
| Quantity | Number of items available |
| Duration (days) | 30 / 60 / 90 for fixed price; 1 / 3 / 5 / 7 / 14 for auctions |
| Offer free shipping (seller pays) | Advertise the listing as free shipping |
| Auto-relist unsold items | Relist automatically when the item goes unsold |
| Description | Rich-text listing description |
| Premium Features (optional) | Subtitle, Colored Title, Scheduled Start and other GunBroker paid upgrades |
- Click Create Listing
Tip: The listing is created in the background. Refresh the listings tab to see the updated status.
Importing Existing Listings
If you already had listings on GunBroker before connecting (for example, listings you created directly on GunBroker.com), use Import existing on the Listings tab to link them to your FirearmCart catalog.
The import runs in the background, so it won’t time out on large accounts — matched listings appear in the table live as they’re linked, and you’ll get a notification when it finishes.
The importer scans your active GunBroker listings and matches each one against a single key, chosen by the Match products by setting on the Settings tab:
- SKU — the listing’s SKU matched against your product SKUs (case-insensitive, whitespace ignored).
- UPC — the listing’s UPC matched against your product barcodes (digits only).
There is deliberately no fallback to the other key: if the chosen key doesn’t match, the listing is reported as unmatched rather than guessed at. (Manufacturer part number is used as an extra fallback only when auto-creation is enabled.)
When a listing is matched, it’s linked to the product without creating a duplicate listing on GunBroker — it adopts the existing GunBroker item. Once linked:
- The listing appears on the Listings tab and stays status-synced.
- If you’ve enabled Delist when sold out, the listing is ended automatically when the product runs out of stock.
- Sales from that listing import as orders (previously, sales from unlinked listings were skipped).
Why this matters: Until a GunBroker listing is linked to a product, FirearmCart can’t recognize its sales — so importing your existing listings is the step that brings their orders into your store.
What gets skipped
| Outcome | What happens |
|---|---|
| Unmatched | No product matches on the configured key. The listing is left untouched and reported so you can add the SKU/UPC to the product (or create it) and re-run the import. |
| Ambiguous | The key matches more than one product. The importer won’t guess — it skips and reports the candidates so you can resolve the duplicate. |
| Already linked | The listing already has a local record (yours or from a previous import). Left as-is. |
Tip: Re-running the import is safe — already-linked listings are skipped, so you can fix unmatched products and import again to pick up the rest.
Managing Listings
Listings Tab
View and manage all your GunBroker listings:
- Search by product name or GunBroker item ID
- Filter by listing status
- Refresh listing statuses from GunBroker
- End active listings
- Relist expired or ended listings
Listing Statuses
| Status | Description |
|---|---|
| Pending | Listing is being created |
| Scheduled | Created with a scheduled start that hasn’t arrived yet |
| Active | Listed and visible on GunBroker |
| Sold | Item has been sold |
| Unsold | Listing ran its course without selling |
| Ended | Listing was ended, manually or by the delist-when-sold-out rule |
| Failed | Listing creation failed |
The status filter also has a Not imported option — GunBroker listings that are live on your account but have no local record yet.
Orders
Syncing Orders
Orders sync automatically every 30 minutes. To pull them in immediately:
- Navigate to Plugins > GunBroker
- Click the Orders tab
- Click Sync Orders to import new orders from GunBroker
Orders are imported into FirearmCart with buyer details, pricing, and FFL information (when applicable). Only orders GunBroker reports as paid, completed or shipped are imported, and only for listings linked to a product.
Order Details
Imported orders include:
| Field | Description |
|---|---|
| GunBroker Order ID | Original order number from GunBroker |
| Buyer info | Buyer name and contact details |
| Item details | GunBroker item ID and pricing |
| FFL information | Buyer’s FFL details for firearms transfers |
| Shipping address | Delivery address |
| Status | Current order status |
Settings
The Settings tab has several cards.
Default Listing Settings
| Setting | Description |
|---|---|
| Default Listing Type | Fixed Price (default) or Auction |
| Default Duration (days) | Default listing duration — 7 by default |
| Auto-Relist Unsold Items | Default auto-relist preference for new listings — off by default |
| Auto-Delist When Product Sells Out | Off by default. When a tracked product hits zero stock from an order, end any active GunBroker listings for it and notify the team. Prevents overselling. |
| Accepted Payment Methods | Which payment methods your listings advertise |
Product Matching
| Setting | Description |
|---|---|
| Match products by | SKU or UPC — the single key the “Import existing” matcher uses |
Customer Emails
Control whether imported GunBroker orders send your store’s order confirmation and tracking emails to the buyer.
Connection
Read-only. Shows the connected account and the webhook callback URL to paste into GunBroker. Credentials are changed from the marketplace, not here.
Product Auto-Creation
When you import existing listings, some may not match any product in your FirearmCart catalog (a different SKU, no UPC, or simply never added). The Product Auto-Creation card on the Settings tab controls what happens to those:
| Setting | Description |
|---|---|
| Auto-create missing products | Off by default. When on, the import builds a product from any listing that matches no catalog product by SKU, UPC, or manufacturer part number. Existing products are never duplicated — a listing that already matches a product links to that product instead. Turning this on also enables part-number fallback matching, which is otherwise off. |
| New product status | Draft (recommended) or Active. Draft keeps the new products out of your storefront until you review them — sellers sometimes list things on GunBroker that aren’t real catalog products. |
| Import listing images | On by default. Pulls the GunBroker listing’s photos onto the new product. |
| Lock suppliers (standalone product) | Off by default. Keeps auto-created products from being adopted by distributor catalog syncs. |
Auto-created products carry the listing’s title, price, SKU, UPC (as the barcode), and specifications (caliber, manufacturer, part number, round count). After enabling, run Import existing on the Listings tab to create + link them so their orders import.
Tip: Leave New product status on Draft the first time. New products are created hidden from your storefront, so you can review them on the Products page — publish the ones you want and delete any that aren’t real catalog items — before anything goes live.
Troubleshooting
Connection Failed
Symptoms: Activation is refused with “Unable to authenticate with GunBroker”
Solutions:
- Verify your Dev Key, username, and password are correct
- Ensure your GunBroker account is active
- Check if sandbox mode matches your credentials (sandbox credentials won’t work in production and vice versa)
Listing Creation Failed
Symptoms: Listing shows “Failed” status
Solutions:
- Check that the product has all required fields (title, description, price)
- Verify the selected GunBroker category is valid
- Ensure your account has seller privileges
- Review the listing details for any validation errors
Orders Not Syncing
Symptoms: GunBroker orders not appearing in FirearmCart
Solutions:
- Click Sync Orders to manually trigger a sync
- Verify the plugin connection is active
- Check that orders exist in your GunBroker seller account
- Confirm the listing that sold is linked to a product — sales from unlinked listings are skipped. Run Import existing on the Listings tab to link them.
Related Documentation
- Orders - Order management
- Products - Product catalog
- FFL Compliance - FFL requirements for firearms sales
- Webhooks - Webhook event notifications

