OpenClaw + Shopify ile e-Ticaret Otomasyonu
Shopify bir platformdur. OpenClaw, bunun üzerinde çalışan operasyon zekasıdır. Shopify vitrin, ödeme ve ödeme işlemlerini yönetirken, bir Shopify mağazasını geniş ölçekte çalıştırmanın operasyonel karmaşıklığı (sipariş yönetimi, envanter optimizasyonu, müşteri iletişimi, dolandırıcılık taraması, iade işleme, kişiselleştirme), Shopify'ın yerel akışlarının sağladığının ötesine geçen otomasyon gerektirir.
OpenClaw temsilcileri, operasyonel katmanı özerk bir şekilde yönetmek için web kancaları ve Admin API aracılığıyla Shopify ile entegre olur. Bu kılavuz sekiz otomasyon alanını kapsamaktadır: sipariş işleme, sahtekarlık tespiti, envanter yönetimi, müşteri desteği, kişiselleştirme, iadeler ve geri ödemeler, pazarlama otomasyonu ve satıcı koordinasyonu.
Önemli Çıkarımlar
- OpenClaw, Shopify web kancalarına gerçek zamanlı olarak abone olarak sipariş olaylarına, envanter değişikliklerine ve müşteri işlemlerine bir saniyeden kısa sürede yanıt verilmesini sağlar.
- Sipariş İşleme Temsilcisi sipariş karşılama yönlendirmesini, nakliye etiketi oluşturmayı, taşıyıcı seçimini ve müşteri bildirimlerini uçtan uca yönetir.
- Dolandırıcılık Tespit Aracısı, yerine getirme başlamadan önce davranışsal sinyaller, adres doğrulama, hız kontrolleri ve üçüncü taraf risk puanlarını kullanarak her siparişi tarar.
- Envanter Aracısı, depolar ve Shopify konumları genelinde stok seviyelerini izler, yeniden siparişleri tetikler ve vitrindeki düşük stok mesajlarını yönetir.
- Müşteri Hizmetleri Temsilcisi, sipariş durumu sorgularını, iade taleplerini ve genel destek sorularını marka sesinizde otomatik olarak yönetir.
- Kişiselleştirme Aracısı, bireysel müşteri geçmişine göre uyarlanmış ürün önerileri, sepet kurtarma mesajları ve satın alma sonrası sekanslar oluşturur.
- Tüm otomasyon gözlemlenebilir: her temsilci eylemi, tam denetim takibini içeren bir kontrol panelinde görünür.
- ECOSIRE, büyüyen ve kurumsal ölçekteki Shopify mağazaları için OpenClaw Shopify entegrasyonlarını oluşturur ve yönetir.
Entegrasyon Mimarisi
OpenClaw, Shopify'a üç kanal aracılığıyla bağlanır:
Shopify Webhook'lar: Birincil gerçek zamanlı kanal. OpenClaw yanıt vermesi gereken olay türleri için webhook uç noktalarını kaydeder: orders/create, orders/updated, orders/fulfilled, inventory_levels/update, customers/create, refunds/create ve daha fazlası. Shopify, tüm webhook yüklerini HMAC-SHA256 ile imzalar; OpenClaw, işlenmeden önce imzayı doğrular.
Shopify Yönetici API'si: Web kancalarında bulunmayan verileri sorgulamak ve Shopify kayıtlarını oluşturmak/güncellemek için kullanılan REST ve GraphQL API'leri. Fiyat limitleri, sızdıran kova algoritması kullanılarak OpenClaw'ın Shopify araç adaptörü tarafından yönetilir.
Shopify Storefront API: Vitrine öneriler ve dinamik içerik ekleyen kişiselleştirme özellikleri için.
export const ShopifyTool = defineTool({
name: "shopify",
type: "rest",
baseUrl: `https://${process.env.SHOPIFY_SHOP_DOMAIN}/admin/api/2024-01`,
auth: {
type: "header",
header: "X-Shopify-Access-Token",
value: "${SHOPIFY_ACCESS_TOKEN}", // Vault reference
},
rateLimiting: {
type: "leaky-bucket",
bucketSize: 40,
refillRate: 2, // 2 requests per second (REST API rate limit)
},
webhookVerification: {
secret: "${SHOPIFY_WEBHOOK_SECRET}",
algorithm: "hmac-sha256",
},
});
Sipariş İşleme Temsilcisi: Makine Hızında Gerçekleştirme
Siparişin verilmesi ile siparişin yerine getirilmesinin başlatılması arasındaki her dakika, bir şeylerin ters gidebileceği bir dakikadır; stoklar tükenir, nakliye firmasının kesintisi geçer, müşterinin hevesi azalır. Sipariş İşleme Temsilcisi, bir siparişin oluşturulduğu anda yerine getirme sırasını başlatır.
Yerine getirme iş akışı:
1. Adım — Sipariş Doğrulaması: Sipariş satır öğelerine göre envanter kullanılabilirliğini kontrol edin. Herhangi bir ürünün stokta kalmaması durumunda, ön siparişi tetiklemeden önce ürünün alternatif bir yerden gönderilip gönderilemeyeceğini kontrol edin.
2. Adım — Sahtekarlık Taraması: Siparişi Dolandırıcılık Tespit Temsilcisine yönlendirin (aşağıda ele alınmıştır). Sahtekarlık kontrolü tamamlanana kadar (genellikle 2 saniyenin altında) yerine getirmeyi beklet.
3. Adım — Depo Yönlendirme: Birden fazla sipariş karşılama konumu olan satıcılar için envanter kullanılabilirliği, teslimat adresine yakınlık ve mevcut iş yüküne göre en uygun depoyu seçin.
4. Adım — Taşıyıcı Seçimi: Müşteri tarafından seçilen gönderim hizmetine, ürün boyutlarına, ağırlığına ve varış noktasına göre belirli taşıyıcı hizmetini seçin ve gönderim etiketini oluşturun.
5. Adım — Müşteri Bildirimi: Etiket oluşturulduğu anda takip bağlantısı içeren bir sipariş onayı gönderin. Shopify'ı sipariş karşılama ve takip numarasıyla güncelleyin.
export const ProcessOrder = defineSkill({
name: "process-order",
tools: ["shopify", "warehouse", "shipping", "email"],
async run({ input, tools }) {
const order = await tools.shopify.get(`/orders/${input.orderId}.json`);
// Check inventory
const stockCheck = await checkInventoryForOrder(tools.shopify, order.line_items);
if (!stockCheck.allAvailable) {
return { processed: false, reason: "INVENTORY_SHORTAGE", shortItems: stockCheck.shortItems };
}
// Warehouse routing
const warehouse = await selectWarehouse(tools.warehouse, order, stockCheck.locations);
// Generate shipping label
const label = await tools.shipping.createLabel({
fromAddress: warehouse.address,
toAddress: order.shipping_address,
packages: buildPackages(order.line_items),
service: order.shipping_lines[0]?.code ?? "GROUND",
});
// Fulfill in Shopify
await tools.shopify.post(`/orders/${input.orderId}/fulfillments.json`, {
fulfillment: {
location_id: warehouse.shopifyLocationId,
tracking_number: label.trackingNumber,
tracking_company: label.carrier,
tracking_urls: [label.trackingUrl],
line_items: order.line_items.map((li) => ({ id: li.id, quantity: li.quantity })),
notify_customer: false, // We send our own notification
},
});
// Send customer notification
await tools.email.send({
to: order.email,
template: "order-shipped",
data: { order, trackingNumber: label.trackingNumber, trackingUrl: label.trackingUrl },
});
return { processed: true, trackingNumber: label.trackingNumber, warehouse: warehouse.name };
},
});
Dolandırıcılık Tespit Aracısı: Her Siparişi Gerçek Zamanlı Olarak Tarama
Hileli siparişler, Shopify satıcılarına ters ibrazlar ve ürün kayıpları nedeniyle gelirin yaklaşık %0,5-2'sine mal olur. Dolandırıcılık Tespit Aracısı, yerine getirmeye başlamadan önce çok faktörlü bir risk modeli kullanarak her siparişi tarar.
Değerlendirilen risk faktörleri:
| Faktör | Nasıl Değerlendiriliyor |
|---|---|
| Adres hızı | 24 saat içinde farklı ödeme yöntemleriyle aynı adrese birden fazla sipariş |
| Kart BIN kontrolü | Kartı veren ülke fatura adresi ülkesiyle eşleşiyor |
| IP ve faturalandırma eşleşmesi | Fatura adresiyle tutarlı IP coğrafi konumu |
| Sipariş değeri anormalliği | Sipariş değeri müşterinin geçmişinden çok daha yüksek |
| E-posta etki alanı riski | Tek kullanımlık e-posta alanı veya yeni kayıtlı alan adı |
| Gönderim yönlendirme | Bilinen bir nakliye adresine gönderim |
| Ad uyuşmazlığı | Fatura adı kart sahibinin adıyla eşleşmiyor (varsa) |
| E-postada hız | 7 gün içinde aynı e-postadan 3'ten fazla sipariş |
export const ScreenForFraud = defineSkill({
name: "screen-for-fraud",
tools: ["shopify", "ipinfo", "fraud-db"],
async run({ input, tools }) {
const order = input.order;
const risks: RiskFactor[] = [];
// Address velocity
const addressOrders = await tools.shopify.get(
`/orders.json?shipping_address=${encodeURIComponent(order.shipping_address.address1)}&created_at_min=${hoursAgo(24)}`
);
if (addressOrders.orders.length > 3) {
risks.push({ factor: "ADDRESS_VELOCITY", score: 30, detail: `${addressOrders.orders.length} orders to same address in 24h` });
}
// IP geolocation
const ipInfo = await tools.ipinfo.lookup(order.browser_ip);
if (ipInfo.country !== order.billing_address.country_code) {
risks.push({ factor: "IP_BILLING_MISMATCH", score: 25, detail: `IP country ${ipInfo.country} vs billing ${order.billing_address.country_code}` });
}
// Known fraud patterns
const fraudMatch = await tools.fraudDb.check({
email: order.email,
ip: order.browser_ip,
phone: order.phone,
});
if (fraudMatch.known) {
risks.push({ factor: "KNOWN_FRAUD_SIGNAL", score: 80, detail: fraudMatch.reason });
}
const totalRiskScore = risks.reduce((sum, r) => sum + r.score, 0);
const recommendation = totalRiskScore >= 80 ? "cancel"
: totalRiskScore >= 40 ? "hold-for-review"
: "approve";
return { recommendation, riskScore: totalRiskScore, risks };
},
});
Envanter Yönetimi Aracısı: Asla Stok Tükenmez, Asla Stok Fazlası Olmaz
Envanter Temsilcisi, tüm konumlardaki Shopify envanter seviyelerini izler ve stok tükenmesi meydana gelmeden önce stok yenilemeyi koordine eder.
Anahtar davranışlar:
Düşük Stok Uyarıları: Bir ürünün envanteri yeniden sipariş noktasının altına düştüğünde temsilci, bir satın alma siparişi (tedarikçilerden alınan ürünler için) veya transfer talebi (başka bir konumda bulunan ürünler için) şeklinde bir yenileme görevi oluşturur.
Mağaza Yönetimi: Envanter kritik düzeyde düşük bir düzeye ulaştığında, temsilci aciliyet yaratmak için ürünün vitrin mesajını ("Yalnızca 3 tane kaldı!") günceller. Bir ürün stokta kalmadığında, güncellenmiş tahmini teslimat tarihiyle "Satmaya devam et" olarak ayarlanabilir veya yapılandırılmış politika buysa ürün gizlenebilir.
Mevsimsel Ayarlama: Talebin yüksek olduğu dönemlerden (tatiller, promosyon etkinlikleri) önce acente, önceki yıllara ait geçmiş talep modellerine göre yeniden sipariş noktalarını yukarı doğru ayarlar.
export const ManageInventoryLevel = defineSkill({
name: "manage-inventory-level",
tools: ["shopify"],
async run({ input, tools }) {
const product = await tools.shopify.get(`/products/${input.productId}.json`);
const level = await tools.shopify.get(
`/inventory_levels.json?inventory_item_ids=${product.variants.map(v => v.inventory_item_id).join(",")}`
);
const totalAvailable = level.inventory_levels.reduce((sum, l) => sum + l.available, 0);
if (totalAvailable <= input.reorderPoint && totalAvailable > 0) {
// Low stock — update storefront
await tools.shopify.put(`/products/${input.productId}.json`, {
product: { metafields: [{ namespace: "inventory", key: "stock_urgency", value: `Only ${totalAvailable} left in stock!` }] },
});
return { action: "LOW_STOCK_FLAGGED", available: totalAvailable };
}
if (totalAvailable === 0) {
await tools.shopify.put(`/variants/${product.variants[0].id}.json`, {
variant: { inventory_policy: "continue", inventory_management: "shopify" },
});
return { action: "OUT_OF_STOCK_CONTINUE_SELLING", available: 0 };
}
return { action: "NONE", available: totalAvailable };
},
});
Müşteri Hizmetleri Temsilcisi: Geniş Ölçekte Marka Sesi Yanıtları
Müşteri Hizmetleri Temsilcisi, destek bildirim hacminin %80'inden fazlasını oluşturan ilk beş müşteri sorgusu türünü yönetir:
- Sipariş durumu: Sipariş için Shopify'ı sorgular ve mevcut durum, takip bağlantısı ve tahmini teslimatla yanıt verir.
- İade başlatma: İade politikasına göre iade uygunluğunu doğrular, bir iade onayı oluşturur ve iade gönderi etiketi gönderir.
- Ürün sorusu: Satın alma öncesi soruları yanıtlamak için ürünle ilgili SSS ve açıklamayı arar.
- Siparişi iptal et: Tamamlanmayan siparişleri iptal eder; Gerçekleşen siparişler için iade sürecini başlatır.
- Yeniden sevkiyat talebi: Kayıp veya hasarlı gönderiler için değiştirme siparişi oluşturur ve nakliyeci talebini başlatır.
Yanıtlar, yapılandırılabilir bir sistem istemi kullanılarak markanın sesiyle oluşturulur. Yanıt şablonlarının A/B testi, aracının yapılandırması aracılığıyla desteklenir.
Kişiselleştirme Temsilcisi: Her Müşteri Benzersiz Bir Deneyim Yaşar
Kişiselleştirme Temsilcisi, satın alma geçmişinden, göz atma verilerinden (Shopify'ın Müşteri Etkinlikleri API'si aracılığıyla) ve destek etkileşimlerinden bireysel müşteri profilleri oluşturur. Aşağıdakileri oluşturmak için bu profilleri kullanır:
Ürün Önerileri: Temsilci, satın alma sonrası e-postalar ve vitrin öneri widget'ı için müşterinin satın alma geçmişini tamamlayan ve fiyat hassasiyetine uygun ürünleri seçer.
Sepet Kurtarma: Temsilci, terkedilmiş sepetler için müşterinin geçmişine göre zamanlamayı, mesaj içeriğini ve indirim teklifini seçer. Daha önce satın alma işlemi gerçekleştiren yüksek değere sahip müşteriler, ilk kez alışveriş yapan ve bir ürün ekleyen müşterilerden farklı bir mesaj alır.
Bağlılık Segmentasyonu: Müşterileri yaşam döngüsü segmentleriyle (yeni, aktif, risk altında, eski) otomatik olarak etiketler ve uygun elde tutma dizilerini tetikler. 90 gün içinde satın alma işlemi yapmayan "risk altındaki" bir müşteri, bir geri kazanma kampanyasına sahip olur; İlk satın alma işlemini yeni tamamlayan "yeni" bir müşteri, bir katılım süreci alır.
İade ve Geri Ödeme Otomasyonu
İadelerin manuel olarak işlenmesi pahalıdır. İade Temsilcisi, iade yaşam döngüsünün tamamını yönetir:
- Müşteri, iade talebini form veya destek bileti aracılığıyla iletir.
- Temsilci uygunluğu doğrular: İade süresi içinde ürün iade edilebilir kategoridedir, sahtekarlık olarak işaretlenmemiştir.
- Acente, iade ürün yetkilendirmesini (RMA) oluşturur ve ön ödemeli iade etiketi gönderir.
- Taşıyıcı iade gönderisini taradığında acente müşteriye bilgi verir.
- İade alınıp depo tarafından incelendiğinde acente, iadeyi Shopify'da otomatik olarak işler.
- İade edilen ürün hasar görmüşse temsilci, ürünü otomatik para iadesi yerine anlaşmazlık iş akışına yönlendirir.
Sıkça Sorulan Sorular
OpenClaw, Shopify'ın API oranı sınırlarını yüksek sipariş hacimlerinde nasıl ele alıyor?
Shopify araç adaptörü, X-Shopify-Shop-Api-Call-Limit yanıt başlığını kullanarak kalan API paketi boyutunu izleyen, sızdıran bir paket hızı sınırlayıcı uygular. Yüksek öncelikli işlemlere (sipariş onayı web kancası işleme) pakete öncelikli erişim verilir. Acil olmayan işlemler (analitik sorgular, rapor oluşturma) sıraya alınır ve trafiğin düşük olduğu dönemlerde çalıştırılır. REST API sınırlarını aşan mağazalar için aracı, daha verimli toplu sorgulara olanak tanıyan maliyet tabanlı hız sınırlama modeli kullanan GraphQL API'ye geçebilir.
Sahtekarlık tespit aracısı yanlış pozitifleri azaltacak şekilde ayarlanabilir mi?
Evet. Risk faktörü ağırlıkları ve onay/tutma/iptal eşikleri tamamen yapılandırılabilir. İlk dağıtımdan sonra ECOSIRE bir kalibrasyon hizmeti sağlar: ağırlıkları ayarlamak için ilk 30 günlük dolandırıcılık tarama kararlarını gerçek ters ibraz sonuçlarıyla karşılaştırırız. Satıcılar ayrıca güvenilir sürekli müşteriler veya modelin hatalı şekilde işaretlediği belirli sipariş modelleri için manuel beyaz liste kuralları oluşturabilir.
Shopify kesintisi veya webhook teslimatı hatası sırasında ne olur?
Shopify, başarısız webhook teslimatlarını üstel geri çekilmeyle 48 saat boyunca yeniden dener. OpenClaw'ın webhook işleyicisi bağımsız olacak şekilde tasarlanmıştır; aynı webhook'u birden çok kez almak aynı sonucu üretir, eylemlerin kopyalarını değil. Web kancası teslimatının tamamen başarısız olduğu senaryolar için OpenClaw, oluşturulan ancak web kancaları hiç alınmamış işlenmemiş siparişler için Shopify Siparişleri API'sini yoklayan bir mutabakat işi içerir.
Kişiselleştirme aracısı küçük müşteri tabanına sahip mağazalarda çalışıyor mu?
Soğuk başlangıç, küçük müşteri tabanlarıyla kişiselleştirmenin ana zorluğudur. Temsilci, yeni müşteriler için (3'ten az sipariş) bireysel geçmiş yerine kategori bazlı ve en çok satan önerilere başvuruyor. Müşteriler satın alma geçmişini biriktirdikçe kişiselleştirme daha doğru hale gelir. Temsilci, en az 1.000 aktif müşteriye ve 90 günlük sipariş geçmişine sahip mağazalar için en etkilidir.
Otomasyon Shopify Flow ile birlikte çalışabilir mi?
Evet. OpenClaw, Shopify Flow otomasyonlarıyla çakışmaz. Önerilen model, Shopify ekosistemi içindeki basit, kural tabanlı otomasyonlar (müşterileri etiketleme, temel e-postalar gönderme) için Shopify Flow'u ve muhakeme, harici API çağrıları veya çok adımlı karar mantığı gerektiren karmaşık, sistemler arası otomasyonlar için OpenClaw'ı kullanmaktır. OpenClaw, uygun olduğunda Shopify API aracılığıyla Shopify Flow iş akışlarını da tetikleyebilir.
Sonraki Adımlar
OpenClaw otomasyonunu çalıştıran bir Shopify mağazası, manuel işlemlerle çalışan bir Shopify mağazasından temelde farklı bir iştir. Sipariş işleme saatler değil saniyeler içinde gerçekleşir. Dolandırıcılık ifa edilmeden yakalanır. Envanter asla sessizce tükenmez. Müşteriler her an anında ve doğru yanıtlar alırlar.
ECOSIRE'ın OpenClaw Shopify entegrasyon hizmeti eksiksiz bir otomasyon yığını sağlar: ürün kategorinize göre kalibre edilmiş dolandırıcılık tespiti, depo ağınız için yapılandırılmış sipariş karşılama yönlendirmesi, marka sesiniz konusunda eğitilmiş müşteri hizmetleri temsilcileri ve müşteri verilerinizden oluşturulan kişiselleştirme modelleri.
Shopify otomasyon değerlendirmesi ve uygulama yol haritası almak için ECOSIRE ile iletişime geçin.
Yazan
ECOSIRE Research and Development Team
ECOSIRE'da kurumsal düzeyde dijital ürünler geliştiriyor. Odoo entegrasyonları, e-ticaret otomasyonu ve yapay zeka destekli iş çözümleri hakkında içgörüler paylaşıyor.
İlgili Makaleler
AI-Powered Accounting Automation: What Works in 2026
Discover which AI accounting automation tools deliver real ROI in 2026, from bank reconciliation to predictive cash flow, with implementation strategies.
Australian GST Guide for eCommerce Businesses
Complete Australian GST guide for eCommerce businesses covering ATO registration, the $75,000 threshold, low value imports, BAS lodgement, and GST for digital services.
eCommerce Bookkeeping: Revenue Recognition and Sales Tax
Master eCommerce bookkeeping with correct revenue recognition timing, sales tax collection across marketplaces, and reconciliation for Shopify, Amazon, and more.