E-commerce

Marketplace Integrations for Allegro

Selling on Allegro next to your own shop usually means one catalogue kept in two places and a spreadsheet holding them together. The offers, the stock and the orders can live in the same admin as everything else instead.

A second shop nobody meant to run

Nobody decides to keep two catalogues. It happens by accretion: an offer goes up in the seller panel, a price changes in the shop and not on the marketplace, somebody starts a spreadsheet so the two can be compared, and a quarter later that spreadsheet is the only place where both worlds are visible at once.

The difficulty is not that Allegro is hard to use. It is that the marketplace and the shop describe the same products under different identifiers, at prices maintained separately, against a stock number both of them believe they own. Every one of those disagreements is either caught by a person or discovered by a customer.

medusa-allegro is built to retire the spreadsheet. Offers, their stock and the orders they produce are read into the same Medusa admin as the rest of the catalogue, which is also where the conflicts show up.

Matching offers to products, and admitting when it fails

Every Allegro offer carries an external id, the sygnatura, set by the seller. Discovery matches that value against Medusa variant SKUs and stops there. Where a sygnatura matches nothing, or matches something ambiguous, the outcome is a recorded conflict rather than a plausible-looking assumption.

The refusal to guess is the point. A wrong match is not a cosmetic problem: it writes a stock number onto a live offer and books revenue against the wrong product, and both of those are discovered late.

Listing stays where it belongs. The plugin creates no offers and ends none. It reads what is already there.

Three ways to handle price, all of them bounded

Monitor mode writes nothing. It reports how many offers currently sit outside their floor and ceiling, which is frequently the first honest look a seller gets at their own marketplace pricing.

The default mode attaches one price automation command per offer, with the floor and ceiling as the rule's price range, so Allegro's own automation does the moving and does it inside limits you set. The third mode compares the Medusa price against the same bounds and refuses to push anything below the floor or above the ceiling.

What all three share is that the bounds are computed rather than felt. The floor is the gross cost divided by one minus the commission rate, so it lands exactly where net income reaches zero. The ceiling is the SRP. Everything the integration is allowed to do with price happens between those two numbers.

One order, three different people

This is the detail that decides whether the invoice is correct, and it is invisible until it goes wrong. An Allegro checkout form can carry up to three separate identities: the account holder's registration data, which a seller never sees in their own Allegro interface; the delivery recipient the buyer typed in, who might be a colleague, a relative or a parcel locker; and the invoice recipient, which can legitimately name a third party again, such as a company paying for something delivered to somebody else.

Collapsing those three into one is how the wrong name reaches a VAT invoice. The delivery address becomes the shipping address in Medusa and the invoice address becomes the billing address, with the shipping address as the fallback when no invoice address was given, because the person who ordered is not necessarily the person being billed. The tax id is read from the structured company identifiers, taking the PL_NIP entry, with the older flat field kept as a fallback because Allegro still populates it.

Totals and line prices arrive as Allegro calculated them and are never recomputed, and imported orders carry no computed tax lines. What the marketplace charged is what the order says it charged.

Off by default, on by decision

Every writer ships disabled on a fresh install. Nothing touches a live offer because a package was added to a config file, and any writer can be forced off through an environment variable, which is what you want on a staging copy that happens to be pointed at a real account.

Once the read side has proven itself, the writers go on one at a time: stock reconciles every 15 minutes through Allegro's quantity change command, orders drain from the order events endpoint every 20 seconds, and fulfilment status write-back and invoice PDF attachment follow when you are ready for them.

It is one of the plugins we develop in the open, listed alongside the rest at our Medusa plugins, which means you can read exactly what it does before it does anything.

What you get

Your seller account connected, not borrowed

An OAuth 2.0 authorization code flow against your own Allegro account, with a CSRF-protected callback, refresh tokens that rotate, and every token encrypted with AES-256-GCM before it touches the database.

Offer to variant matching you can audit

Each offer's external id, the sygnatura, is matched to a Medusa variant SKU. Anything that does not match cleanly is recorded as a conflict for a person to settle rather than resolved by a guess.

Price bounds instead of blind pushes

A floor and a ceiling per offer, plus three modes to act on them: report only, hand the range to Allegro's own price automation, or push a checked price that is refused outside the range.

Stock reconciled on a schedule

The available quantity in Medusa is reconciled to the offer through Allegro's quantity change command every 15 minutes, so the marketplace stops selling what the warehouse no longer has.

Orders drained into the same order list

Allegro's order events endpoint is read every 20 seconds. Totals and line prices arrive exactly as Allegro calculated them and are never recomputed, and imported orders carry no computed tax lines.

Write-back where it earns its place

Fulfilment status write-back and invoice PDF attachment are supported, each switched on separately once the read side has been trusted for a while.

How we work

  1. 01

    Connect the account and confirm the scopes

    The integration runs against your own Allegro application and your own seller account. First step is proving the connection works and that the token storage and refresh behave the way they should before any data matters.

  2. 02

    Match the catalogue with nothing writing

    Discovery runs and produces two things: the offers that map cleanly to a variant SKU, and the ones that do not. The second list is the real work, and it is worth finishing before anything is allowed to write.

  3. 03

    Start pricing in report-only mode

    Monitor mode writes nothing and tells you how many offers currently sit outside their floor and ceiling. That number is usually the most interesting output of the whole project, and it costs nothing to look at.

  4. 04

    Turn writers on one at a time

    Stock first, then orders, then status write-back. Every writer ships off, so switching them on is a deliberate act, and each one can be forced back off through an environment variable without a deploy.

  5. 05

    Work the conflicts, not the dashboard

    Unmatched offers and unmatched order lines are the ongoing signal. They tend to point at catalogue gaps rather than integration faults, and clearing them is what keeps the two systems honest with each other.

Tools and technology

Where a solid open-source tool exists, we choose it over a closed one. No lock-in to a single vendor, and costs you can actually predict.

  • Medusa v2
  • Allegro API
  • OAuth 2.0
  • TypeScript
  • Node.js
  • PostgreSQL
  • Redis
  • Next.js
  • medusa-allegro
  • medusa-admin-kit

Frequently asked questions

More services in this category

Read testimonials from companies that trusted us

They're always a few steps ahead.

Mikołaj

CEO & Founder, GBS®

View on Clutch
GBS® logo

Delivered well ahead of the deadline.

Yasniel

CEO, IMEGA Sp z o.o.

View on Clutch

ZanReal's individual approach is impressive.

Adam

Executive, w-studio.pl

View on Clutch

Knowledge and business intuition make them a valuable partner.

Magda

Designer, DIGITALUNI

View on Clutch

Quick solutions that reduced costs by 99%.

Andrei Kapytau

Team Lead, busel.uk

View on Clutch

+20% deliverability for our email campaigns.

Joan Calabria

Sales Director, 36NORTH

View on Clutch
36NORTH logo

Latest

Technical guides, security insights, and what we've learned building with AI.

Keeping the marketplace in sync by hand?

Message us

Tell us how your Allegro offers map to your catalogue today and where the two of them disagree. We will look at the matching, the price bounds and what should be allowed to write back.

Zanek

Can't keep up with changes in AI world?

Let us do the heavy lifting. Every week we distill the most important AI developments into a focused 5-minute briefing - so you stay ahead without the noise.

Find out more
Weekly AIonline