FaizBlog LogoFaizBlog
Back to all articles
Google Apps ScriptBarcodeGoogle SheetsInventarisRetail

Cara Generate Barcode Produk Otomatis di Google Sheets (CODE128, EAN-13)

Panduan lengkap bikin barcode produk massal dari Google Sheets pakai Apps Script. Support CODE128, EAN-13, UPC-A. Cocok untuk UMKM retail, gudang, dan sistem inventaris.

AI Insights

Generate a summary and suggested tags for this post.

Punya ratusan SKU produk dan butuh barcode di tiap kemasan? Kalau kamu masih pakai generator online satu-satu, itu bakal makan berjam-jam.

Solusinya: Google Apps Script + Google Sheets — isi data produk sekali, semua barcode terisi otomatis, siap dicetak jadi label. Gratis, tanpa aplikasi berbayar.

Perbandingan Barcode & QR

Barcode vs QR Code: Beda dan Kegunaan

AspekBarcode 1DQR Code 2D
Kapasitas data~20 karakter~4.000 karakter
Alat scanScanner khususHP juga bisa
Ukuran cetakPanjang horizontalPersegi kompak
Cocok untukRetail, gudang, kasirLink, tiket, menu

Kesimpulan: untuk produk retail & inventaris, barcode 1D masih standar karena kompatibel dengan scanner POS toko.

Jenis-Jenis Barcode Populer

Jenis-jenis barcode

FormatKegunaanContoh
CODE128Umum, teks + angkaKode internal gudang
EAN-13Standar retail internasionalProduk supermarket (13 digit)
UPC-ARetail Amerika UtaraProduk Walmart, Target (12 digit)
CODE39Industri & manufakturLabel sparepart

Langkah 1: Struktur Data Produk

Buat sheet "Produk" dengan kolom:

SKUNama ProdukHargaBarcode
SKU-001Kopi Arabika 250g85.000(otomatis)
SKU-002Teh Hijau 100g35.000(otomatis)
SKU-003Madu Murni 250ml65.000(otomatis)

Langkah 2: Script Generator Barcode

Buka Extensions → Apps Script → paste:

function generateBarcode() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Produk");
  const data = sheet.getDataRange().getValues();
  const kolomSku     = 1; // A
  const kolomBarcode = 4; // D

  for (let i = 1; i < data.length; i++) {
    const sku = data[i][kolomSku - 1];
    const existing = data[i][kolomBarcode - 1];
    if (!sku || existing) continue;

    // Pakai API BWIP-JS (gratis, no key)
    const url = `https://bwipjs-api.metafloor.com/?bcid=code128&text=${encodeURIComponent(sku)}&scale=3&includetext&backgroundcolor=ffffff`;
    const formula = `=IMAGE("${url}", 4, 80, 300)`;
    sheet.getRange(i + 1, kolomBarcode).setFormula(formula);
  }
}

Klik Save → Run. Semua barcode langsung muncul di kolom D dengan format CODE128.

Ganti Format Barcode

Tinggal ubah parameter bcid sesuai kebutuhan:

Formatbcid value
CODE128 (umum)code128
EAN-13 (retail)ean13
UPC-A (Amerika)upca
CODE39 (industri)code39
Interleaved 2 of 5interleaved2of5

Sistem Inventaris dengan Scanner

Alur sistem inventaris

Kalau sudah punya barcode di tiap produk, sistem stok jadi super simple:

  1. Karyawan gudang scan barcode barang yang masuk/keluar.
  2. Scanner USB langsung ketik SKU ke cell aktif Google Sheets.
  3. Script otomatis update kolom Stok dan Perubahan.

Contoh script trigger update stok:

function onEdit(e) {
  const sheet = e.range.getSheet();
  if (sheet.getName() !== "Transaksi") return;
  if (e.range.getColumn() !== 2) return; // kolom SKU

  const sku = e.value;
  const jumlah = sheet.getRange(e.range.getRow(), 3).getValue() || 1;

  const produkSheet = SpreadsheetApp.getActive().getSheetByName("Produk");
  const data = produkSheet.getRange("A:D").getValues();
  for (let i = 1; i < data.length; i++) {
    if (data[i][0] === sku) {
      const stokLama = data[i][2] || 0;
      produkSheet.getRange(i + 1, 3).setValue(stokLama - jumlah);
      break;
    }
  }
}

Cetak Barcode Jadi Label

Kalau butuh cetak jadi label sticker (misal 40 barcode per lembar A4):

  1. Buat sheet baru "Label".
  2. Set ukuran cell sesuai template sticker (misal 5 kolom x 8 baris).
  3. Pakai formula =IMAGE(url, 4, 60, 150) di setiap cell.
  4. File → Print → Custom size sesuai kertas sticker.

Untuk sticker profesional, pakai template Avery — mereka punya ukuran standar (Avery 5160, 5163, dst) yang mudah di-set di Sheets.

Tips Penting

  • Konsisten format SKU — misal semua 6 karakter: SKU001, SKU002, jangan campur P1 dengan PRODUK-KOPI-1.
  • Hindari karakter aneh — barcode CODE128 support hampir semua ASCII, tapi CODE39 hanya huruf besar + angka + beberapa simbol.
  • Test scan sebelum cetak massal — scan pakai HP (aplikasi Barcode Scanner Play Store) untuk verifikasi.
  • Beri quiet zone — kasih margin putih di kiri-kanan barcode minimal 3mm, biar scanner bisa deteksi awal-akhir.
  • Ukuran minimal ~2cm tinggi — lebih kecil dari itu rentan gagal scan.

Kesimpulan

Bikin barcode produk di Google Sheets jauh lebih efisien daripada satu-per-satu di web generator:

  • ✅ Ratusan produk sekaligus
  • ✅ Format bebas: CODE128, EAN-13, UPC-A
  • ✅ Bisa dikombinasi dengan sistem stok real-time
  • ✅ Gratis, tanpa aplikasi berbayar
  • ✅ Siap cetak label dengan template Avery

Cocok untuk UMKM retail, toko online, gudang, apotek — pokoknya bisnis yang butuh kelola banyak SKU. Kombinasikan dengan QR Code (untuk info produk lengkap) — kamu punya sistem inventaris mini yang jalan di Google Sheets. 📦