...
Create a process for sending the syncing entity object information as Orders to ShipHawk. This is usually done by a scheduled job (e.g. for instance, every 5-15 minutes) for all transactions that have a certain status or value prior to being available to sync to and have not already been sent to ShipHawk.
...
The recommended method for writing shipment data back to the Source is to setup and subscribe to ShipHawk Webhooks. Instead of creating scheduled jobs, you can improve performance by setting up a Webhookwebhook, subscribing to the shipment.create_from_order event and specifying a callback URL of your choice.
For ShipHawk to ERP sync, we have two options:
Use webhooks (recommended)
Create a new endpoint for pulling status updates from ShipHawk in batches. Existing endpoints can not be used for that because of inefficiency and potential issues with reaching ShipHawk API Limits.
Use webhooks if possible. Otherwise Otherwise, scheduled jobs should minimize unnecessary usage and potential API charges. If going this route, the connector should be a good steward of the ShipHawk API, limiting the number of calls per min made to ShipHawk.
To set up a new webhook, go to: ⚙️ (gear icon)> Settings > Webhooks > Actions > Create New Webhook. At a minimum, you will want to subscribe to the shipment.create_from_order event. Other events serve a variety of other use cases not relevant for basic order fulfillment. For more information about the data in these webhooks, you can review our webhook event types and payload examples.
...
Alternatively, you can always set up a scheduled job to GET /orders that have not yet been closed in the Source system. Example: The syncing entity or fulfillment record in the Source will usually need to be updated with the following information at a minimum:
...