Push products to VeraCore
Almost everything in this integration flows from VeraCore. Pushing products is the exception: it sends a SKU.io product up to your 3PL so the warehouse has something to receive against, pick, and report stock for.
You need it when you are about to send stock your 3PL has never handled before. Read Creating vs updating products at VeraCore first if you have not — the create-vs-update asymmetry is the one genuinely sharp edge here.
Before you push
Sync the catalogue first. The push decides create-or-update by checking each SKU against the mirrored offer list, so a stale mirror is what makes a push behave unexpectedly. It takes seconds — click Sync From VeraCore, wait for the job, then push.
Push
- On the Products tab, tick the offers you want to push.
- Click Push To VeraCore ({n}).
- You get Queued {n} product(s) for push to VeraCore, and the job appears in the tray under
Push VeraCore Products:.
The button explains itself whenever it cannot run:
| Tooltip | Means |
|---|---|
| None of the selected offers are mapped to a SKU.io product, so there is nothing to push | You have selected only unmapped rows — there is no SKU.io product behind them to send |
| {n} selected offer(s) are unmapped and will be skipped | A mixed selection. The push runs; the unmapped rows are ignored |
That is the model in one line: you push the SKU.io product behind a mapped offer. An offer with no mapping has nothing to push.
If the item does not exist at VeraCore at all, there is no offer row to tick. Push it from the SKU.io product side, or ask your 3PL to add it — then run a catalogue sync so the new offer appears here and can be mapped.
What happens
Per product, SKU.io checks whether the SKU already exists at VeraCore:
- It does → update. Only the title is patched. Everything your 3PL configured — dimensions, packaging, warehouse activation, handling — is untouched.
- It does not → create. The item is created with its code, title, lot-tracking flag, and build type.
You never choose. The destructive call is not exposed in the UI, deliberately: a create against an item that already exists at VeraCore replaces the whole record, wiping fields SKU.io does not send. See the concept page for why.
The comparison ignores case and surrounding whitespace but not punctuation, so SKU-1 and SKU_1 are different items to this check. That is stricter than the match ladder, on purpose.
Reading the result
The job reports three numbers — Created, Updated, and Failed — with a reason per failure.
Failures are per product. One rejected item does not stop the batch: the run continues and tells you what went wrong at the end. Fix the listed items and push those again. Anything that already succeeded is now an existing item, so re-pushing it is an update, which is safe.
The one failure that stops everything
A SKU longer than 50 characters cannot exist at VeraCore. Rather than truncate it — which would create an item under a code that is not your SKU, quietly breaking every future match — the whole push is refused before anything is sent:
VeraCore product codes are limited to 50 characters. Shorten these SKUs before pushing:
<the SKUs>
Nothing is pushed, not even the valid rows. Shorten the named SKUs and run it again.
Titles are treated differently: anything over 255 characters is simply cut, and the push proceeds. Truncating an identifier is dangerous; truncating a description is not.
After the push
Run Sync From VeraCore again. The new items come back as offers, get matched against your products by the ladder, and become mappable — which is what makes them usable for inventory, fulfillment, and expected arrivals.
A pushed product exists at VeraCore, but your 3PL may still need to activate it in a facility or configure handling before it can be received or picked. Pushing is the first step of that conversation, not all of it.
What not to do
Do not push your whole catalogue by reflex. VeraCore is a warehouse system. Items you never send to that warehouse only add noise to your 3PL's item list — and each one comes back as another offer to mirror and map, which makes the queues on this page worse, not better.
Push what the warehouse will actually hold. Usually that means pushing just before you announce the purchase order that will deliver it.
Automatic pushes
If Products (outbound) is enabled on the Settings → Sync tab and automatic sync is running, SKU.io keeps pushed products in step on its own schedule. The button on this page is for when you do not want to wait for that, or when the capability is off and you want a one-off push.
Next steps
- Announce a purchase order to the warehouse — the usual reason you pushed in the first place.
- Creating vs updating products at VeraCore — the full picture, including exactly which fields go up.