Customer · Orders
My online store
Connecting your WooCommerce, Shopify, ikas or Ticimax store, your Trendyol, Hepsiburada, n11 or Çiçeksepeti seller account, your Sentos or Entegra integrator account, or your IdeaSoft store, so that store orders automatically become courier orders; getting the keys, settings, cash on delivery and waiting orders.
Orders placed in your online store automatically become courier orders; you do not enter them one by one. When the courier picks up and delivers the parcel, this is written back to your store too.
Supported stores: WooCommerce (WordPress), Shopify, ikas (see ikas), Ticimax (see Ticimax), IdeaSoft (see IdeaSoft), the marketplaces Trendyol, Hepsiburada, n11 and Çiçeksepeti (see Trendyol, Hepsiburada, n11 and Çiçeksepeti) and the multi-channel integrators Sentos (see Sentos) and Entegra (see Entegra). Open the My online store page from the left menu. If you do not see it, your account has no integration permission; contact your courier company.
How it works
- When your store gets a new order, we are notified immediately. Even if a notification is missed, your store is checked every 10 minutes.
- Even if the same order arrives twice, only one courier order is opened.
- The fee is calculated with the same prices as orders you place in the portal.
- If the delivery address does not match your courier company's districts, no order is opened; it goes to the Waiting for a match list.
- On the first connection, orders from the last 24 hours in the store are taken.
Connecting my store (step by step)
- On the My online store page press Connect store.
- Choose the store type: WooCommerce, Shopify, ikas, Ticimax, Trendyol, Hepsiburada, n11, Çiçeksepeti, Sentos, Entegra or IdeaSoft. Press Next.
- Get the keys from your store following the on-screen instructions (explained step by step below).
- Paste the Store address and the keys (Trendyol, Hepsiburada, n11, Çiçeksepeti and Entegra do not ask for a store address).
- Press Test connection. When you see the green "Connection successful" message, press Next. (IdeaSoft has no such button; store authorization is given after saving, see IdeaSoft.)
- Choose a Delivery type, review the other settings and press Connect and save.
Getting a WooCommerce key
- Sign in to your WordPress admin panel.
- Open WooCommerce › Settings › Advanced › REST API.
- Press Add key, enter "Courier" as the description and choose your administrator account as the user.
- Choose Read/Write under Permissions.
- Press Generate API key.
- Copy the Consumer key (
ck_…) and Consumer secret (cs_…) and paste them. The secret is shown only once. - Enter your website address as the store address (e.g.
https://www.yourstore.com).
Getting a Shopify key
- In the Shopify admin, open Settings › Apps and sales channels › Develop apps (choose Allow custom app development if asked).
- Create an app named "Courier" with Create an app.
- Under Configure Admin API scopes, select
read_orders,write_merchant_managed_fulfillment_orders,write_assigned_fulfillment_ordersand save. - Press Install app.
- Copy the Admin API access token (
shpat_…) and the API secret key and paste them. - Enter
store-name.myshopify.comas the store address.
Getting an ikas key
- In the ikas admin panel open Settings › Apps › Private Apps.
- Choose Create private app and name it "Courier".
- Under permissions select read and write for orders (with read only, delivery status cannot be written back to ikas). Save.
- Copy the Client ID and Client Secret into the wizard. The Client Secret also verifies the signature of notifications coming from ikas.
- Enter
store-name.myikas.comas the store address (not your own domain). - New orders arrive from ikas instantly (the webhook is created automatically); the store is also polled every 10 minutes.
- By default orders in
UNFULFILLED(to prepare) andREADY_FOR_SHIPMENTare taken. In-store pickup orders do not become courier orders; addCLICK_AND_COLLECTto the statuses if you want them. Orders awaiting payment (e.g. bank transfer) are not taken until paid. For cash or card on delivery orders the amount is written on the courier order. - When the courier picks up the parcel, the ikas order becomes shipped (tracking number = courier order number, tracking link added); on delivery the package is marked delivered. The courier order reference looks like
IKAS-order no.
Getting a Ticimax key
- In the Ticimax admin panel open Settings › WS Authorization Code Management (WS Yetki Kodu Yönetimi).
- Create a new authorization code. On the order service enable at least
SelectSiparis(read orders) andSetSiparisDurum(write status). - Copy the authorization code into the wizard.
- Enter your store's domain as the store address (e.g.
https://www.yourstore.com). - Ticimax has no instant notifications: orders are polled every 10 minutes (the "polling only" badge is normal). Press Sync now to fetch immediately.
- By default orders in
Onaylandi(approved) andPaketleniyor(packing) status are taken. For cash on delivery (KapidaOdemeNakit) and card on delivery (KapidaOdemeKrediKarti) orders the amount is written on the courier order. - Carrier filter: If some Ticimax orders ship with a cargo company, enter the name of the cargo company defined for your courier (e.g.
Kurye) in Only packages assigned to this carrier in the mapping settings. If left empty, all orders are taken. - When the courier picks up the parcel, the Ticimax order becomes KargoyaVerildi (shipped; tracking number = courier order number, tracking link added); on delivery TeslimEdildi (delivered) is written. The courier order reference looks like
TCX-order no.
Trendyol, Hepsiburada, n11 and Çiçeksepeti (marketplaces)
No store address is entered for a marketplace; you connect with the seller account's keys. Each package becomes a separate courier order (if an order is split into several packages, each one is separate). The courier order reference looks like TY-order no/package no or HB-order no/package no. On Çiçeksepeti the main order (with all its sub-orders) becomes one courier order; its reference looks like CS-order no.
Who does what?
- You (the seller): ask the marketplace for permission to ship with your own courier and get the API keys from your seller panel. If you prefer, give the keys to your courier company and let them set up the connection.
- The courier: does not sign up with Trendyol, Hepsiburada, n11 or Çiçeksepeti and sets nothing up. The package lands in your courier company's app; the courier picks it up and delivers it as usual.
- The fee is calculated the same way as for orders you create in the panel.
First get permission from the marketplace: Shipping packages with your own courier requires the marketplace's permission.
- Trendyol: ask seller support for Alternative Delivery (shipping with your own courier) permission.
- Hepsiburada: ask for shipping with your own carrier permission.
- n11: the order only needs to be seller-shipped; no separate permission is required.
- Çiçeksepeti: writing statuses may require the seller's own-vehicle shipping permission.
- Without it orders still arrive and courier orders are created; only the picked-up/delivered status cannot be written to the marketplace (you will see an error in the Log).
Getting a Trendyol key
- In the Trendyol seller panel open Account Information › Integration Information.
- Copy the Seller ID, API Key and API Secret values.
- Choose Trendyol in the wizard and paste these three values.
- New packages arrive from Trendyol instantly (the webhook is created automatically); they are also polled every 10 minutes.
- When the courier picks up the package it becomes shipped on Trendyol with a tracking link; on delivery delivered is written. Your courier company's tracking page must be enabled for the tracking link.
Getting a Hepsiburada key
- In the Hepsiburada seller panel open My Information › Integration › Integrator Information.
- Copy the Merchant ID (long code with dashes) and the service key.
- Choose Hepsiburada in the wizard and paste both values. If Hepsiburada gave you an integrator name, enter it too; otherwise leave it empty.
- Hepsiburada has no instant notification: packages you pack are polled every 10 minutes (the "polling only" badge is normal). Press Sync now to fetch them immediately.
- When the courier picks up the package it becomes in transit on Hepsiburada, and delivered on delivery.
Getting an n11 key
- In the n11 seller panel open My Account › API Accounts.
- Copy the API key (appKey) and API secret (appSecret).
- Choose n11 in the wizard; in Store name enter the name in your n11 store link (e.g.
deneme-magazaforn11.com/magaza/deneme-magaza), then paste both keys. - n11 has no instant notification: orders are polled every 10 minutes (the "polling only" badge is normal). Only seller-shipped packages are imported. Press Sync now to fetch them immediately.
- When the courier picks up the package the order is approved on n11 (
Picking). The n11 API does not allow shipped and delivered to be written from outside: you update these steps in the n11 store panel. The Log shows an info line reminding you of this; it is not an error.
Getting a Çiçeksepeti key
- In the Çiçeksepeti seller panel open Account Management › My Integration Details (Hesap Yönetimi › Entegrasyon Bilgilerim).
- Copy the Seller ID and the API key. Test and live keys are different: use the live key.
- Choose Çiçeksepeti in the wizard and paste them into Seller ID and API key. Integrator name is optional; leave it empty unless Çiçeksepeti gave you a name (recommended). The Seller ID cannot be changed after saving; if you entered it wrong, delete the connection and set it up again.
- Çiçeksepeti has no instant notification: orders are polled about every 10 minutes (the "polling only" badge is normal). Because Çiçeksepeti's rate limit is strict, orders may appear a few minutes late. Press Sync now to fetch them immediately.
- All sub-orders of a Çiçeksepeti order become one courier order.
- When the courier picks up the package the sub-orders become Loaded on vehicle (Araca yüklendi; first Preparing if needed) on Çiçeksepeti; on delivery Delivered and the recipient's name are written.
- Writing these statuses may require the seller's own-vehicle shipping permission on Çiçeksepeti. Without it orders still arrive; only the status cannot be written and the error appears in the Log. If you see such an error, ask Çiçeksepeti seller support for this permission.
Carrier filter: The marketplace ships some packages with its own carrier. To avoid courier orders for those, enter the carrier name assigned to you on the marketplace in Only packages assigned to these carriers in the mapping settings (e.g. Kurye, Sendeo; case-insensitive, part of the name is enough). If empty, all packages are imported.
Statuses: By default Trendyol packages in Created (new), Picking (being prepared) and Invoiced are imported; on Hepsiburada Packaged; on n11 Created (new) and Picking (approved); on Çiçeksepeti New and Preparing. Other Çiçeksepeti statuses: ReadyForCargo (ready for cargo), InVehicle (loaded on vehicle), Shipped, Delivered, Returned; an order cancelled on Çiçeksepeti counts as cancelled. On Trendyol the amount of cash-on-delivery packages is written to the order; on Hepsiburada, n11 and Çiçeksepeti payment is taken by the marketplace, so cash on delivery is off.
Getting a Sentos key
Sentos is an integrator that collects the store's orders from all sales channels (marketplaces, website, etc.) in one panel. The courier order's reference has the form SNT-order no.
- In the Sentos panel open My Account › API details (Hesabım › API bilgileri).
- Copy the API Key and API Secret.
- Choose Sentos in the wizard. In Store address enter the Sentos panel address (e.g.
https://firma-adi.sentos.com.tr; onlysentos.com.traddresses are accepted), then paste both keys. - Be sure to fill in the carrier filter. Sentos brings orders from every channel. In the mapping settings, enter the carrier name defined for the courier in Sentos in Only packages assigned to these carriers (e.g.
Kurye). If you leave it empty, every order from every channel becomes a courier order. - Sentos has no instant notification: orders are polled every 10 minutes (the "polling only" badge is normal). Press Sync now to fetch them immediately.
- By default
ApprovedandPreparingorders are imported. Other statuses:AwaitingApproval,Supplying,Shipped,Delivered,Cancelled. For orders paid "Kapıda Ödeme", "Kapıda Nakit" or "Kapıda Kredi Kartı" (cash/card on delivery) the amount is written on the courier order. - When the courier picks up the package, the carrier, tracking number (= courier order number) and tracking link are written to Sentos. This only works for orders whose source is Amazon, WooCommerce, OpenCart, ikas, Shopify or Farmazon. For orders from other channels and on delivery, the stage cannot be written through the Sentos API; you will see an info line in the Log saying so. This is not an error. Update the status in the Sentos panel if needed.
Getting an Entegra key
Entegra is also an integrator that collects orders from all sales channels. No store address is asked; you connect with an API user. The courier order's reference has the form ENT-order no.
- Ask Entegra support to create an API user for your account.
- Note the API user (e-mail) and API password you are given.
- Choose Entegra in the wizard and enter both. The API user cannot be changed after saving; if you entered it wrong, delete the connection and set it up again.
- Fill in the carrier filter (recommended). So that no courier order is created for orders shipped with another carrier, enter the carrier name defined for the courier in Entegra in Only packages assigned to these carriers. If you leave it empty, all orders are imported.
- Entegra has no instant notification: orders are polled every few minutes, and each round scans the last 3 days of orders. Press Sync now to fetch them immediately.
- By default
New,PreparingandReadyToShip(to be shipped) orders are imported. Other statuses:Shipped,Delivered,Invoiced,OnHold,AwaitingApproval. For cash on delivery (kapida_nakit) and card on delivery (kapida_kredi_karti) orders the amount is written on the courier order. - When the courier picks up the package the order becomes Shipped in Entegra, and the carrier, tracking number (= courier order number) and tracking link are written. On delivery it becomes Delivered.
Connecting IdeaSoft
For IdeaSoft, copying keys is not enough: first an API client is created, then the store administrator grants authorization in IdeaSoft (a consent screen). The courier order reference is IDS-order number.
- Log in to your IdeaSoft admin panel as an administrator.
- Open Integrations › API and create a new API client (name it e.g.
Courier). - Choose IdeaSoft in the wizard and press Next. You will see a Redirect address; press Copy.
- Paste this address into the Redirect URI field of the API client in IdeaSoft and save.
- Paste the Client ID and Client Secret IdeaSoft gives you into the wizard. Enter the store's domain in Store address (e.g.
store-name.myideasoft.comor your own domain). - Press Next, choose a Delivery type and press Save and authorize in store.
- IdeaSoft's consent page opens. Log in with the store administrator account and allow access. Afterwards you are brought back to the My online store page automatically and see the green "Store authorization received" message.
- IdeaSoft has no instant notification: orders are polled every 10 minutes (the "polling only" badge is normal). Press Sync now to fetch them immediately.
- By default
approvedandbeing_preparedorders are imported. Other statuses:waiting_for_approval,waiting_for_payment,fulfilled(shipped),delivered,cancelled. For orders paid with Kapıda Ödeme Nakit (cash on delivery) and Kapıda Ödeme Kredi Kartı (card on delivery) the amount is written to the courier order. - When the courier picks up the package the order becomes Shipped in IdeaSoft and the tracking code (= courier order number) is written; on delivery it becomes Delivered.
"Store authorization required" badge: If authorization was left unfinished, was refused, or IdeaSoft's permission lapsed because the connection was not used for a long time (about 2 months), the connection shows a red Store authorization required badge and no orders arrive. Press Authorize in store on the row and repeat step 7. Messages you may see on return from the consent page:
- Authorization was not granted: access was refused on the consent screen; try again.
- The authorization link has expired: the consent page was open for more than 15 minutes; start again with Authorize in store.
- Authorization could not be completed: IdeaSoft granted access but the key could not be obtained. Check the line in the Log; usually the Client Secret is wrong or the redirect address was entered differently in IdeaSoft.
Settings
- Store statuses to import: usually
processingin WooCommerce;paid,pending,authorizedin Shopify. - Delivery type, Pickup district / address (your saved address if empty), Parcel count.
- Open eligible orders automatically: if turned off, you approve each order yourself.
- Write picked up / delivered back to the store: a note and status (WooCommerce) or a tracking link (Shopify) is added to the order in your store.
Cash on delivery
For orders paid by cash on delivery, the order total is written into the courier order's note as "KAPIDA ÖDEME: amount" (cash on delivery); the courier collects it from the recipient. If your store uses a different name for this payment method, add it under Cash on delivery methods.
Waiting for a match
The Waiting for a match tab of the Store orders card shows orders for which no courier order could be opened.
- Read the explanation on the row.
- Press Fix, choose the Delivery district; correct the name, phone and address if needed.
- Keep Remember this province/district spelling on so the same spelling matches automatically next time.
- Press Save and open order.
Retry tries the order again; Skip opens no courier order for it.
Recipients in provinces your courier company does not serve
Your courier company only delivers in the provinces where it has branches. Example: you sold on Trendyol, the recipient is in Ankara, and your courier company is in İstanbul. That order cannot be given to a courier.
- Above the order list there is a "Recipient provinces a courier can serve: …" line. You can check it before you sell.
- If the recipient is not in one of those provinces, no courier order is created. The row shows a red "Outside the service area · cannot be given to a courier" badge.
What should you do?
- Open the Outside the service area tab.
- Send these orders with the marketplace's shipping or your own cargo company.
- Press Skip on the row to close the order.
- If your courier company has started delivering in that province, press Retry.
An order I cancelled in my store
If a courier order was opened for an order you cancel in your store, KOS notices it automatically:
- The courier has not picked it up yet: the courier order is cancelled automatically. You do not need to do anything.
- The courier has picked it up: the courier order is not changed; a red "cancelled in store · courier had picked up, decide" badge appears on the row. Call your courier company to have the parcel brought back or the delivery continued.
- It was already delivered: nothing changes.
The Cancellation decision needed tab lists these orders. If you do not want this, turn off Cancel the courier order too when the order is cancelled in the store in the Edit window.
Managing my connection
Sync now checks the store immediately, Test checks the keys, Edit changes the settings, Log shows recent events, Pause stops taking orders, Delete removes the connection (courier orders already opened are not deleted).
IdeaSoft connections also have an Authorize in store button: use it to obtain store authorization again when the "Store authorization required" badge appears (see IdeaSoft).
Your keys are stored encrypted and never shown again.
Having trouble?
- "Test connection" fails: Check that the store address starts with https and the keys are pasted completely. The WooCommerce key must have Read/Write permission; in Shopify the address must be
store-name.myshopify.com, in ikasstore-name.myikas.com. In Ticimax the authorization code needs theSelectSiparispermission. - No orders arrive: The connection may be paused (press Resume). Press Sync now to check immediately.
- Orders stay in Waiting for a match: Press Fix and choose the delivery district. If you see a price error, contact your courier company.