This page, and the two longer ones
This is the short way in: install, tag, first box. The handbook is the complete reference — every shortcode, every attribute, every setting, in nineteen sections. The troubleshooting guide is sorted by what appears on screen when something is wrong. Both are generated from the documentation that ships with the plugin, so they describe the version you actually have.
Install it
In WordPress go to Plugins → Add New Plugin, search for Doozly Affiliate Box for Amazon, press Install Now and then Activate. A new Affiliate Box entry appears in the admin menu. The same plugin is on its WordPress.org page, if you would rather download the archive and upload it.
Installed from the directory, WordPress offers every new version as an ordinary update on the Plugins screen.
It needs WordPress 6.1 or newer and PHP 7.2 or newer. There is no licence key to enter, no account to create, and the free plugin makes no request to Amazon at all until you deliberately connect a credential.
Put your tracking IDs in first
Do this before anything else. A box without a tag still links to Amazon, still gets clicked, and earns nothing — and it is the failure nobody notices, because the box looks perfectly normal.
Open the Marketplaces tab and enter one Associates Tracking ID for each store you are enrolled in. They are separate programmes with separate IDs; there is no single ID that works everywhere. Where those IDs come from
What happens when a store has no ID
The link falls back to your default marketplace and its tag rather than going out untagged. That is the safe behaviour, but it is still the wrong store for that reader — so treat the fallback as a stopgap, not a setting you leave alone. Which stores your readers actually need
Your first box
The shortcode works in the block editor, in the classic editor, in widget areas and anywhere else WordPress runs shortcodes. At its shortest it is one attribute:
[affiliate_box asin="B0CHX1W1XY"]
That builds the link and attaches your tag. The box itself will be nearly empty, because the plugin has nothing to show yet — so in practice you either type the details or let Amazon supply them:
[affiliate_box asin="B0CHX1W1XY" title="Anker 737 Power Bank" image="https://example.com/wp-content/uploads/anker-737.jpg" price="$99.99" rating="4.6" rating_count="12480"]
Every attribute is optional and every one is left out of the markup when it is empty. Leave the rating blank and no stars are drawn — you never get a row of hollow stars standing in for data you do not have.
Linking to something that is not a product page
Use url instead of asin for search results, storefronts or anything else without an ASIN. Your tag is appended unless the URL already carries one, so a link you built in SiteStripe stays exactly as Amazon made it.
[affiliate_box url="https://www.amazon.com/s?k=power+bank" title="Power banks"]
Give neither and the box links to the marketplace home page. Give both and asin wins.
Let Amazon fill the box in
This is in the free plugin. Connect a Creators API credential on the Amazon API tab and the plugin can fetch a title, image, price, star rating and review count from an ASIN — or from a keyword search, in the box builder. What the Creators API is
Credentials are held one per region, and the plugin picks the right one for the marketplace it is rendering. The secret is stored encrypted and is never shown again after you save it.
Once a credential is connected, a shortcode carrying an ASIN fills its own blanks at render time: if the title, image or price is missing, the plugin supplies it from the cache. Anything you typed yourself always wins — autofill only ever fills gaps.
The two limits worth knowing
Amazon requires an active Associates account with recent qualifying sales before it will issue a Creators API credential at all, so a brand-new account cannot use this yet. And the plugin works to a ceiling of 8,640 requests a day, which is why responses are cached rather than fetched per page view. The sales requirement
One product, several stores
Point a single box at another marketplace with the marketplace attribute. Left out, it uses the default you set on the General tab.
[affiliate_box asin="B0CHX1W1XY" marketplace="de"]
The catch is that the same product usually carries a different ASIN in every store, and sometimes a different title and image too. So each of those three can be overridden per marketplace by adding the store key to the attribute name:
[affiliate_box asin="B0CHX1W1XY" // used everywhere else asin_de="B0CJ2K9XYZ" asin_co_uk="B0CH8R2ABC" title_de="Anker 737 Powerbank"]
The store key is the same short code the plugin uses internally — de, fr, it, es, ca, and so on. Only asin, image and title take these overrides; everything else is shared across stores. Which store serves which country
How the box looks
Four attributes cover appearance, and each falls back to the default you set once on the Product Box tab rather than needing to be repeated on every box.
| Attribute | Values | What it does |
|---|---|---|
layout | post, sidebar | Wide box for body text, or a narrow stacked one for a column. |
image_size | small, medium, large | How much room the product image takes. |
bg_color | A CSS colour | Background of the box. Left out, it inherits your theme. |
button_text | Plain text | Defaults to "Buy on Amazon". |
What needs a licence
The product box itself is free and always renders — there is no licence check anywhere in it, and neither is there one on the Amazon API. Seven things are licensed:
- Comparison tables.
[affiliate_box_compare]— four products side by side, with shared feature rows. - Bestseller lists.
[affiliate_box_bestsellers]— built live from a keyword or an Amazon category. - Search grids.
[affiliate_box_search]— a grid of live Amazon search results. - Review boxes.
[affiliate_box_review]— your own photographs, your own score, pros and cons and a verdict. - Geotargeting. Sending each visitor to the store nearest to them. The geotarget attribute is accepted without a licence but has no effect.
- Reports. Which box was seen, which was clicked, and how many readers arrived from a store you hold no tag for. Amazon counts per tracking ID and never per box, so it cannot tell you this.
- Nightly refresh. Saved boxes and bestseller lists keep their prices current on their own.
A licensed shortcode renders nothing at all for visitors and a red dashed warning for logged-in administrators. So if a section of a page is simply missing, view it while logged in — the plugin will tell you which one it is.
Saved boxes are free: build one under Settings → Affiliate Box → Product Boxes, save it, and reuse it with [affiliate_box box="a7f3k2c9"] — the key is that box's permanent name, and no licence is involved. Older posts need no editing: [affiliate_box_pro id="N"] still renders the same box. One difference remains, and it is a consequence rather than a restriction: the free plugin schedules no background job, so a saved box does not refresh its own price overnight. Premium does that.
Every attribute
All nineteen of them, with their defaults and what each one does, are in the attribute reference of the handbook. They are not repeated here on purpose: that table is checked against the plugin source on every release, and a second copy would be the one that quietly goes out of date. The handbook also carries the five attributes each store adds of its own.
When something is not right
The box renders but the link has no tag. No tracking ID is filed for that marketplace and none for the fallback either. Check the Marketplaces tab.
Nothing appears where the shortcode is. You are almost certainly using a licensed shortcode without a licence — those render nothing for visitors and a red dashed warning for administrators. Look at the page while logged in.
The shortcode prints as text. The plugin is inactive, or the shortcode sits somewhere WordPress does not expand shortcodes — some page builders and template files need do_shortcode() called explicitly.
Autofill does not fill anything. It only acts when the box carries an ASIN and at least one of the title, image or price is empty, and only when a credential exists for that marketplace's region.
The wrong store is used. An unrecognised marketplace value is discarded silently and the default is used instead. Check the spelling of the store key.
Still stuck
The troubleshooting guide is organised by what you see on screen rather than by which part of the plugin is involved, because when something is wrong you usually do not yet know which part that is. If you were shown an error, every message the plugin can produce is listed in its error index, Amazon’s own reason codes included.
If that does not settle it, write to us on the support page. Tell us the plugin version, the exact shortcode you used and what appeared instead — that is usually enough to answer in one reply.