
📥 Shoper API returned 18 payment methods total
❌ Error saving order to PostgreSQL: error: column "billing_zip" of relation "orders" does not exist
    at /home/runner/workspace/node_modules/pg/lib/client.js:545:17
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async saveOrderToPostgres (/home/runner/workspace/server/postgres.ts:59:5)
    at async syncOrders (/home/runner/workspace/server/routes.ts:428:9)
    at async <anonymous> (/home/runner/workspace/server/routes.ts:1136:7) {
  length: 131,
  severity: 'ERROR',
  code: '42703',
  detail: undefined,
  hint: undefined,
  position: '626',
  internalPosition: undefined,
  internalQuery: undefined,
  where: undefined,
  schema: undefined,
  table: undefined,
  column: undefined,
  dataType: undefined,
  constraint: undefined,
  file: 'parse_target.c',
  line: '1066',
  routine: 'checkInsertTargets'
}
Failed to save order 274751f0-a544-11f0-bb74-8b6fbb6f100b to PostgreSQL: error: column "billing_zip" of relation "orders" does not exist
    at /home/runner/workspace/node_modules/pg/lib/client.js:545:17
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async saveOrderToPostgres (/home/runner/workspace/server/postgres.ts:59:5)
    at async syncOrders (/home/runner/workspace/server/routes.ts:428:9)
    at async <anonymous> (/home/runner/workspace/server/routes.ts:1136:7) {
  length: 131,
  severity: 'ERROR',
  code: '42703',
  detail: undefined,
  hint: undefined,
  position: '626',
  internalPosition: undefined,
  internalQuery: undefined,
  where: undefined,
  schema: undefined,
  table: undefined,
  column: undefined,
  dataType: undefined,
  constraint: undefined,
  file: 'parse_target.c',
  line: '1066',
  routine: 'checkInsertTargets'
}
📋 Loaded 18 payment methods and 8 delivery methods
💳 Payment methods: [
  [ '1', 'Gotówka' ],
  [ '2', 'Pobranie' ],
  [ '3', 'Autopay' ],
  [ '4', 'mBank mRaty' ],
  [ '5', 'PayU' ],
  [ '6', 'DotPay' ],
  [ '7', 'Przelewy24.pl' ],
  [ '10', 'eRaty Santander Consumer Bank S.A.' ],
  [ '11', 'PayPal' ],
  [ '12', 'Allegro' ],
  [ '13', 'Darmowe zamówienie' ],
  [ '14', 'PayPal Express Checkout' ],
  [ '15', 'Klarna (Sofort)' ],
  [ '16', 'Braintree' ],
  [ '17', 'Klarna "Zapłać za 30 dni"' ],
  [ '18', 'Przelewy24' ],
  [ '19', 'InPost Pay' ],
  [ '20', 'Stripe' ]
]
🚚 Delivery methods: [
  [ '1', '24 godziny' ],
  [ '2', '48 godzin' ],
  [ '3', '3 dni' ],
  [ '4', '4 dni' ],
  [ '5', '5 dni' ],
  [ '6', '10 dni' ],
  [ '7', '14 dni roboczych + czas wysyłki (kurier)' ],
  [ '8', '10 dni roboczych + czas wysyłki (kurier)' ]
]
✅ Renumbered 149 orders by date, sequence set to 149
Successfully synced 1 orders from Allegro (0 new, 0 updated)
Starting auto-sync scheduler with 1 minute interval
7:16:52 PM [express] GET /api/allegro/callback 302 in 2363ms
✅ Updated Odoo sale order 41
🔍 Using incremental sync filter: updated_at > 2025-10-09 19:14:59.999
✅ Synced SH-143 to Odoo (order #41) in 1558ms
📊 Odoo sync: 1 succeeded, 0 failed out of 1 processed
🔧 syncRecentOrdersToOdoo completed, calling processSyncQueue...
🔧 processSyncQueue() started
🔍 DEBUG createOdooClient: Original URL = "https://alpma.app"
🔍 DEBUG createOdooClient: includes tunnel.pyjam.as = false
🔍 DEBUG createOdooClient: Final URL = "https://alpma.app"
🔧 createOdooClient() returned: OdooClient instance
🔧 processSyncQueue completed
📦 Fetched 1 orders from Shoper API
📦 Processing Shoper order 23173...
📦 Fetching order-products for order 23173 with filters: {"order_id":"23173"}
✅ Received 1 products for order 23173
✅ Fetched 1 products for order 23173
📦 Fetching parcels for order 23173
✅ Received 1 parcels for order 23173
✅ Fetched 1 parcels for order 23173
✅ Saved Shoper order 23173 to shoper.orders (UPDATED)
🔍 DEBUG - Shoper payment raw data for order 23173:
   orderData.paid = "50.00" → paidAmount = 50
   orderData.sum = "758.00" → totalAmount = 758
   orderData.is_paid = false
   Calculated paymentStatus = "PARTIAL"
🔍 DEBUG - SELECT previousState result for SHOPER-23173: [
  {
    "id": "842fcdfd-b0a5-4d33-b407-02b618c0e6c7",
    "order_number": "143",
    "order_code": "SH-143",
    "status": "6",
    "payment_status": "PENDING",
    "payment_amount": "758.00",
    "tracking_numbers": null,
    "refund_amount": "0.00",
    "has_returns": false,
    "buyer_address": "Szropy Niziny, 3",
    "buyer_city": "Stary Targ"
  }
]
🔍 DEBUG - Porównanie wartości dla SH-143:
   payment_status: prev="PENDING" new="PARTIAL"
   payment_amount: prev="758.00" (string) new="50" (number)
   buyer_address: prev="Szropy Niziny, 3" new="Szropy Niziny, 3, 82-410 Stary Targ"
   ⚠️ compareNumeric zwrócił TRUE: 758.00 vs 50
🔄 Wykryto 3 zmian w zamówieniu SH-143:
   📝 payment_status: "PENDING" → "PARTIAL"
⏭️  Pominięto duplikat zmiany: SH-143 - payment_status
   📝 payment_amount: "758.00" → "50"
⏭️  Pominięto duplikat zmiany: SH-143 - payment_amount
   📝 buyer_address: "Szropy Niziny, 3" → "Szropy Niziny, 3, 82-410 Stary Targ"
⏭️  Pominięto duplikat zmiany: SH-143 - buyer_address
🔍 DEBUG - INSERT parameter $19 (payment_amount) for SHOPER-23173:
   payment.paidAmount = {"amount":50,"currency":"PLN"}
   payment.paidAmount?.amount = 50
   orderData.sum = 758.00
   Final value (payment.paidAmount?.amount ?? orderData.sum) = 50
🔍 DEBUG - RETURNING after INSERT/UPDATE for SHOPER-23173:
   returned_payment_amount = 50
✅ Order 23173 saved to commerce.orders (SHOPER)
📋 Added SH-143 to Odoo sync queue (update)
✅ Saved Shoper order 23173 to commerce.orders and shoper.orders (1 parcels)
✅ Renumbered 149 orders by date, sequence set to 149
✅ Successfully synced Shoper orders: 0 new, 1 updated, 0 failed out of 1 total
7:16:56 PM [express] GET /api/user 304 in 109ms :: {"id":1,"username":"admin","email":"admin@alpma.a…
7:16:56 PM [express] GET /api/allegro/connection 304 in 107ms :: {"isActive":true,"hasCredentials":t…
7:16:56 PM [express] GET /api/sync/settings 200 in 144ms :: {"id":"c4dc8865-6e5e-4ddd-8782-73b932ef9…
7:16:56 PM [express] GET /api/shoper/sync/settings 200 in 145ms :: {"shoperAutoRefreshEnabled":true,…
7:16:59 PM [express] GET /api/orders/statistics 304 in 145ms :: {"totalOrders":149,"paidOrders":124,…
7:16:59 PM [express] GET /api/sync/status 200 in 142ms :: {"lastSyncAt":"2025-10-09T19:16:51.901Z","…
7:16:59 PM [express] GET /api/orders/today-stats 304 in 143ms :: {"revenueToday":1402,"paidToday":67…
7:17:04 PM [express] GET /api/orders/statistics 304 in 143ms :: {"totalOrders":149,"paidOrders":124,…
7:17:04 PM [express] GET /api/sync/status 304 in 144ms :: {"lastSyncAt":"2025-10-09T19:16:51.901Z","…
7:17:04 PM [express] GET /api/orders/today-stats 304 in 145ms :: {"revenueToday":1402,"paidToday":67…
7:17:09 PM [express] GET /api/orders/statistics 304 in 143ms :: {"totalOrders":149,"paidOrders":124,…
7:17:09 PM [express] GET /api/sync/status 304 in 143ms :: {"lastSyncAt":"2025-10-09T19:16:51.901Z","…
7:17:09 PM [express] GET /api/orders/today-stats 304 in 145ms :: {"revenueToday":1402,"paidToday":67…
7:17:15 PM [express] GET /api/orders/statistics 304 in 145ms :: {"totalOrders":149,"paidOrders":124,…
7:17:15 PM [express] GET /api/sync/status 304 in 144ms :: {"lastSyncAt":"2025-10-09T19:16:51.901Z","…
7:17:15 PM [express] GET /api/orders/today-stats 304 in 145ms :: {"revenueToday":1402,"paidToday":67…
