Modules

Every module below runs in a system we have built. You can filter them by solution type. (263)

Shopify stores and custom modules

Own shipping service at checkout

On every checkout Shopify asks our server, and the customer sees the nearest courier offices and lockers as separate options, plus home delivery. Prices, the number of pickup points and the active couriers are set on one screen, and switching it on or off is one button. Paid shipping apps are no longer needed, and the chosen office reaches the waybill without anyone retyping it.

Runs in: KoreanCare, Cosmetics of Korea

International shipping zones

Each country gets a row with a name, price and delivery time, which the same service shows at checkout instead of Shopify rates. A country is live as soon as it has at least one enabled method. Methods with the same name from different locations show up as a single option for the customer.

Runs in: KoreanCare

Single shipping charge across locations

Shopify asks for shipping separately for each location that holds items in the cart. The service charges only the first location in each round of requests and returns zero for the rest. It does not wait and keeps no memory between rounds. The customer sees one delivery at the advertised price, however many warehouses fulfil the order.

Runs in: KoreanCare

Free shipping

Each market has a permanent free-shipping threshold, and campaigns can add free shipping with a start and end date that switches on and off by itself. The discount also applies to courier-calculated rates at checkout. The cart bar that shows how much is left to the threshold always matches the discount.

Runs in: KoreanCare

Price promotions

A promotion is prepared as a draft, with a flat percentage or a price per product, and goes live on schedule or with a button. Prices are written to Shopify in bulk, so even a large promotion is applied in seconds. The discount is always taken from the regular price, never from an already reduced one.

Runs in: KoreanCare

Choosing promo products by margin

The system proposes which products go into a promotion and at what discount, taking for each the deepest one that keeps the margin above a set minimum. Only items in stock are included. The selection is shown as a list and confirmed by a person before it becomes a promotion.

Runs in: KoreanCare

Automatic discount

An extra discount for the rest of the store that Shopify applies in the cart by itself, with no code to type. It starts and stops with the promotion and does not stack on items that are already in it. An expired discount with the same name is cleared automatically so it does not block the new one.

Runs in: KoreanCare

Nightly swap of sold-out promo products

Every night the system removes products that are sold out everywhere from a live promotion and puts the same number of in-stock items in their place. Newcomers follow the same margin and discount rule, and the promotion status, dates and codes stay untouched. In the morning the promotion shows only stock that can actually be sold.

Runs in: KoreanCare

Check after a promotion goes live

Half an hour after each scheduled launch the system checks the status, prices, discount code and storefront by itself. It records line by line what went through and what did not, and the result stays in the system even if nobody reads the logs. A problem with a promotion shows up in the system in the morning, before a customer has to ask.

Runs in: KoreanCare

Promo collection and announcement bar

At launch the promo collection is filled with the promoted products and added to the store menu, and at the end it is removed. The announcement bar at the top changes with it. Nobody edits the menu by hand on campaign day.

Runs in: KoreanCare

Copying a promotion to another store

The pricing rules of one store are carried over to another as a draft promotion with a price per product. The draft can be narrowed, for example to discounts above a given percentage, and goes live with a button. Two active promotions on the same variants are not allowed.

Runs in: KoreanCare

Discount codes

Discount codes are created, extended and stopped from the system, with start, end and market. The end date is moved in the way Shopify actually accepts for that discount type.

Runs in: KoreanCare

Product card

Every product has one card in our own database: names, per-store copy, prices, barcode, weights and dimensions, links to every channel. Search works in Cyrillic and by code. An edit is saved once and reaches every store without you opening each store's admin separately.

Runs in: KoreanCare, Easy App, BS Omni ERP, LedWhite

New product

A new product is created from one screen with names, description, barcode, weight and locations. The fields follow the store standard, so the product comes out ready for the storefront and the warehouse. The product is saved to our database and to the store in one action.

Runs in: KoreanCare, Easy App, LedWhite

Stock sync between stores

Stock comes from the warehouse, and the system writes it to the Shopify and WooCommerce stores. It detects new, removed and mismatched items and shows them on screen instead of quietly fixing them. A sale in one store lowers the available stock in the others.

Runs in: KoreanCare, Easy App, BS Omni ERP

Sales channels

Each store and marketplace is a channel with its own connection, currency and rules for products, stock and orders. A channel is added from settings, without new code. Every order and every stock movement carries its channel, so reports never mix stores.

Runs in: KoreanCare, Easy App, BS Omni ERP

Orders

The order list filters by payment, delivery, courier, country and fulfilment, with counters showing how many sit under each filter. Filters are saved, so the team works from the same view. An order with a red address or a hold is visible straight from the list.

Runs in: KoreanCare, Cosmetics of Korea

Order page

The order sits on one screen: items by location, payment, customer, address and history. From here you give a discount on a line or on the whole order, release a hold and send the order for picking. A red address blocks sending until someone confirms it.

Runs in: KoreanCare

Order merge

Two orders from the same customer are merged into one shipment with one button, choosing whose courier and address are kept. The merge can be undone. The system flags likely duplicates itself, and "not a duplicate" clears the flag.

Runs in: KoreanCare, Easy App

Order cancellation

Cancellation goes through the system and cleans up everything linked to it: waybills, reserved stock and lines in supplier orders. An order cancelled directly in the store shows up in work sessions and is removed with one button. No stock stays locked because of a cancelled order.

Runs in: KoreanCare, Easy App, BS Omni ERP

Item removal requests

When a customer asks to remove an item, the request appears on the order with the totals before and after. One click edits the order. If the total drops below the threshold, shipping is charged again at the price from the order, and on a paid order the difference is refunded. If you decline, the customer gets a note in their market's language.

Runs in: KoreanCare

Bundles from real orders

The system finds in the order history which products customers buy together and proposes bundles from them. For each it calculates the combined price, the cost and how much can be discounted without the order margin falling below the threshold.

Runs in: KoreanCare

Services and booking

Procedures and services sit in the store as products, with description, price and a booking link. A quiz routes the visitor to the right service. The old site content is carried over without losing pages.

Runs in: Mell laser clinic

Theme design

The owner describes a store block in plain words and the system builds it as a self-contained theme module. It first goes to a preview theme with a link to the real store and goes live with a button. The module can be refined with new instructions or removed.

Runs in: KoreanCare

Custom theme sections

The header, brand and collection pages and sections recreated from an existing site are written straight into the Shopify theme. Before publishing, each change is compared visually with the original. The theme stays in Shopify and the store keeps working with it as before.

Runs in: KoreanCare, LedWhite, GreekTruck, Mell laser clinic

Own storefront on top of Shopify

A separate store with its own design and domain that reads the Shopify catalog. It has its own checkout with cash on delivery and protection against a duplicate order on a repeated click. Orders land in the same system as all the others.

Runs in: Cosmetics of Korea

Store owner panel

The store owner runs everything from one panel: whether checkout is on, tracking codes, policies, pricing rules and short product texts. They also see traffic by period and the latest completed orders. If they enter an invalid value, the panel rejects it and explains what to fix.

Runs in: Cosmetics of Korea

Several stores in one system

Several stores and markets run from one system on the same logic, with the store as a setting. Every order, shipment, stock movement and stock level carries its store, and every report is filtered by it. Currency, VAT and courier are set in the store settings, with no code changes.

Runs in: KoreanCare, Easy App, BS Omni ERP

Own checkout page

The customer completes the order on a page inside the store: they pick a courier office on a map or type an address using the courier's own place list, and shipping is priced by the courier's calculator for exactly this order. With cash on delivery the order goes into Shopify straight away; with a card, a draft is created with the address filled in and a payment link. If the system does not respond, the customer falls back to the standard checkout and the order is not lost.

Runs in: LedWhite

Shop by vehicle

Three drop-downs (make, model and year) lead to the collection filtered by compatibility. The list of makes and models is read from a file or a store setting, with no code change. The buyer sees only the parts that fit their car.

Runs in: LedWhite

Clean filter values

Values in the supplier's text, such as colour, voltage, bulb base and car make, arrive spelled in many ways for the same thing. Before they reach the store, each one passes through a dictionary and gets a single spelling to the store's standard. A buyer who ticks one filter sees every matching product.

Runs in: LedWhite

Categories and menu from one tree

Categories from the supplier feed are matched by name to the site's category tree. Those with no match go to their parent category, so no new structure is invented. The store's main menu is written from the same tree, and only collections that hold stock are published. Each step first shows what it will change and writes only after confirmation.

Runs in: LedWhite

Extra products in the cart

The side cart and the cart page offer products from a chosen collection, a list or the store's recommendations, with an add button. Products already in the cart are not offered. Next to them a bar shows how much is left to free shipping, calculated from a single threshold.

Runs in: LedWhite, GreekTruck

Product specifications

The product page shows a table of specifications, compatibility and box contents, filled from the product's data. The section appears only when there is at least one row, so there are no empty tables. A sticky add-to-cart bar stays visible as the visitor scrolls down the page.

Runs in: GreekTruck

Fast catalogue with attribute filters

The first page of a collection shows instantly, while the full catalogue loads in the background and is kept for the session. Filters on product attributes (skin type, concern, routine step, texture, vegan, pregnancy-safe) cover every product, not just the first ones on the page. Links follow the visitor's language and market.

Runs in: KoreanCare

Prices in euro and lev

On the Bulgarian domain every euro price is also shown in lev at the fixed rate: in the catalogue, on the product page and in recommendations. The conversion happens in one place in the theme, so the same figure appears everywhere. On other markets the second price is not shown.

Runs in: KoreanCare

Ingredients encyclopedia

A page listing cosmetic ingredients, searchable by name, with a link from each ingredient to the products that contain it. A separate page presents active ingredients as collections. Buyers reach products through what they look for in the formula.

Runs in: KoreanCare

Shop by routine and concern

Home page sections lead to collections by routine step (cleanser, toner, essence, serum, moisturiser, sun care) and by concern, skin type, category or ingredient. Headings translate automatically to the visitor's language. Each tile is a store collection, so a new step is added without code.

Runs in: KoreanCare

Customer account with an email code

The customer signs in with a one-time code sent to their email, with no password. In the account they see their orders with the courier status and tracking number, and the saved address fills in by itself on the next order. The code is short-lived and stops working after a few wrong attempts.

Runs in: Cosmetics of Korea

Order emails

The customer receives a confirmation with the items and the savings, and on dispatch an email with the tracking number. The system remembers which emails it has sent, so a rerun does not send a second one. If an order's state is unclear, the system checks it first and only then writes to the customer.

Runs in: Cosmetics of Korea

Machines by series on the website

The machines page is organised in three levels: series, model and content (description, technical data, photos and video, downloadable brochures). Visitors switch between models in a series without hopping between pages. A new series or model is added as a block in the theme editor, with no code.

Runs in: KB Agro

Used machines

Each used machine is a card with a photo, year, engine hours, condition and an optional price. The "Register interest" button leads to an inquiry about that exact machine. Machines are added and removed from the theme editor.

Runs in: KB Agro

Current offers page

Current campaigns appear as cards with a photo, badge, date and up to three highlights: discount, financing, warranty. Each offer links to its own page or to an inquiry. A new offer goes live from the theme editor, with no code.

Runs in: KB Agro

Migrations and integrations

Online store migration

We move your store from OpenCart, WooCommerce, Magento, PrestaShop or another platform to Shopify: products with their variants and images, categories, customers, order history and reviews. We redirect the old URLs to the new ones so you keep your Google rankings. Before go-live we count everything on both sides and show you the differences.

Runs in: LedWhite, Mell laser clinic

Migration from an old system or Excel

We move the data from your current software, database or spreadsheets into the new system: customers, items, stock, documents and open orders. Document numbering carries on without a gap. We reconcile the numbers before go-live, and the old system stays available for reference until the new one has shown it works correctly.

Runs in: KoreanCare, Ivana Agro, KB Agro

Integration with any system that has an API

We connect to any system that has an API (REST, GraphQL, SOAP, webhooks, files over FTP/SFTP or XML/CSV feeds): accounting software, banks, couriers, marketplaces, suppliers, CRMs and warehouse systems. Every request carries the external identifier, so a repeated event never creates a second movement. When the other system refuses something, we log the refusal with its reason.

Runs in: KoreanCare, Easy App, BS Omni ERP, LedWhite

Two-way synchronisation

When two systems hold the same data, such as stock, prices or order status, we decide which one leads for each field and build the sync around that rule. Nobody has to argue about which system is right. A check catches mismatches and shows them on screen instead of letting them pile up unnoticed.

Runs in: KoreanCare, Easy App, LedWhite

Old website migration

We move the pages, copy and images from the old site into the new theme. Old addresses redirect to the new ones, so you keep your rankings and inbound links. After the switch, visitors do not land on broken pages.

Runs in: Mell laser clinic

Documents from the old software

We move the documents from the previous software into the database, and numbering continues from their last number. An order that already has a document there does not get a second one. Reports run without a gap through the day of the switch.

Runs in: KoreanCare

History from the old store

We bring over orders and customers from the store's previous platform. They appear in the main list next to the new orders, sorted by date. Customers go into Shopify without duplicates, and the history is loaded so that new order numbers carry on after the old ones. The migration leaves warehouse stock unchanged.

Runs in: LedWhite

Products from another store

New products from a WooCommerce store arrive in Shopify as drafts, with their images, barcode and price. The system rewrites the copy to the store's standard and translates it into the market languages. A person reviews each draft and publishes it.

Runs in: KoreanCare

Supplier feed import

The system reads supplier feeds on a schedule and updates products, prices and stock by itself. New items show up in a separate list, and you add them to the store from there. Supplier stock reaches the storefront without anyone copying it by hand.

Runs in: LedWhite

Warehouse and order fulfillment

Barcode picking

The picker scans the bin, then the item, and the system marks the line as picked. The list of waiting orders can be filtered by courier and country, and the screen stops a wrong item straight away. The scanning itself fulfils the order, with nothing typed in separately.

Runs in: KoreanCare, Ivana Agro, KB Agro, Cosmetics of Korea

Voice picking

On every scan a recorded voice calls out the bin and the quantity. The audio is pre-recorded, so it plays with no lag even on a modest computer. The picker can keep their eyes on the shelf instead of the screen.

Runs in: KoreanCare

Several pickers at once

Several people pick at the same time, each in their own session, split by courier, country or operator. One order cannot end up in two sessions. The list of waiting orders and its filters stay on screen, so everyone can see what is still left.

Runs in: KoreanCare

Items without a barcode

An item with no barcode is confirmed with a button, and an X of Y counter shows how many are left. The order cannot be closed while any line is unconfirmed. Nothing drops out of the parcel unnoticed.

Runs in: KoreanCare

Receiving with a scanner

Incoming goods are scanned against the purchase order, and each line shows how much was ordered and how much arrived. If an item is not on the order, the scan adds it as a new line. What arrives goes to waiting orders first, and the rest goes to stock.

Runs in: KoreanCare, Ivana Agro, KB Agro

Receiving from the invoice

Goods are booked in from the supplier invoice and then checked physically with the scanner. If someone uploads the same invoice again, the system shows only the missing lines and adds them to the original delivery. A closed delivery is never reopened.

Runs in: KoreanCare

Multi-bin receiving

A scanned bin applies to every item after it until another bin is scanned. Changing the bin before any item is scanned counts as correcting the choice. That way one delivery goes onto the shelves in a single pass.

Runs in: KoreanCare

Put-away

Received goods are put on a shelf and the bin is confirmed by scanning it. Stock per bin updates at the moment of the scan. The next person looking for the item finds it where the system says it is.

Runs in: KoreanCare

Received counts as picked

Goods received for a specific order count as already picked and are not searched for again on the shelves. In picking, that line shows as done. An order that is already fulfilled does not reserve the incoming goods.

Runs in: KoreanCare

Bin locations

Every shelf and position is a record with a barcode, and goods and spare parts are kept per bin. You can see what is in each bin and where every item sits. A bin-versus-stock check shows the differences before they cause trouble at picking.

Runs in: KoreanCare, Ivana Agro, KB Agro

Bin labels

Barcode labels for bin locations are printed from the bin list. Each label carries the bin code the scanner reads during picking and receiving. A new bin is ready for work as soon as its label is printed.

Runs in: KoreanCare, Ivana Agro, KB Agro

On hand and reserved stock

Every item has three figures: on hand, reserved and available to sell. Reservations follow open orders from every channel, and stock is written off on fulfilment. Available stock comes from one formula and reads the same everywhere.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App, BS Omni ERP

Stock movements

Every receipt, write-off and adjustment is a line with a time, a direction and a reason. Each line links to the document or order that caused it. When stock does not add up, this is where you find out why.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App

Stock correction

A barcode or a per-bin quantity is changed straight from the stock list. A new barcode is also written to the online store. Every correction leaves a trace in the stock ledger.

Runs in: KoreanCare

Stock count

Scan the bin, scan the items one by one, enter what was actually counted, and save. Differences are shown before saving and go into the ledger with a reason. For a shop with a till, the count is also reconciled with the till's file.

Runs in: KoreanCare, Ivana Agro, KB Agro, BS Omni ERP

Hourly mismatch checks

Every hour the system compares orders, warehouse and online stores. The result is written as a sentence: which item, where it differs and by how much. Stock reductions with no order behind them show up here too.

Runs in: Easy App, BS Omni ERP

Barcode import from Excel

Barcodes are uploaded from Excel by SKU. Before saving you see which are new, which match and which do not find an item. Only what you approve is saved.

Runs in: KoreanCare

Warehouse as source of truth

Stock is calculated from the bins, pending documents and what has already been picked. The online store receives the exact quantity rather than a difference, so errors do not pile up. A nightly reconciliation catches anything that drifted during the day.

Runs in: KoreanCare

Supplier purchase orders

What the orders are short of is gathered into a purchase order per supplier, with quantities you can adjust by hand. The order goes out by email or as a file, and anything already ordered is not ordered twice. On receiving, deliveries are checked against the order line by line.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App, BS Omni ERP

Checking purchase orders against orders

Before it is sent, the draft purchase order is checked against the customer orders. Cancelled and removed items come off, and items added to an order go on. Orders on hold are left alone.

Runs in: KoreanCare

Restock requests by brand

Out-of-stock and low-stock items are listed grouped by brand. Supplier and price are chosen by hand, the list is exported to Excel and saved as an expected delivery. When the goods arrive they are received against it.

Runs in: KoreanCare

Reorder forecast

From sales velocity and supplier lead time the system tells you when an item will run out. Items are ranked by urgency: out, critical, low. Selected lines become a purchase order in one step.

Runs in: KoreanCare, Ivana Agro, KB Agro

Supplier card

Each supplier has a card with contacts, price list and lead time. It is marked as a daily supplier or an external one with a longer lead time. Purchase orders and forecasts use this data without it being entered again.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App, BS Omni ERP

Importer stock

Before ordering you can see what the importer has in stock. Sales staff know whether a part can arrive quickly without making a phone call. The customer gets an accurate answer the first time.

Runs in: Ivana Agro, KB Agro

Parts issuing

Parts for a service job or a customer are issued against a request: picked by scanner or by hand, then "Complete and issue". Quantities are written off from the bins at that moment. Every issue is visible in the ledger.

Runs in: Ivana Agro, KB Agro

Shared restock list

Shortages from service jobs are collected into one shared draft, with quantities summed per item. Lines can also be added by hand. "Send request" sends everything at once and downloads an Excel file.

Runs in: Ivana Agro, KB Agro

Parts kits per model

Each machine model has a ready kit of spare parts for servicing. For a service job the whole kit is taken instead of searching for parts one by one. The service team knows in advance what to take.

Runs in: Ivana Agro, KB Agro

Parts deliveries for customers

Parts ordered for a specific customer are tracked from request to arrival and handover. You can see what is waiting on the supplier and what is ready for collection. Sales staff can answer the customer without checking by hand.

Runs in: Ivana Agro, KB Agro

Service vans as mobile warehouses

Each service van is its own warehouse, with stock and movements. The technician sees "my warehouse" and knows what is on board before setting off. Mileage is recorded against the van.

Runs in: Ivana Agro, KB Agro

Pack-size allocation

When an item comes in several pack sizes, the system works out how many packs of each to use for the exact quantity. It picks the fewest packs and the fewest pack types, with no surplus. The picker gets a ready list.

Runs in: Easy App

Warehouse analytics

Besides quantities, the warehouse shows stock value, stock that is not moving, sales velocity and upcoming shortages. A separate tab points out incomplete data: items with no price, no bin or a mixed-up unit of measure. Everything is calculated on the server and opens quickly.

Runs in: Ivana Agro, KB Agro

Returns

The warehouse scans the returned parcel, which puts the goods back in stock and cancels the order. The item also comes off the supplier order if it has not been ordered yet. The refund is a separate button, and for cash on delivery a credit note is issued.

Runs in: KoreanCare, Cosmetics of Korea

Direct label printing

A small local app on the warehouse computer prints labels and A6 waybills straight to the thermal printer. There is no print dialog and no printer choice for each parcel. The label comes out the moment the order is confirmed.

Runs in: KoreanCare

Label archive

Every printed label is kept as a PDF in a folder on the warehouse computer. One button downloads them all at once, so every waybill stays at hand after printing.

Runs in: KoreanCare

Packing list with barcodes

The packing list is generated from the order and printed straight from the browser or saved as a PDF. Each line carries a vector barcode that scanners read cleanly, and the header repeats on every page. If a field is missing, it is left blank to fill in by hand rather than made up.

Runs in: Easy App

Couriers and shipping

Speedy

The system creates the waybill straight from the order, to an address, office or locker, with cash on delivery when the order needs it. The label prints at once and the tracking number is saved on the order. Before issuing, the system checks the address against Speedy's own address lists.

Runs in: KoreanCare, LedWhite

DPD abroad via Speedy

Shipments to neighbouring countries go through Speedy's international service and are delivered by DPD. Cash on delivery is collected in the recipient's local currency. The address is checked by the rules of the destination country.

Runs in: KoreanCare

Econt

The waybill to an address or an Econt office is issued straight from the order. The operator picks the town, street and office from Econt's own lists instead of typing them. The system follows the parcel status and shows it on the order.

Runs in: LedWhite, Ivana Agro, KB Agro

ACS Greece

The system prepares shipments to Greece to ACS requirements: postcode, email and address lines within the allowed length. If a required field is missing, the shipment stops and the screen says why. Pickup points are offered only where the service allows them.

Runs in: KoreanCare

Geniki Taxydromiki

Geniki waybills are created from the order, with cash on delivery and island zones. The label comes back as a PDF and prints straight away. The system checks the address against the Greek address lists the courier uses.

Runs in: KoreanCare

ELTA

ELTA labels come through a broker. Before printing, the system checks the number, because the broker can reissue a waybill under a new number without warning. That way an outdated label never ends up on the box.

Runs in: KoreanCare

eMAG, BOX NOW, Sameday

Shipments to easybox and BOX NOW lockers and with Sameday and eMAG couriers are created from the order. The locker is chosen on the order, with nothing retyped in the courier's portal. The tracking number comes back to the order and is tracked like any other.

Runs in: BS Omni ERP

Royal Mail

The system issues labels for UK shipments. The tracking number is saved on the order and the parcel is tracked. It sits in the same list as the parcels of every other courier.

Runs in: BS Omni ERP

DHL and attached labels

You attach a label issued outside the system to the order as a PDF, and the system reads the tracking number from the file itself. A split shipment can have several labels. They print together and all the numbers go into one fulfilment. Couriers without a full connection follow the same path as the rest.

Runs in: KoreanCare

Manual tracking numbers

For postal services and couriers with no connection, the tracking number is typed into the order by hand. From then on the parcel is visible and tracked like the rest. You can also choose your own transport, with a price entered by hand.

Runs in: KoreanCare, Easy App, BS Omni ERP

Freight requests

For pallet and cargo shipments you send a request to the carrier from the system. The CMR is prepared and printed there too, next to the request. All documents for a shipment live in one place.

Runs in: Easy App, BS Omni ERP

Reprint the latest label

The "Get latest label" button reprints the most recent waybill, whatever the courier. It helps when the printer jams or a label tears. No new shipment is created.

Runs in: KoreanCare

Address verification

The system checks the address against the lists of the courier that will carry the parcel. A check with one courier does not count for another. An unrecognised address is flagged red and the parcel does not go out until someone confirms it. If the operator is sure of the address, they can release the parcel deliberately.

Runs in: KoreanCare, LedWhite

Greek addresses

The system matches the Greek address to the list couriers use when handing parcels to each other. It searches literally and never offers a neighbouring village in place of a missing one. A place without a postcode does not mean the address is wrong, and the system does not reject it on its own.

Runs in: KoreanCare

Town names in Latin script

The system finds a town written in Latin script even when it is transliterated differently. The customer may have spelled it their own way, and the system still finds the right record. The parcel is not held up by spelling.

Runs in: KoreanCare

Office from the address field

When the customer chose office delivery but wrote the office into the address field, the system recognises it from the text. The operator confirms the suggested office in one click, so the final say is theirs.

Runs in: KoreanCare

Office picker with map

The system lists the courier's nearest offices with street, distance and a map. The operator sees which office is actually close to the customer and picks it in one click. The choice is saved on the order and goes into the waybill.

Runs in: KoreanCare, LedWhite, Easy App

Courier statuses

The system pulls parcel statuses from the courier and copies them into the order in the store. The customer is notified at the two moments that matter: out for delivery and delivered. A missed status is picked up at the next check.

Runs in: KoreanCare

Daily courier report

For each courier you see delivery success, returns and cash-on-delivery amounts. A delivered COD order is marked paid automatically, with no manual tick. The report shows which courier or market is underperforming.

Runs in: KoreanCare

COD reconciliation

The system reads courier COD statements and invoices from email, or you can upload them as files. It matches lines to shipments by waybill number and recognises columns by their content, wherever they sit. You see what has been paid out, what is missing and where the courier's fee differs from the expected one.

Runs in: KoreanCare, Easy App, BS Omni ERP

Waybills for supplier deliveries

The system issues waybills for the daily shipments from the supplier to the warehouse. It attaches the waybill to the purchase order so they go out together. The supplier does not have to book a courier themselves.

Runs in: KoreanCare

COD amount

One place in the system decides whether a parcel is cash on delivery and for what amount. Every courier uses that decision instead of working it out its own way. The amount on the label matches the amount on the order.

Runs in: KoreanCare

Couriers and services in settings

Each courier and its services are records in the database: country coverage, weight limits, price rows and delivery time. The system decides which courier suits an order from these rules, with no courier name written into the code. The order shows the name, service, delivery time and price, and unsuitable couriers are listed below with the reason in grey. Access keys are stored encrypted, and the "Test connection" button shows the courier's real response.

Runs in: Easy App

Finance and documents

Sales documents

The system issues the sales receipt or invoice from the order as it stands at the moment of issue, with separate numbering for each document series. If the order was edited before shipping, the document reflects the edit. Issuing again for the same order never creates a second document.

Runs in: KoreanCare

Invoices, notes, proformas

Invoices, credit and debit notes, proformas, CMR and transport orders are all issued from one screen. A badge in the menu shows how many orders are still waiting for an invoice. On wholesale sales the system applies 0% and the legal basis on its own: intra-community supply when the VIES number is valid, or export outside the EU. In a service business, closed work orders are invoiced from here without retyping.

Runs in: Easy App, BS Omni ERP, Ivana Agro, KB Agro

VIES VAT number check

The customer's or supplier's VAT number is checked in the VIES register and the answer is kept as evidence: whether it is valid, whose name it is under and when it was checked. Recent checks are remembered so the same number is not looked up twice. If the register does not answer, the system says so plainly and never assumes the number is valid.

Runs in: Easy App

Documents sent automatically

The document is emailed to the customer the moment it is issued, both for a sale and for a credit note. A repeated event never sends a second email. If sending fails, the reason is logged and a button for manual sending stays on the screen.

Runs in: KoreanCare

Credit note for a returned parcel

When a cash-on-delivery parcel comes back unpaid, scanning it on return issues a credit note against the sales document. The sale and its reversal sit side by side in the reports. Nobody issues the note by hand, so nobody can forget it.

Runs in: KoreanCare

Tax audit export

The system builds the monthly e-shop XML file for the Bulgarian tax authority from the documents issued in the chosen month. Dates are calculated in the company's time zone, so a document from the first day of the month never slips into the previous one. The file downloads with one button.

Runs in: KoreanCare

OSS VAT report

EU One-Stop-Shop VAT is calculated per buyer country, separately from domestic VAT. The base and tax are shown after returns, and a sale counts on its payment date. The final figure goes into the return without extra calculations.

Runs in: KoreanCare

Bank and payments

Bank accounts are connected through open banking and transactions arrive on their own, with history going back. Each counterparty sits on one line, however many ways the bank spells it. Transfers between your own accounts count as neither income nor expense. Courier payouts are matched to their statements by protocol number.

Runs in: KoreanCare

Payment orders with approval

A payment order is written as a draft and does not go out until the person in charge presses "Approve" and confirms in the bank. If a supplier's IBAN is new or has changed, a red warning blocks approval until someone confirms the account. Access to the section requires a password and an approved device.

Runs in: KoreanCare

Cash held by couriers

Shows, per courier, how much cash on delivery has been collected but not yet paid out. The system reads payout statements from email and matches them to the bank transfers. You see parcels without a statement, late payouts and differences in amounts. A delivered cash-on-delivery order is marked as paid.

Runs in: KoreanCare, BS Omni ERP

Supplier invoices

The system reads supplier invoices from email and links their lines to warehouse items. Debt is kept as a balance per supplier, with advances and partial payments, and each transfer goes first to the invoice whose number appears in the payment reference. Expenses without an invoice are marked paid with one button.

Runs in: KoreanCare

Receivables

You see unpaid invoices per customer, with due dates and days overdue. A partial payment is recorded against the invoice and the remainder shows at once. The person in charge knows whom to call today.

Runs in: Ivana Agro, KB Agro

Cash desk and expenses

Cash payments, expenses and the cash on hand are recorded as they happen. The day's balance is visible without a separate calculation, and each expense shows up the same day instead of at month end.

Runs in: Ivana Agro, KB Agro

Customers on credit hold

You can put a customer on credit hold. A new sale to them then waits until a manager approves it, and the salesperson sees why it was stopped. That way nobody sells on credit to a customer with unpaid bills.

Runs in: Ivana Agro, KB Agro

Margins

Margin is calculated from the cost price and the actual selling price per product, order and partner. You see what makes money and what only makes turnover.

Runs in: Easy App, BS Omni ERP, LedWhite

Loans and instalments

Loan instalments and credit card repayments are recognised from the bank transfer reference and split into principal, interest, fees and insurance. A drawn loan is not counted as income. A separate section shows how much has been paid on each loan.

Runs in: KoreanCare

Subscriptions and online payment

The customer picks a plan and pays by card, and the system issues the invoice. The subscription status changes on its own based on the payment provider's confirmation. Nobody tracks by hand who has paid and who has not.

Runs in: Shishko

Quotes and contracts as PDF

Quotes, contracts and protocols are built from a template that fills in the client's data from their record. The document comes out ready to print or send, with no copying between files. You change the template in one place and the change applies to every document after that.

Runs in: Digitalna Kantora, MyCRM, Ivana Agro, KB Agro

Sales history

Sales going back years sit in the system's own database, not only in the store platform. Imported old orders are counted by their real date, not the day they were imported. Analysis by period comes back in seconds.

Runs in: KoreanCare

Promotion revenue

For each promotion you see the revenue and margin it brought in, per product. You decide whether to repeat it based on the numbers.

Runs in: KoreanCare

Sales and money reports

Reports on sales, money, stock movements and stock levels, with Excel export. The system compares what was ordered from a supplier with what arrived, line by line. Every report states what is included in the figure and what is not.

Runs in: KoreanCare, Easy App, BS Omni ERP

Restaurant payouts

For a chosen period the system works out per restaurant what was paid online and on receipt, the payment fee and what is owed. Payouts are recorded against the balance, and the report downloads as CSV. Each restaurant sees its own report in its panel.

Runs in: Shishko

Advertising and product feeds

Meta catalogues

The Facebook and Instagram catalog is filled from the store, and product sets are managed from the system. Campaigns are tracked on the same screen, and a button saves the current results so you can compare them later. Price and stock in the catalog are the store's own.

Runs in: KoreanCare, LedWhite

Meta promo feeds

Each market has a separate feed containing only the products in the current promotion, for the ads that feature it. The system never publishes an empty feed, because an empty feed wipes the catalogue in Meta. After a restart Meta gets the last finished feed while the new one is being built.

Runs in: KoreanCare

Product cards in the feed

Instead of the product photo, the ad shows a card made by the system with the product's benefit and the price the customer actually pays after the promotion and discount. When the price changes, the card gets a new address so the old one does not linger in Meta's cache. Card texts are edited separately per market.

Runs in: KoreanCare

Pixel check

After a pixel change the system checks whether conversions actually start arriving in the ad account. The check runs on a schedule and raises one alert rather than repeating it on every run. If the pixel goes quiet, you know within hours, before a week of data is lost.

Runs in: KoreanCare

Google Ads dashboard

Every day the system pulls spend, conversions and return per campaign from Google Ads. The dashboard sits next to orders and stock, so you see advertising alongside what actually sells. There is no need to open the ad account for the daily review.

Runs in: KoreanCare

Google Ads audit

The audit checks account structure, budgets and settings, and includes calculators for budgets and ad maths. It only reads and changes nothing in the account. A person makes any changes after reading the audit.

Runs in: KoreanCare

Google Ads search terms

The screen shows the actual searches the ads appeared for, with spend and conversions for each. The system suggests searches that spend without selling as negative keywords. A person decides which ones go in.

Runs in: KoreanCare

Impression share

You see impression share per campaign, how it moves day by day and why impressions were lost: budget or rank. You can tell when a competitor has started bidding harder. That is what you base budget decisions on.

Runs in: KoreanCare

Change log

Every change to the ad account is shown with its date, time and author, including changes Google makes on its own. Changes to bidding, budget and status are flagged as risky, so no change goes unnoticed.

Runs in: KoreanCare

Real return on ad spend

The system compares the conversions the ad platform reports with the orders in the store. The gap shows how much of the reported figure is real revenue. You set the budget on real orders rather than on the number in the ad account.

Runs in: KoreanCare

Merchant Center feed

Our own product feed for Google Merchant Center, built from the prices and stock in the system. The regular price and the sale price are sent separately, so Google shows the correct discount. Each product's performance in Google is shown next to it.

Runs in: KoreanCare

Unit price in the feed

The system reads the volume, weight or count from the product name and description and sends it in the feed. Google then shows a price per litre, kilogram or unit, as EU rules require. Nobody fills in measures by hand product by product.

Runs in: KoreanCare

Marketplace feeds

The Shopify catalog is published to eBay, Kaufland and other marketplaces, with titles and descriptions that can be suggested by AI. A manual edit to a listing overrides the feed and survives the next run. Marketplace orders go into the merchant's system, and the tracking number is sent back.

Runs in: UltraFeeds

XML feed per client

Any price list can be given to a business client as an XML address protected by a key. The client pulls it from their own system without logging in to ours. When a price changes in the list, the feed is already up to date.

Runs in: Easy App, BS Omni ERP

ChatGPT ads

Campaigns, product feed and pixel for ads in ChatGPT. The server also reports each new order as a purchase, because the theme pixel does not reach the checkout. The system prepares the feed in the format the platform requires.

Runs in: KoreanCare

Email campaigns

An agent proposes a campaign, picks the products and writes the email in two languages following the store's rules for links and images. A person reviews and sends it. After sending, the campaign's revenue is reported alongside it.

Runs in: KoreanCare, Cosmetics of Korea

Weekly email campaigns

The work runs in weekly cycles. Each week has a sale showcase and two emails: one at launch and one reminder. The system makes sure no product leads the emails too often and swaps part of the showcase every week. Subscribers get something new each time instead of the same list with a new date.

Runs in: KoreanCare, Cosmetics of Korea

Newsletter sending

Newsletters go out from your own domain in order and on a schedule, with retries and an unsubscribe link in every email. Before each batch the system checks the price and stock of the featured products again, so no outdated offer goes out. Sending can also target subscribers in a single city.

Runs in: KoreanCare, Shishko, Cosmetics of Korea

Competitor prices

The system checks competitors' prices for the same products on a schedule. When a price changes, it alerts you and shows the gap against your price. A person decides whether to respond.

Runs in: KoreanCare

Pricing strategy

For each product you see the cost price, the margin and how they change at different discounts. Strategies differ by minimum margin and maximum discount, and a scenario is tried before it goes live. The suggested discount never pushes margin below the chosen floor.

Runs in: KoreanCare

Sales priority

The system ranks the assortment by what should get space in promotions and emails. Own stock is weighed by how long it will sit in the warehouse, and made-to-order stock by margin and turnover. A drop after a stock-out is not counted as lost demand.

Runs in: KoreanCare

Bundle suggestions

The system suggests bundles from product pairs that customers already buy together. For each pair it works out how much discount is possible without the order margin falling below the threshold. Average order value goes up with products that real data shows are bought together.

Runs in: KoreanCare

Server-side Meta conversions

Some purchases and started checkouts bypass the standard checkout and go through the custom checkout page or the phone-only quick order. The server sends them to the pixel. Each event carries its own key, so a resend is not counted twice. That way the ads also learn from sales the browser pixel never sees.

Runs in: LedWhite

Listing quality

The system scores each listing on what the marketplace uses for ranking and filters: the recommended attributes for its category, the title, photos, barcode and description. The weakest listings come first, with a note on exactly what is missing. Scoring sends nothing to the marketplace. It only shows where work is needed.

Runs in: UltraFeeds

Item check before publishing

Before every run to a marketplace, items pass the same check. The system fixes safe things such as price format or item condition by itself and lists what it changed. A duplicate SKU or a missing required field stops only that item, and the screen says why. That way no listing goes out only to be rejected later.

Runs in: UltraFeeds

Bulk price change for listings

Prices of all listings on one marketplace site are raised in one go within a set range, with a rule for what the price ends in. Before the change the system pulls the listings again from the marketplace, so nothing is calculated from an outdated copy. Next to the button the account's remaining monthly selling limit is shown.

Runs in: UltraFeeds

Buyer messages

You read and answer conversations with eBay buyers from the dashboard without logging in to eBay. Nothing is stored on our side. The thread loads from eBay when you open it and the reply goes straight there. If the account lacks the required permission, you get a reconnect button instead of an empty screen.

Runs in: UltraFeeds

SEO and content

SEO audits

The audit walks through the store's pages and products and checks titles, meta descriptions, structured data and Merchant Center data. Each issue gets a written fix proposal. Nothing reaches the store until a person approves it.

Runs in: KoreanCare

SEO lab

Enter a site address and start an audit: technical, schema, E-E-A-T, speed and AI-search readiness. The agent crawls the site in the background and you follow its log live. At the end you get a report with charts and a downloadable PDF.

Runs in: KoreanCare

Search Console

Google Search Console data is shown inside the system, split by market and domain: queries, impressions, clicks and average position. You see which pages are slipping and which queries get impressions but no clicks. That tells you what to rewrite, so you are not guessing.

Runs in: KoreanCare

Blog

Topics are chosen from what people search for. Each article is written from a template and translated into the store's languages, and internal links point to the page in the same language. You can publish by hand or let the autopilot write at a pace you set. The finished article goes into the Shopify blog.

Runs in: KoreanCare

Buyer guide pages

Each page answers one buyer question, such as "which one should I pick" or "which is better", with an explanation, specific products from the catalog and an FAQ. Products are picked from stock by code rather than by the model, so the page never recommends something you don't sell. The text is written separately for each language.

Runs in: KoreanCare

Finding new topics

On a schedule, the system looks at what people are searching for right now and picks a topic the catalog actually covers. Topics without enough products in stock, or that already have a page, are skipped. The chosen topic becomes a new buyer guide page.

Runs in: KoreanCare

Content performance

Every morning the system records figures for each published page: impressions and position from Search Console, sessions and revenue by landing page from GA4, and, for pages with no impressions, whether they are indexed at all. You see how things change over time, and which content brings sales and which brings nothing.

Runs in: KoreanCare

Collection SEO

Each collection gets an intro above the products, a longer text below them and an FAQ that is published as FAQPage markup. The copy is written from the products actually in the collection, and brand names are never translated. The SEO title and meta description in Shopify are filled in too.

Runs in: KoreanCare, LedWhite, GreekTruck

Collection and brand listing pages

The collections and brands listing pages are built from the live catalog, so a new brand appears on its own. Collections are grouped by their address, each brand links to its collection and empty ones are hidden. The copy is stored for each language, so search engines see real text on the page.

Runs in: KoreanCare

Translations

A product, page or article is translated into all of the store's languages with one button, or in bulk overnight. The translation adapts the text to the market, and chosen fields such as ingredients stay untranslated. The system also finds stale translations, where the original changed after it was translated.

Runs in: KoreanCare, BS Omni ERP

Product naming

The title is assembled from one formula in every language: product type, brand, original Latin name and size. The Latin name stays exactly as the manufacturer writes it, because that is how people search for it. Where channels need a different name, the product carries two names.

Runs in: KoreanCare, BS Omni ERP

Name check

Before saving, the system checks that the new name describes the same product. A neighbouring variant from the range or a different scent does not pass. When in doubt the product is not saved and the operator sees why. That way a wrong name never reaches the store.

Runs in: KoreanCare

Fast static site

The site is generated as ready HTML pages with no heavy framework, so it opens instantly. It ships with structured data, a sitemap, RSS and llms.txt. Search engines and AI assistants read the content without running JavaScript.

Runs in: Digitalna Kantora

Local SEO

The audit checks the Google Business Profile, address and phone data, reviews and local schema. The result is a plan of what to fix so the business shows up in city searches and in AI assistant answers. Suited to businesses with a physical address.

Runs in: Mell laser clinic

AI agent readiness audit

The check crawls the whole catalogue, every product and every collection, and fetches each page the way an agent sees it, without JavaScript. For each page it reports whether it shows the price, stock, who the product is for and where it ships. It follows fixed rules with no AI model involved, and you can run it as often as you like.

Runs in: KoreanCare

Visibility in AI assistants

We ask a web-searching AI assistant real buyer questions in the language of each market. We record who it cites, on which topics the store is missing and who shows up instead. That result is the starting point against which we measure every fix.

Runs in: KoreanCare

Site speed

Once a day the system runs the most visited pages through PageSpeed, for mobile and desktop. Results are kept per day, so you can see when, and after which change, the site slowed down. The test starts on its own; nobody has to run it.

Runs in: KoreanCare

Traffic analytics

Google Analytics 4 data is shown inside the system: sessions, sources, landing pages and revenue. Revenue is credited to the page where the visitor entered the site, rather than to checkout. That shows which page actually leads to a purchase.

Runs in: KoreanCare, Cosmetics of Korea

Product structured data

Every product carries its own data for Google (product, offer and breadcrumb), and the site carries data for the organisation and its search box. A barcode goes in as a GTIN only if it is a real code with a valid check digit, because Google rejects internal barcodes. That way products do not lose their rich results over one invalid field.

Runs in: GreekTruck

Full-catalogue SEO in the market's language

The system writes descriptions, meta data and alt texts for the whole catalogue in the market's language, in overnight batches. Where a well-described reference version of the product exists, it translates the text from that. Facts come only from the data, with no invented warranties or delivery times. Before every batch the system keeps a copy of the old text, and a rerun skips what is already written.

Runs in: GreekTruck

AI agents and automations

Personal AI assistant

P.A.I. follows the team chat and records the tasks agreed there. Nobody has to copy them into a separate list. The tasks stay in front of the team until someone closes them.

Runs in: BS Omni ERP

Meta ads agent

The agent reviews Facebook and Instagram campaign results per market and proposes what to launch, pause or rewrite, with the copy ready. Every ad links to the site for its market. A post with no link to the site cannot become an ad. A person launches the ad with a button.

Runs in: KoreanCare

Ad video and voiceover

The agent writes the clip script and the video-generation prompt, marking word stress so the Bulgarian voiceover sounds right. The clip is made in an external tool and then uploaded back into the system. From there, one button turns it into a post or an ad.

Runs in: KoreanCare

AI ad images

The system makes ad images from the brand profile and a brief, in the format each platform needs. Each image passes an automatic quality check before you see it. If image generation is unavailable, you still get the finished brief and the prompts.

Runs in: KoreanCare

Lead agent

The lead agent assigns tasks to the other agents, reviews their work and sends weak results back for another go. It tracks AI spend against the budget and stops when the budget runs out. In the operations chat it answers questions and takes instructions.

Runs in: KoreanCare

Agent permissions and approvals

There is a check between the model's decision and the action itself. The agent can read freely. Actions that send, spend, delete or change a setting stop and wait for explicit confirmation, each one separately. If no confirmation arrives in time, the agent does nothing.

Runs in: KoreanCare

SEO agents with approval

After the audit, the agents write a proposal for each task, check each other's work and hand it to the owner. Once the owner approves, translations into every language start on their own. One sentence in the chat pauses or resumes the work. Nothing goes live without approval.

Runs in: KoreanCare

AI agent briefings

When you hand a task to an external AI agent, you put the briefing together here. The system adds the context itself: the company rules and an up-to-date map of the API with its available endpoints. The agent starts with an accurate picture instead of guessing.

Runs in: KoreanCare

AI product copy

The system writes each description to a fixed template with the same sections for every product, then adapts it for each store and language. The text is built from the product's own data. A person reviews it and saves it.

Runs in: KoreanCare, BS Omni ERP, Easy App, LedWhite, UltraFeeds

AI invoice reading

You upload a supplier invoice and the system reads its lines and matches them to catalogue items by SKU, by links it has already learned and by name. You confirm uncertain matches by hand, and the system remembers them for next time. The confirmed invoice books the goods into stock.

Runs in: KoreanCare

Data from photo or PDF

The system reads a photo or PDF (a daily menu, an accounting statement, a photo to recognise) and turns it into structured data. First it shows what it read and what it matched, without saving anything. Saving is a separate button that a person presses after checking.

Runs in: Shishko, Blesno, MyCRM

Shipping label reading

The operator attaches a shipping label PDF and the courier and tracking number fill in on their own. The model reads the page as a person would, including the number under the barcode. A number typed by hand always wins over the one that was read.

Runs in: KoreanCare

AI mail triage

Every incoming email gets a priority, category, language and short summary, so urgent mail is seen first. A foreign-language email is translated with one button.

Runs in: KoreanCare, Easy App, UltraFeeds

Daily AI brief

Every day the system pulls together data from sales, ads, traffic and search and writes a short review. It says what is rising, what is falling, where money goes without results and what to do first. It takes minutes to read in the morning.

Runs in: KoreanCare

Ads chat

Ask in plain language about Google Ads campaigns, such as what spends without sales or which search terms to exclude, and the chat answers from the real data. A short daily digest of changes comes too. A person makes the actual changes to the campaigns.

Runs in: KoreanCare

AI sales analysis

The code calculates the figures. The model gets the finished table and writes the conclusions and recommendations. It never makes up numbers, and the conclusions are in plain language.

Runs in: KoreanCare, MyCRM

Scheduled automations

Recurring work runs on a schedule: store syncs, reconciliations, supplier orders, promotions, reports and checks. Nobody has to remember to start them, and their results show up in the relevant module.

Runs in: KoreanCare

Mobile and offline apps

Field service app

The technician sees the day's schedule, opens a job and taps "Arrived", then records labour, parts and the required photos. The customer signs with a finger on the screen, and that signature closes the work order, writes off the parts and sends the card to invoicing. Nobody in the office retypes anything from paper.

Runs in: Ivana Agro, KB Agro

Offline mode

In a field or a barn with no signal the app keeps working and keeps signed work orders on the phone until there is a connection. As soon as a signal appears, it uploads them. The profile shows how many are waiting, and an "Upload now" button sends them straight away. The same card cannot be written off twice.

Runs in: Ivana Agro, KB Agro

Android and iOS from one codebase

We write the app once and it ships to Android and iOS, and to the web where needed. We make a fix or a new screen in one place and it reaches every phone at the same time. Different roles see different screens inside the same app.

Runs in: Shishko, Blesno

Native iOS app

A native iPhone app for running the store from a phone: orders, products, warehouse stock and the daily dashboard. It uses the same API as the web system, so the data is the same and nothing has to be synced separately.

Runs in: KoreanCare

Updates without the app stores

We upload the new version of the screens to our server and phones download it the next time they open the app, with no new build in Google Play or the App Store. If a change needs new native code, the app says a full update is required. That way a fix reaches people in the field the same day.

Runs in: Ivana Agro, KB Agro, MyCRM, Shishko

Team GPS

Company phones report their position during working hours only. The manager sees the team live on the map, the day's routes and when each phone last checked in. When a technician completes a job at a new customer, the system saves the customer's coordinates automatically.

Runs in: Ivana Agro, KB Agro

Camera barcode scanner

The phone camera reads barcodes and QR codes with no separate scanner. The technician scans the part being fitted and it goes onto the work order as the correct stock item.

Runs in: Ivana Agro, KB Agro

Push notifications

A new job, an approval, a reassignment or an overdue task arrives as a notification on the right person's phone. Tapping it opens the relevant screen directly. One event sends one notification, even if the server restarts.

Runs in: Ivana Agro, KB Agro, Shishko

Warehouse terminal screen

Scanning runs full screen with no menu and nothing extra, suited to a terminal or a phone on the picking cart. The warehouse worker sees only the current step and large buttons.

Runs in: KoreanCare

Warehouse mode

You switch a specific computer or phone in the warehouse to show only the warehouse modules. The setting applies to the device whoever is logged in, so the warehouse machine does not open reports or finance by mistake.

Runs in: KoreanCare

Mobile-ready system

Every screen of the system opens on a phone, with no separate app. Wide tables turn into cards and the main actions stay within thumb reach.

Runs in: KoreanCare

CRM, ERP and custom business systems

Daily dashboard

This is the first screen in the morning: today's orders, overdue tasks and the things waiting for a decision. The manager sees where to start without going through the menu. The dashboard is shown only to people allowed to see it.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App, BS Omni ERP

Business analytics

Turnover, margin, returns, stock turnover and markets, calculated from the orders in the system with no separate spreadsheet. You pick the period and market on screen. Reports and stock work from the same records, so the numbers do not drift apart.

Runs in: KoreanCare, Easy App, BS Omni ERP

Decision centre

Suggestions from the agents and findings from the reports land in one list, ranked high, medium or low priority. Each item leads to the screen where you act on it. The decision and the action stay with a person.

Runs in: KoreanCare

Customer file

Everything about a customer is in one place: contacts, orders, tasks and conversations. Wholesale customers also have their own price list, payment terms and an account manager. Search works by name, company ID, city and phone, and the system stops a second record with the same company ID at entry. A sales rep sees their own customers, and the manager sees all of them.

Runs in: KoreanCare, Ivana Agro, KB Agro, Easy App, BS Omni ERP, MyCRM

Sales rep tasks

Calls, meetings, quotes and visits are kept as tasks tied to a customer and a due date. When a deal moves to the next stage, the system creates the next task by rules the manager sets. Overdue tasks show in red and urgent ones have their own list.

Runs in: Ivana Agro, KB Agro

Sales pipeline

Each customer moves through clear stages: contact, meeting, quote, negotiation, contract, invoice, machine. The customer file shows how far they have got and what exists at each stage. Reports show which deals are stuck and what is expected to close.

Runs in: Ivana Agro, KB Agro

Quotes

A quote is built from the model catalog and prices and goes out to the customer as a PDF. It is attached to the deal, so the "Quote" stage is marked automatically. You do not enter the customer and machine again for the later stages.

Runs in: Ivana Agro, KB Agro

Manufacturer orders

A sold machine that is not in stock is ordered from the manufacturer in the same system. The order has a status and shows which customer and deal it belongs to. The sales rep knows what to tell the customer without calling purchasing.

Runs in: Ivana Agro, KB Agro

Model catalogue

Machine brands and models with their specifications and brochures to send to customers. The model for a quote or for the machine registry is picked from here. The catalogue is kept in one place, so every sales rep works from the same data.

Runs in: Ivana Agro, KB Agro

Customer machine registry

Every machine sold or serviced has its own record: serial number, engine, year, owner. Work orders, warranty cases and replaced parts build up against it. When the customer calls, the machine's history is on one screen.

Runs in: Ivana Agro, KB Agro

Service schedule

Service jobs are planned by technician and by day, and the system does not let two jobs collide in the same slot. Unapproved jobs stand out until the manager approves them. The technician gets the change on their phone.

Runs in: Ivana Agro, KB Agro

Warranty claims

A warranty repair is flagged when the job is created, and on the work order each part can be marked as out of warranty. The case goes to the importer and its status is tracked until it is approved or rejected. It is clear what the importer will cover and what the customer pays.

Runs in: Ivana Agro, KB Agro

Service bulletins

Manufacturer service bulletins are tracked as their own case type with the importer, tied to the specific machine. The status shows whether it is open, awaiting an answer or resolved. The machine's history shows which bulletins have been carried out.

Runs in: Ivana Agro, KB Agro

Technician workload

A per-technician report for a chosen period: how many jobs they had, how many they completed and how many are still open. The figures match the manager's mobile app because they come from the same source. It shows who is overloaded and who has capacity.

Runs in: Ivana Agro, KB Agro

Customer map

Customers appear on the map at their farm location, filtered by sales rep and region. Each point opens the customer file or turn-by-turn navigation. Sales reps plan their visits on the map.

Runs in: Ivana Agro, KB Agro

Transport

Moving machines and parts is handled as jobs with a vehicle, a driver and a date. Each driver has their own schedule and a handover protocol is printed on delivery. Transport is no longer arranged by phone and does not get lost between departments.

Runs in: Ivana Agro, KB Agro

Approvals

Actions that need a human decision wait in one list: payments, till discounts above the limit, actions proposed by an agent. The person in charge presses "Approve" or "Reject" and the action goes ahead or stops. Every decision is recorded with who made it and when.

Runs in: KoreanCare, BS Omni ERP

Team chat

An internal chat for the whole team inside the system, with history, photos and attachments. New messages reach colleagues as notifications, including on their phones. Work conversations do not scatter across personal apps.

Runs in: Ivana Agro, KB Agro, Easy App, BS Omni ERP

Team tasks

Each task has an owner and a due date and is tracked until it is done. If you do not pick a date, the system sets a default one. In systems with a group chat, a task is created straight from the conversation without retyping. Everyone sees their own tasks, and the manager sees all of them and which are overdue.

Runs in: Easy App, BS Omni ERP

Mail

Mail lives inside the system, full screen, with several mailboxes, replies and attachments. Messages are read directly from the mail server and nothing is copied. The team handles mail without switching to another program.

Runs in: KoreanCare, Easy App, BS Omni ERP

Calendar

Team meetings, tasks and events sit in one shared calendar. Everyone sees what is coming up today and this week, and meetings do not stay hidden in someone's personal phone.

Runs in: KoreanCare, Ivana Agro, KB Agro

Shared files

Shared storage for the team's documents (contracts, price sheets, photos) inside the system. Who sees what depends on the user's permissions. Files do not sit in someone's personal inbox or on a single computer.

Runs in: Easy App, BS Omni ERP

Customer risk check

From the order, the system checks the customer's phone, email and name against a public register of unreliable buyers. The result is shown next to the order before the parcel is sent. Whether to ship stays a human decision.

Runs in: KoreanCare

Customer quiz

A quiz on the site asks customers what they need. The answers are saved to their profile and are visible in the system. Customers are then grouped by the needs they stated themselves.

Runs in: KoreanCare

Public tenders and programmes

The system pulls procedures from the public portal together with their documents, with no manual downloads. It assesses whether we are a fit and flags suspicious ones. For a chosen procedure it prepares a draft offer to its requirements.

Runs in: KoreanCare

Car bulb finder

Find the right bulb by make, model and position through the manufacturer's public catalog. Data fetched once is kept in our cache, so the next search does not wait for the external service. Fetching runs slowly and steadily to stay within the catalog's rate limit.

Runs in: KoreanCare

Roles and permissions

Each user has a role (owner, sales rep, service, technician, driver, accountant) and sees only their own screens and data. An administrator can "log in as" another user to see exactly their screen, then switch back. A new employee gets an account and permissions from one screen.

Runs in: Ivana Agro, KB Agro, Easy App, BS Omni ERP

Multiple companies

Two or more companies run in one system, and you switch between them with a single choice. Each has its own couriers, VAT rates, mailboxes and per-channel rules.

Runs in: Ivana Agro, KB Agro, Easy App, BS Omni ERP

Built-in manual

The user manual lives inside the system and describes the screens as they are. Every user can read it, with no special permission. New staff learn from it instead of asking colleagues about every button.

Runs in: Ivana Agro, KB Agro, Easy App, BS Omni ERP

Feature requests

The team records what gets in the way or what is missing directly in the system rather than over the phone. Each request has a status, so it is clear what has been accepted, what is in progress and what is done. Development works from one list instead of memories of conversations.

Runs in: Ivana Agro, KB Agro, Easy App, BS Omni ERP

System map

An interactive diagram of the modules and the links between them. It shows which module connects to which. It helps when a new employee starts and before any change to the system.

Runs in: KoreanCare

Training

Team courses inside the system, with a test at the end. The correct answers never reach the browser, so the score appears only after submitting. Every attempt is stored with its score and pass or fail.

Runs in: KoreanCare, Ivana Agro, KB Agro

Themes and quick search

Each user picks a colour theme that suits them for the whole day. Ctrl+K opens a search across every module, and a few keystrokes take you to the screen you need without digging through the menu.

Runs in: KoreanCare

Daily sales rep digest

Every afternoon the system compiles a summary per sales rep: meetings, tasks by type, quotes sent and contracts signed. The digest is kept by date, and the manager can open it for any day or regenerate it with a button. It shows who did what without asking each person.

Runs in: Ivana Agro, KB Agro

Website inquiries into the CRM

The website's inquiry form writes straight into a small CRM, with no mailbox in between. Each inquiry has a status and new ones are counted separately, so nothing goes unanswered. From the inquiry you move on to a client, a quote, a contract and a protocol in PDF.

Runs in: Digitalna Kantora

Wholesale, retail and POS

In-store till (POS)

The till in the physical store works with a scanner or search, and an item sold in several pack sizes opens a pack picker. The sale is saved as an order on the store channel, and a company invoice can be issued on the spot. A discount above the limit waits for admin approval, and returns go through the same screen.

Runs in: Easy App, BS Omni ERP

Orders from every channel

Orders from Shopify, WooCommerce, eMAG, eBay, B2B, the till and incoming mail land in one list in the same format. Each order leads to a waybill and an invoice, and editing and cancelling happen in one place. The channel is shown on every row, so filtering by store is one click.

Runs in: Easy App, BS Omni ERP

Order work lists by stage

Every order shows its stage: received, in the buffer, shipped, invoiced, completed. The tabs are ready-made work lists: waiting to ship, partly shipped, waiting for an invoice, inquiries, archive. The count on each comes from the server. Filters are kept in the page address, so a shared link opens the same list for a colleague. Every list downloads as a CSV for Excel.

Runs in: Easy App

Orders with problems

The problem is spelled out in words on the order row: "missing stock", "no address", "duplicate". Each word is a button that shows only the orders with that problem. The open order lists which items are short, and a duplicate gets "Merge" and "Not a duplicate" buttons.

Runs in: Easy App

Quick order entry

A phone or walk-in order is entered from a catalog with a cart, as on the wholesale site. You pick the customer and prices come from their price list. The order joins the common list and follows the same path as online orders.

Runs in: Easy App, BS Omni ERP

Wholesale order from a PDF

The customer sends their order as a PDF and you upload it on one screen. The system shows the lines it read and which item it matched to each. An unknown code stays unmatched until a person picks the right item. One click turns it into an order on the customer account, priced from their own price list.

Runs in: Easy App

Orders from email

A mailbox set up for orders creates an order from each incoming email by itself, for example for dropshipping. The order joins the common list under its own channel and follows the same path to waybill and invoice.

Runs in: BS Omni ERP

Requests for quotes

A business customer without a price list sends their cart from the wholesale site as an inquiry. It enters the orders with its own number and an "inquiry" badge, with no prices and without reserving stock. The sales rep sets the prices, the inquiry becomes an order and carries on along the usual path.

Runs in: Easy App

Order buffer

The buffer is where goods actually ship from. An order is sent to it with a button, once and in full, with the customer details and the exact pack sizes, and stock there drops straight away. If a line cannot be covered exactly, the button says which one and why, and does not send an incomplete order.

Runs in: Easy App, BS Omni ERP

Partial shipments

A large wholesale order ships in several pick runs, each with its own number and exactly its own quantities, and each is confirmed as "Picked". The order tracks separately how much has shipped and how much has been invoiced, because the two do not move together. The remainder sits under "Partly shipped" until it goes.

Runs in: Easy App

Waiting customers

One screen shows what each customer is waiting for across all their orders and what of it is in stock today. Waiting items ship in full or in part by choosing a quantity per line. Nobody maintains the list by hand. Once the goods leave, the line disappears by itself.

Runs in: Easy App, BS Omni ERP

Price lists

Retail and wholesale price lists, with and without VAT, by group and by customer, with the margin next to each price. You upload an Excel file, the system shows the difference against current prices and saves the new ones only after you confirm. The list also downloads back to Excel. Every change stays in the history, and before an old version is restored the system saves the current one.

Runs in: Easy App, BS Omni ERP

Wholesale site (B2B)

Business customers log in with an account created from the system and see the catalog at the prices of their own price list. An order from the site goes straight into the common list. The site does not accept it without complete company details, so that it can be invoiced later. A packing list with item barcodes is printed for the shipment.

Runs in: Easy App, BS Omni ERP

Quick order with a phone number

On the product page the customer leaves only a name and phone number, without going through checkout. The request lands in a separate list in the system, and a resubmitted form does not create a second row. A staff member calls the customer and then creates the order.

Runs in: LedWhite

Order sheet

A button on the order prints an A4 sheet with what needs to be picked and where the parcel is going. The data is the same as on screen; the sheet calculates nothing of its own. It prints through the office print program or opens as a PDF.

Runs in: LedWhite

Online restaurant orders

The customer orders from the restaurant's menu for pickup or delivery and pays by card or on receipt. The restaurant accepts the order and marks it ready and handed over, while the customer follows the status through a personal link. Afterwards they can rate it, and ratings show in the restaurant's panel.

Runs in: Shishko

Table reservations

A guest requests a table for a date and time from the restaurant's page. The restaurant confirms or declines, and the guest sees the status through their personal link and can cancel from there. Requests sit in the restaurant's panel next to the orders.

Runs in: Shishko

Lunch menus by city

Restaurants publish the day's lunch menu with dishes, prices, portion weights and the time it is valid until. Visitors pick their city and see all of today's menus in one place. The menus also go out in the morning email to subscribers in the same city.

Runs in: Shishko

Got a process that keeps getting stuck?

Describe it briefly. We will tell you how we would solve it.

Send an inquiry
Call us