# ShipHero + Krokul CRM

Yes. Krokul CRM integrates with ShipHero. A won deal becomes a ShipHero order, or a wholesale order for pallet and freight shipments, with the ship-to address and lines by SKU. ShipHero picks, packs and ships it, and the tracking number comes back to the deal. Stock held in ShipHero warehouses shows in Krokul as its own stock location, so managers quote from real availability.

**Status:** Via API and webhooks. **Automation platforms:** Make.

## What your team gets

### Won deals enter the fulfillment queue

When a deal is won in a pipeline that ships from a ShipHero warehouse, Krokul calls `order_create` with the deal number as `partner_order_id`, the shipping address of the client company and each product line with its SKU and quantity. Large B2B orders go through `wholesale_order_create`, where freight details such as carrier and bill of lading live. ShipHero returns the order ID, and Krokul keeps it on the deal.

### Packages report back with tracking

ShipHero fires the Shipment Update webhook once a package leaves. Krokul matches the deal by `partner_order_id`, reads `tracking_number` and `shipping_carrier` from each package label, records the shipment and moves the deal to the delivery stage. One order split into two boxes gives two tracking numbers on the same deal.

### Warehouse stock visible in quotes

Each Inventory Update webhook carries the SKU, the inventory and on-hand counts and the warehouse ID. Krokul writes those numbers to the stock location tied to that ShipHero warehouse. A manager building a quote sees what ShipHero can ship today, and reserves on open deals keep counting against it in Krokul.

### Backorders and cancellations reach the manager

The Order Backorder and Order Canceled webhooks turn into a task for the deal owner with the order number and the affected SKUs. The manager calls the client before the delivery date slips.

## What moves between ShipHero and Krokul

| ShipHero | Krokul | Direction | When |
|---|---|---|---|
| Order (`order_create`, partner_order_id, shipping_address, line_items) | Won deal with lines and client company address | Krokul → ShipHero | A deal is won |
| Wholesale order (`wholesale_order_create`) | Won B2B deal shipped by freight | Krokul → ShipHero | A deal is won in a freight pipeline |
| Order update or cancel | Edited or lost deal | Krokul → ShipHero | Before the order ships |
| Shipment Update (tracking_number, shipping_carrier) | Shipment of the deal, delivery stage | ShipHero → Krokul | A package ships |
| Inventory Update (sku, inventory, on_hand, warehouse) | Stock levels of the ShipHero stock location | ShipHero → Krokul | Stock changes in the warehouse |
| Order Backorder, Order Canceled | Task for the deal owner | ShipHero → Krokul | ShipHero cannot ship as ordered |

## How to connect today

### Krokul app in Make

1. Connect the Krokul app with a Krokul API key and the ShipHero app with the refresh token of a third-party developer user from the ShipHero dashboard.
2. Start from the Krokul trigger Deal Won and send the order with the ShipHero module Execute a GraphQL Query running `order_create`.
3. Start a second scenario from Watch Shipments and finish with the Krokul actions Change Deal Stage and Add Comment for the tracking number.

### Custom flow through the Krokul API and webhooks

1. Create a third-party developer user in ShipHero and keep its access and refresh tokens. In Krokul, issue an API key for deals, products, stock and activities.
2. Subscribe a Krokul webhook to card.won with a pipelineUuid filter, check x-crm-signature, read the deal with card/api-read and call `order_create` at public-api.shiphero.com/graphql.
3. Register Shipment Update and Inventory Update with the `webhook_create` mutation and save the `shared_signature_secret` it returns once.
4. Verify x-shiphero-hmac-sha256 on each delivery, find the deal with externalRef/api-resolve, move it with card/api-updateStatus and write stock with stock/api-adjust.

**Triggers:** Watch Shipments; Watch Inventory Updates; Watch Order Cancellations; Watch Backorders; Watch Order Allocations; Watch Order Packouts; Watch PO Updates; Watch Returns; Watch Completed Totes; Watch Cleared Totes.

**Actions:** Execute a GraphQL Query; Update an Order; Update an Order Status; Get Orders; Get Products.

### For integrators

ShipHero signs each webhook with a base64 HMAC-SHA256 in `x-shiphero-hmac-sha256` and waits 10 seconds for a 2xx reply. After 5 failed retries per trigger a webhook can turn UNHEALTHY and stop, and events from that time are dropped. Krokul replies before it processes. A nightly read with `updated_at_min` keeps Krokul in step. Krokul offers a public REST API, signed webhooks with a delivery log, external keys for ShipHero order IDs and a sandbox company.

[API documentation](https://app.krokul.com/api/v1/docs)

## Questions and answers

### Does Krokul integrate with ShipHero?

Yes. Krokul integrates with ShipHero through the Krokul app in Make and through the Krokul API and webhooks together with the ShipHero GraphQL API.

### Who owns the stock in a ShipHero warehouse?

ShipHero. Krokul keeps a separate stock location for each ShipHero warehouse and updates it only from ShipHero events, while your own warehouses stay under Krokul stock moves.

### Can Krokul send wholesale orders?

Yes. Deals in a freight pipeline go to ShipHero as wholesale orders with carrier, shipping method and bill of lading fields.

### What if ShipHero cannot fill an order?

The Order Backorder webhook creates a task for the deal owner with the missing SKUs, so the client hears about the delay from the manager.

## Limits

Goods stored in a ShipHero warehouse are counted by ShipHero, and Krokul mirrors those levels without moving them by hand. Picking, packing, label buying and warehouse staff stay in ShipHero. ShipHero meters its API with a credit pool per account, which caps heavy queries.

## Related services

- [ShipStation](https://krokul.com/en/integrations/shipstation/index.md)
- [Shippo](https://krokul.com/en/integrations/shippo/index.md)
- [Shopify](https://krokul.com/en/integrations/shopify/index.md)
- [Amazon](https://krokul.com/en/integrations/amazon/index.md)
- [Extensiv](https://krokul.com/en/integrations/extensiv/index.md)

[Shipping and logistics](https://krokul.com/en/integrations/category/shipping/index.md)

ShipHero is a trademark of ShipHero, LLC. Krokul is not affiliated with ShipHero.

Updated: 2026-10-15

---

App: https://app.krokul.com/ · API: https://app.krokul.com/api/v1/docs
