
Key takeaways
- Your listings stay on the marketplaces; you move the codes and link offers to inventories.
- Bulk import takes CSV or XLSX with code, unit cost, currency and supplier columns.
- The import checks for duplicates and reports any error row by row.
- Move one channel at a time, starting with your biggest, and check stock with an export.
You move 20,000 offers to Keysender by moving the codes, not the listings. Your offers stay on G2A, Kinguin, Eneba, eBay and your store. You import the codes behind them in bulk, from a CSV or XLSX file, into one inventory per product. Then you connect each marketplace and link its offers to those inventories. Done channel by channel, nothing stops selling while you move.
This guide is for sellers with a large catalog and no appetite for typing it in.
What actually moves when you move 20,000 offers?
Less than you might think. A marketplace offer has two parts: the listing, which the marketplace owns, and the stock behind it, which you own. Keysender does not replace your listings. It holds your stock, counts it once and delivers from it.
| Part | Where it stays or goes |
|---|---|
| Listings, titles, photos, reviews | Stay on each marketplace |
| Codes, keys, licences, files | Move into Keysender inventories |
| Stock count | Kept by Keysender, shared by every channel |
| Prices | Set on each channel; on G2A, Keysender reprices above the floor you set |
| Delivery and dispatch log | Handled by Keysender from day one |
That matters for risk. If a product is linked to the wrong inventory, you change the link; the listing on the marketplace stays where it is, with its reviews and history. Mistakes in a careful move are about stock and links, and the checks below are built to catch them early.
So the move has three jobs: get the codes in, link the offers, switch the channels over. You keep your history and ratings on every marketplace.
How do you get your codes in by CSV or XLSX?
Use Import Inventory in the panel. It takes a CSV or XLSX file with one code per row and columns for the code, the unit cost, the currency and the supplier. The import checks for duplicates and reports any error row by row, so a bad line does not sink the whole file.
A few habits make a large import go well:
- One inventory per product. The same game on G2A and Kinguin is one product, so one inventory. Different editions, regions or gift card values are different products.
- Fill in the cost and supplier columns. They do not set prices, but they give you a record of what each batch cost and where it came from. You will want that when you set floors and when a marketplace asks about supply.
- Split very large files by supplier or by product group. Smaller files are easier to check and to fix.
- Keep the original files. They are your proof of what went in.
Preparing the file
Most of the work in a bulk import happens before you upload. Pull the codes from your supplier files into one sheet per product group. Check each row has a code and that the same code does not appear twice. Fill in the unit cost, currency and supplier for each batch. Save as CSV or XLSX.
| Column | What goes in it |
|---|---|
| Code | The key, code or licence, one per row |
| Unit cost | What you paid for that code |
| Currency | The currency of the unit cost |
| Supplier | Where the batch came from |
The import has more columns than these four; the panel's import screen shows the full set. If the import reports errors, fix those rows in your sheet and import them again. Do not edit around them in the panel, or your file and your stock stop matching.
Naming inventories
At 20,000 offers you will search inventories by name every day. Pick a pattern and keep it: product name, then edition, then region or value. Two people should be able to find the same inventory without asking each other. A clear name also makes linking offers faster, because the right inventory is obvious.
How do you link marketplace offers to inventories?
Connect each marketplace or store under Integrations. For G2A, you paste the Client ID and Secret from G2A's API credentials. For Kinguin, Eneba, eBay and Shopify, you link the seller account or store from the panel. Each integration page has the setup steps.
Then link each product on that channel to the inventory that holds its codes. This is the step that turns many offers into one count. Your G2A offer and your Kinguin offer for the same game point at the same inventory, so a sale on either updates stock on both.
At 20,000 offers, linking is the biggest job in the move. Work through it by best sellers first. The products that sell most every day should be linked and checked first, and the long tail can follow over the next days.
In what order should you move channels?
- Import the codes for your top products.
- Connect your biggest channel and link its top offers.
- Let it run on real orders for a day or two. Read the dispatch log.
- Connect the next channel and link the same products to the same inventories.
- Repeat until every channel is on the shared pool.
- Import and link the long tail.
Two rules keep the move safe. First, while a channel is moving, do not keep a second copy of the same codes on that marketplace. Two places holding the same stock is how overselling starts. Second, keep each integration account's sync stock switch on, so it follows the pool. Our pillar on one stock pool across your marketplaces explains why.
Prices during the move
Leave prices alone while you move. Changing stock and prices at the same time makes it hard to tell what caused a drop in sales. Once a channel runs well on the shared pool, turn to pricing. On G2A, set a floor per offer and Keysender reprices automatically above it. On the other channels, you keep setting prices yourself. Our pillar on automatic repricing on G2A covers how to set floors.
How do you check the move worked?
Do not trust a move you have not counted. After each channel:
- Export the inventory. The export has every code's details, including country code. Compare the count with your import files.
- Pick 20 offers at random on that marketplace and check each shows the stock you expect.
- Read the dispatch log for the first night of orders. Every paid order should show a dispatch.
- Check any order that needed a resend or reissue, and find out why.
The transactions export gives you the same view of sales, so you can compare a day on Keysender with the same day last week.
Can you automate the rest with Make?
If you already run parts of your business through Make (make.com), Keysender has a Make app with triggers, actions and searches. Vendors add it from an invite link in the help center and connect it once with their API key and secret from account settings. Its triggers check for new events on a schedule you set, so treat it as a way to move data between tools, not as part of instant delivery.
Most sellers do not need it for the move itself. The bulk import and the panel cover it.
What does it cost, and who can help?
Importing and linking cost nothing. Keysender charges per dispatch with credits: one credit for one delivery. Every account starts with 20 free credits, enough to test a channel on real orders. Pro starts as low as 6 cents per dispatch, with instant delivery and no subscription. See pricing for the plans.
If you are moving a catalog this size, start with the demo, then plan the order of channels with the team. For the full picture of running every channel from one place, read our pillar on selling digital keys on five marketplaces at scale, and for the day-to-day stock side, our guide to multichannel inventory management.