Shipping integration
Sürat Kargo
What it does
- Creates Sürat shipments from confirmed orders and stores the label, barcode, and tracking number.
- Polls Sürat for status changes and updates the order timeline and the customer.
- Passes the cash-on-delivery amount to Sürat for COD orders.
Provider based in Turkey
Sürat Kargo is part of Kambloo's launch catalog. It follows the same pattern as Yurtiçi and Aras: label creation through the carrier API, tracking by polling, and cash on delivery. The adapter is an Internal Module. You ship under your own Sürat agreement; Kambloo adds no fee.
How it works with Kambloo
Every carrier module in Kambloo implements one ShippingCarrier contract with four methods: create a shipment, track it, cancel it, and price it. Sürat fills those four methods with its own API calls, and the rest of the platform does not change. Your team confirms an order, Kambloo calls createShipment, and Sürat returns the label, barcode, and tracking number. The label is saved to the store's bucket. Bulk printing collects the day's labels into a single PDF. The tracking number goes on the order and to the customer.
Tracking uses polling because this integration does not receive push events from the carrier. A scheduled job checks open Sürat shipments every 30 minutes and writes new statuses to the order. Jobs run on the integrations queue, one carrier at a time per store, with retries and backoff if Sürat is slow to respond. A delivered status closes the order and starts the return window.
Cancellation is available until pickup. The cancel action on the order calls Sürat, and if the carrier confirms, the shipment record is voided and a new one can be created with any installed carrier.
Cash on delivery is passed at creation time as a shipment option. COD orders deduct stock at once rather than holding a reservation, because no online payment is pending. When the parcel is delivered, collection is confirmed in the admin panel against Sürat's report. A refused parcel returns to you, the order is cancelled, stock is restored, and the customer's COD refusal count increases.
Cart pricing uses the rate table you upload: desi or real weight, whichever is larger, and the origin and destination provinces.
Requirements
- A Sürat Kargo customer agreement with API access.
- Your rate table in CSV form.
- Product dimensions and weight for desi calculation.
Setup steps
The short version. The screens in your store admin follow the same order.
- Install the Sürat Kargo module from the Market. It is free.
- Enter your Sürat customer credentials under Settings > Shipping > Sürat Kargo.
- Upload your rate table as CSV.
- Create a test shipment and verify the label prints correctly.
- Enable Sürat for your shipping zones.
Questions about Sürat Kargo
How quickly do status updates appear?
Sürat is tracked by polling on a 30-minute cycle. A status change appears on the order at the next cycle and triggers the customer notification you configured.
Can I cancel a shipment after creating it?
Yes, through the cancel action on the order, as long as Sürat has not picked up the parcel. The tracking number is released and you can create a new shipment.
Does Sürat support cash on delivery?
Yes. The collection amount is sent when the shipment is created, and the order stays pending until you confirm collection against Sürat's report.