[{"data":1,"prerenderedAt":502},["ShallowReactive",2],{"article-cargowise-ehub-vs-e2e-vs-eadapter":3},{"id":4,"title":5,"author":6,"body":7,"category":486,"description":487,"extension":488,"featured":489,"image":490,"meta":491,"navigation":489,"path":492,"publishedAt":493,"readingTime":494,"seo":495,"stem":496,"tags":497,"videoUrl":490,"__hash__":501},"articles\u002Farticles\u002Fcargowise-ehub-vs-e2e-vs-eadapter.md","CargoWise Integration Options Compared: eHub vs E2E vs eAdapter (2026)","Don Dappa",{"type":8,"value":9,"toc":476},"minimark",[10,18,21,28,33,39,45,51,55,140,143,159,163,166,175,274,277,297,301,304,307,359,362,374,378,381,413,417,423,442,448,454,457],[11,12,13,14],"p",{},"Here is the least-told truth about CargoWise integration: ",[15,16,17],"strong",{},"the best eAdapter integration is often the one you don't build.",[11,19,20],{},"CargoWise (WiseTech Global's platform) offers three main integration paths. Teams routinely default to eAdapter because it's the one with \"API\" energy — and then discover they've signed up to own middleware, a relay service, retry queues, and monitoring, for a connection that a pre-built option would have handled.",[11,22,23,24,27],{},"If you only take one thing from this article: the default order of preference is ",[15,25,26],{},"eHub → E2E → eAdapter",". Use the custom path only when the pre-built ones can't meet the need.",[29,30,32],"h2",{"id":31},"the-three-options-in-one-paragraph-each","The three options, in one paragraph each",[11,34,35,38],{},[15,36,37],{},"eHub"," is CargoWise's pre-built carrier connectivity: established connections to major ocean carriers, air carriers, and NVOCCs — some direct, some via service providers like INTTRA, CargoSmart, or Infor Nexus. CargoWise generates a Universal Shipment XML, sends it via eHub, and WiseTech maps it to each carrier's requirements. New connections to carriers not yet on the list are requested through an eRequest.",[11,40,41,44],{},[15,42,43],{},"E2E Messaging"," is standardised message exchange over CargoWise's global network, between CargoWise users. It supports standard EDI formats (X12 850, 856, 315, EDIFACT equivalents) and — this is the part that matters — it can be activated without additional configuration or custom development when both parties run CargoWise. Messages are captured against the operational record, so you get an audit trail for free.",[11,46,47,50],{},[15,48,49],{},"eAdapter"," is the custom integration interface: full flexibility, XML in and out, and full ownership of everything around it. It requires development resources — not \"some scripting\", but a real middleware layer you run in production.",[29,52,54],{"id":53},"the-decision-table","The decision table",[56,57,58,74],"table",{},[59,60,61],"thead",{},[62,63,64,68,71],"tr",{},[65,66,67],"th",{},"Your scenario",[65,69,70],{},"Use this",[65,72,73],{},"Why",[75,76,77,90,102,114,127],"tbody",{},[62,78,79,83,87],{},[80,81,82],"td",{},"Both parties run CargoWise",[80,84,85],{},[15,86,43],{},[80,88,89],{},"Activates without custom development; audit trail built in",[62,91,92,95,99],{},[80,93,94],{},"Connecting to a major ocean\u002Fair carrier or NVOCC",[80,96,97],{},[15,98,37],{},[80,100,101],{},"Pre-built and maintained by WiseTech; more reliable than anything custom",[62,103,104,107,111],{},[80,105,106],{},"Custom integration with your ERP, WMS, or own product",[80,108,109],{},[15,110,49],{},[80,112,113],{},"The only path with full flexibility",[62,115,116,119,124],{},[80,117,118],{},"Partner uses standard EDI (X12, EDIFACT) but not CargoWise",[80,120,121],{},[15,122,123],{},"eAdapter + EDI transform",[80,125,126],{},"E2E is CW-to-CW only",[62,128,129,132,137],{},[80,130,131],{},"Multiple systems need CargoWise outbound data",[80,133,134],{},[15,135,136],{},"eAdapter + middleware relay",[80,138,139],{},"CargoWise allows only ONE outbound URL — a relay is mandatory",[11,141,142],{},"Two rules that prevent most integration messes:",[144,145,146,153],"ol",{},[147,148,149,152],"li",{},[15,150,151],{},"Don't mix patterns without a strategy."," Keep an integration strategy document mapping every trading partner to its option, and a registry that prevents duplicate flows. Mixing patterns ad hoc creates duplicated flows and inconsistent data.",[147,154,155,158],{},[15,156,157],{},"Default to the simplest option that works."," Pre-built connections need less maintenance than anything you own.",[29,160,162],{"id":161},"what-each-path-actually-costs","What each path actually costs",[11,164,165],{},"Nobody publishes a clean price list for CargoWise integration, so here is what's documented publicly as of mid-2026 — with sources, because unsourced cost claims are how integration budgets die.",[11,167,168,169,174],{},"Since 1 December 2025, CargoWise licensing runs on ",[170,171,173],"a",{"href":172},"\u002Farticles\u002Fthe-19-dollar-shipment","Value Packs",": per-transaction pricing (~$19.95 for a full import container with inland leg, ~$9.95 for a standalone customs entry) with 216+ modules and unlimited users bundled. EDI\u002FAPI connectivity is listed as included in the bundle — but the operational costs of each path are very different:",[56,176,177,189],{},[59,178,179],{},[62,180,181,183,185,187],{},[65,182],{},[65,184,37],{},[65,186,43],{},[65,188,49],{},[75,190,191,206,222,237,259],{},[62,192,193,198,201,203],{},[80,194,195],{},[15,196,197],{},"License",[80,199,200],{},"Bundled in Value Packs",[80,202,200],{},[80,204,205],{},"Modules bundled; Developer Guide only after purchase",[62,207,208,213,216,219],{},[80,209,210],{},[15,211,212],{},"Setup effort",[80,214,215],{},"eRequest per carrier connection",[80,217,218],{},"Near-zero for CW-to-CW",[80,220,221],{},"Weeks-to-months of development",[62,223,224,229,232,234],{},[80,225,226],{},[15,227,228],{},"Ongoing infra you own",[80,230,231],{},"None",[80,233,231],{},[80,235,236],{},"Middleware, relay, queues, monitoring — all yours",[62,238,239,244,247,249],{},[80,240,241],{},[15,242,243],{},"Documented cost signals",[80,245,246],{},"—",[80,248,246],{},[80,250,251,252,258],{},"~$340\u002Fmonth to CargoWise at ~1,000 shipments\u002Fmonth of outbound XML (~17,000 messages), per ",[170,253,257],{"href":254,"rel":255},"https:\u002F\u002Fwww.expedock.com\u002Ffaq",[256],"nofollow","Expedock's published FAQ","; middleware subscriptions from ~$100\u002Fmonth; third-party EDI connections from ~$3,000 setup each",[62,260,261,266,269,271],{},[80,262,263],{},[15,264,265],{},"Team requirement",[80,267,268],{},"Ops staff",[80,270,268],{},[80,272,273],{},"At least one developer who understands eAdapter",[11,275,276],{},"Two cost traps specific to eAdapter:",[278,279,280,286],"ul",{},[147,281,282,285],{},[15,283,284],{},"The middleware is core infrastructure, not an afterthought."," CargoWise users must host their own outbound service and middleware to manage queues, retries, transforms, and monitoring. Smaller forwarders underestimate this constantly and end up with fragile scripts that break in production.",[147,287,288,291,292,296],{},[15,289,290],{},"The automation fee shows up in your charge extracts."," CargoWise posts a system-generated automation fee (DOM-CWAF) to every invoicing job — it can't be switched off. If you extract charges via eAdapter, it will appear in the charge list, and you need a deliberate strategy: pass it through to the customer as a disbursement, absorb it (filter it out of customer-facing data), or zero out the sell side via carefully constructed XML. Decide this as a business decision ",[293,294,295],"em",{},"before"," building, not when the first confused customer invoice lands.",[29,298,300],{"id":299},"the-knowledge-barrier-and-how-teams-actually-learn-eadapter","The knowledge barrier (and how teams actually learn eAdapter)",[11,302,303],{},"The eAdapter Developer Guide is not publicly available — WiseTech provides it only after a customer purchases the eAdaptor modules. Community knowledge is scattered thin across G2 reviews, LinkedIn, and consultant blogs; Reddit coverage of eAdapter is close to non-existent.",[11,305,306],{},"In practice, most teams learn the message mechanics from three open-source client libraries:",[56,308,309,321],{},[59,310,311],{},[62,312,313,316,319],{},[65,314,315],{},"Library",[65,317,318],{},"Language",[65,320,197],{},[75,322,323,338,349],{},[62,324,325,332,335],{},[80,326,327],{},[170,328,331],{"href":329,"rel":330},"https:\u002F\u002Fgithub.com\u002FSteeleConsulting\u002Fcargowise-eadapter",[256],"Steele Consulting eAdapter",[80,333,334],{},"Node.js\u002FTypeScript",[80,336,337],{},"MIT",[62,339,340,343,346],{},[80,341,342],{},"yob\u002Fcargowise",[80,344,345],{},"Ruby",[80,347,348],{},"Open source",[62,350,351,354,357],{},[80,352,353],{},"oliverbj\u002Fcord",[80,355,356],{},"PHP",[80,358,348],{},[11,360,361],{},"Commercial middleware exists too — Complect's eAdaptor Relay, Chain.io, Crossfire Integration — if you'd rather buy the relay layer than build it.",[11,363,364,365,368,369,373],{},"Whichever route you take: ",[15,366,367],{},"build at least one person's worth of internal eAdapter expertise, even if you use consultants."," It dramatically reduces your dependency and response time when something breaks — and something will break, because eAdapter is asynchronous end to end and ",[170,370,372],{"href":371},"\u002Farticles\u002Feadapter-processinglog-errors","HTTP 200 does not mean your message succeeded",".",[29,375,377],{"id":376},"if-you-do-land-on-eadapter-the-five-things-waiting-for-you","If you do land on eAdapter: the five things waiting for you",[11,379,380],{},"Choosing eAdapter is choosing to operate it. These are the five failure modes that hit in year one:",[144,382,383,389,395,401,407],{},[147,384,385,388],{},[15,386,387],{},"The single outbound URL."," One endpoint per instance — the moment a second system needs CargoWise data, you're building a relay.",[147,390,391,394],{},[15,392,393],{},"Async everything."," Sends return a tracking UUID, not a result. Status lives in the CW1 EDI Interchange, and you have to go get it.",[147,396,397,400],{},[15,398,399],{},"Silent triggers."," Workflow milestones can complete without ever sending a message unless Completion Trigger Actions are configured.",[147,402,403,406],{},[15,404,405],{},"Field locking."," Once a customs declaration commences, fields freeze — your updates silently stop applying.",[147,408,409,412],{},[15,410,411],{},"The defaults gap."," API-created jobs skip the UI's default population. Messages must be self-contained, or jobs arrive half-empty.",[29,414,416],{"id":415},"faq","FAQ",[11,418,419,422],{},[15,420,421],{},"Can I use E2E Messaging with a partner who doesn't run CargoWise?","\nNo — E2E is CargoWise-to-CargoWise. For a non-CW partner on standard EDI, you need eAdapter with an EDI transform, or a commercial EDI platform in between.",[11,424,425,428,429,433,434,437,438,441],{},[15,426,427],{},"Does eAdapter use SOAP or plain HTTP?","\nBoth exist in the wild. The commonly documented interface is SOAP (",[430,431,432],"code",{},"eAdapterStreamedService.wsdl",", ",[430,435,436],{},"SendStream","), but instances also run plain HTTP+XML — no SOAP envelope, no GZIP, basic-auth header, raw XML body. Check how ",[293,439,440],{},"your"," instance is configured before writing a line of client code; assuming the wrong flavour costs days.",[11,443,444,447],{},[15,445,446],{},"Is eAdapter included in CargoWise Value Packs?","\nThe modules are part of the bundled catalogue, but the Developer Guide remains gated behind the module purchase, and the infrastructure around eAdapter (middleware, relay, monitoring) is entirely your cost.",[11,449,450,453],{},[15,451,452],{},"How many outbound endpoints can CargoWise push to?","\nOne. Exactly one outbound URL per instance. Everyone with more than one downstream system runs a relay — it's the single most load-bearing fact in eAdapter architecture.",[455,456],"hr",{},[11,458,459,466,467,471,472],{},[15,460,461,462,465],{},"This is the territory of ",[293,463,464],{},"eAdapter in Production"," (Vol 2)"," — Chapter 1 is the free preview, and the other seven chapters cover the five failure modes above in depth: the relay pattern, message status visibility, silent triggers, field locking, and the defaults gap. ",[170,468,470],{"href":469},"\u002Feadapter?channel=article_options","Start with Vol 1 ($99) →"," or ",[170,473,475],{"href":474},"\u002Feadapter\u002Fproduction-ops?channel=article_options","join the Vol 2 waitlist →",{"title":477,"searchDepth":478,"depth":478,"links":479},"",2,[480,481,482,483,484,485],{"id":31,"depth":478,"text":32},{"id":53,"depth":478,"text":54},{"id":161,"depth":478,"text":162},{"id":299,"depth":478,"text":300},{"id":376,"depth":478,"text":377},{"id":415,"depth":478,"text":416},"technical","CargoWise offers three integration paths — eHub, E2E Messaging, and eAdapter. Here is the decision table, real cost data, and why the best eAdapter integration is often the one you never build.","md",true,null,{},"\u002Farticles\u002Fcargowise-ehub-vs-e2e-vs-eadapter","2026-08-25",8,{"title":5,"description":487},"articles\u002Fcargowise-ehub-vs-e2e-vs-eadapter",[498,499,49,500],"CargoWise","integration strategy","EDI","MnAxbl6XJ8NZiyePiWUO5wgeAvsXPaNbJlKbiyWZNZA",1787680136116]