Map source codes
Every order SKU.io sends to VeraCore carries a source — VeraCore's way of recording where the order came from. Your 3PL uses it for reporting, billing, and sometimes for routing orders to different pick processes.
The Source Codes tab decides what that value is, per sales channel:
Map sales channel integration instances (and optionally specific sub-channels) to the VeraCore source sent with each add-order request. A mapping without a sub-channel acts as a catch-all for every order from that sales channel instance. Sub-channel mappings take precedence over the catch-all.
Unlike shipping method mappings, which only affect what SKU.io records, this one is outbound — it changes what VeraCore actually receives.
Catch-all and sub-channel
There are two kinds of mapping and one rule linking them.
A catch-all maps a whole sales channel instance. Every order from that connection gets the same source code. This is what most people want, and the table labels it with a grey Catch-all chip.
A sub-channel mapping maps one specific sub-channel within that instance — a particular storefront, marketplace, or channel your sales integration distinguishes.
Sub-channel mappings win. When an order matches both, the more specific one is used. So the useful pattern is a catch-all for the channel plus overrides for the sub-channels that need their own code:
| Mapping | Source sent |
|---|---|
| Shopify (catch-all) | Shopify-Retail |
| Shopify → Wholesale | Shopify-Wholesale |
A wholesale order sends Shopify-Wholesale; everything else on that Shopify connection sends Shopify-Retail.
Add a mapping
- Open the connection's Source Codes tab.
- Click Add Mapping.
- Pick the Sales Channel Integration Instance. Instances show their integration name alongside, so two Shopify connections are distinguishable.
- Optionally pick a Sub Sales Channel. Leave it blank for a catch-all — the field says so: Leave blank to create a catch-all mapping for this sales channel instance.
- Enter the Source Code — the literal string VeraCore will receive, e.g.
Shopify-Wholesale. - Click Create Mapping.
The sub-channel field stays disabled until you have picked an instance (Select a sales channel instance first), and tells you when the chosen instance has none (No sub channels available). Changing the instance clears any sub-channel you had selected, because a sub-channel only means something within its own instance.
Create Mapping is unavailable until you have chosen an instance and typed a source code.
SKU.io sends this string as typed. It does not validate it against VeraCore, because VeraCore does not expose the list.
Get the exact values from your 3PL — including case and punctuation. A source VeraCore does not recognise will either be rejected on the order or silently filed as unknown, and both are found later rather than sooner.
The table
| Column | Notes |
|---|---|
| Sales Channel Instance | Which connection this applies to |
| Sub Channel | The sub-channel, or a Catch-all chip |
| Source Code | The literal string sent to VeraCore |
| Actions | Edit and delete |
Editing opens the same dialog pre-filled; deleting confirms first, naming the instance, sub-channel, and source code so you can see exactly which mapping is going.
An empty page reads No source code mappings yet. Click "Add Mapping" to create one.
Both Add Mapping and the row actions require the manage-integrations permission. Without it the page is read-only.
What happens with no mapping
Nothing breaks. Orders still go to VeraCore — they just carry whatever default source the connection is configured with, rather than a channel-specific one.
Whether that matters depends on your 3PL. If they bill by source, or route differently per source, or report to you by source, then unmapped channels are quietly lumped together and their reporting is wrong. If they only use it for information, it costs nothing.
Ask before assuming it does not matter.
A sensible setup
Start with one catch-all per sales channel connection, using a code that names the channel. That alone gives your 3PL a usable breakdown.
Add sub-channel mappings only where you actually need the split — a wholesale channel billed differently, a marketplace that needs its own pick process. Every extra mapping is another thing to keep in step with your 3PL's configuration, so do not create them speculatively.
Next steps
- Map shipping methods — the inbound counterpart, matching VeraCore's carriers to yours.
- Sync and link orders — the orders these source codes are attached to.
- Settings reference — the connection-level defaults these mappings override.