







2000 W EcoFlow STREAM 5000 Balkonkraftwerk | Set mit Mikrowechselrichter und 4 x 500 W DAH bifacial Solarmodul ohne Halterung und 5 kWh Speicher
Tax included. Shipping calculated at checkout
Derzeit nicht verfügbar

2000 W EcoFlow STREAM 5000 Balkonkraftwerk | Set mit Mikrowechselrichter und 4 x 500 W DAH bifacial Solarmodul ohne Halterung und 5 kWh Speicher
Sale price2.017,05 €
Regular price2.374,05 €
Optional: Halterung & Zubehör direkt mitbestellen
1Halterung
2Zubehör
3Übersicht
Brauchst du eine Halterung?
Wähle eine Halterung oder fahre ohne Halterung mit dem Zubehör fort.
Ja, Halterung benötigtEin oder mehrere Halterungssets auswählen
Nein, keine HalterungDirekt zum optionalen Zubehör
Für dieses Produkt ist aktuell keine passende Halterung hinterlegt.
Weiteres Zubehör
Optional: Wähle ein oder mehrere Zubehörprodukte aus.
Ecoflow Smart Meter
69,99 €99,00 €
-29 %
Deine Auswahl
Prüfe die Zusammenstellung und lege alles gemeinsam in den Warenkorb.
Konfiguration
Regulärer Gesamtpreis0,00 €
Dein Preis0,00 €
Gesamtsumme0,00 €
' +
'
' +
'
' +
'';
var image = item.querySelector('.bkwc__summary-image');
if (entry.product.image) { image.src = entry.product.image; image.alt = entry.product.title; } else { image.remove(); }
item.querySelector('strong').textContent = (entry.quantity > 1 ? entry.quantity + ' × ' : '') + entry.product.title;
item.querySelector('small').textContent =
entry.product.type === 'holder' ? entry.product.holderKind :
entry.product.type === 'accessory' ? 'Optionales Zubehör' : 'BKW-Set';
item.querySelector('.bkwc__summary-price').textContent = money(entry.product.price * entry.quantity);
container.appendChild(item);
});
var savings = Math.max(0, regularTotal - total);
root.querySelectorAll('[data-total]').forEach(function(el) { el.textContent = money(total); });
root.querySelector('[data-regular-total]').textContent = money(regularTotal);
root.querySelector('[data-current-total]').textContent = money(total);
root.querySelector('[data-savings]').textContent = money(savings);
root.querySelector('[data-saving-line]').style.display = savings > 0 ? 'flex' : 'none';
}
function reset() {
state = { step: 1, maxStep: 1, holderNeeded: null, holderQuantities: {}, accessories: [] };
root.querySelectorAll('.bkwc__card, .bkwc__choice').forEach(function(item) { setSelected(item, false); });
root.querySelectorAll('[data-product-type="holder"]').forEach(function(card) { card.style.display = ''; card.classList.remove('is-disabled'); });
root.querySelectorAll('[data-quantity-value]').forEach(function(v) { v.textContent = '0'; });
var grid = root.querySelector('[data-holder-grid]');
if (grid) grid.style.display = 'none';
var empty = root.querySelector('[data-bkw-empty]');
if (empty) empty.style.display = 'none';
root.querySelector('[data-next="1"]').disabled = true;
go(1);
}
function addToCart(button) {
var error = root.querySelector('[data-cart-error]');
var entries = selectedItems();
var redirectTarget = (button && button.dataset.redirect === 'checkout') ? 'checkout' : 'cart';
if (!entries.length || !entries[0].product.variantId) return;
var allButtons = root.querySelectorAll('[data-add-to-cart]');
allButtons.forEach(function(btn) { btn.disabled = true; });
var originalLabel = button.textContent;
button.textContent = redirectTarget === 'checkout' ? 'Wird zur Kasse geleitet ...' : 'Wird hinzugefügt ...';
error.style.display = 'none';
root.classList.add('bkwc__loading');
fetch((window.Shopify && Shopify.routes && Shopify.routes.root ? Shopify.routes.root : '/') + 'cart/add.js', {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' },
body: JSON.stringify({
items: entries.map(function(entry) {
return { id: entry.product.variantId, quantity: entry.quantity, properties: entry.properties };
})
})
})
.then(function(response) {
if (!response.ok) {
return response.json().then(function(data) { throw new Error(data.description || 'Die Produkte konnten nicht hinzugefügt werden.'); });
}
return response.json();
})
.then(function() {
var root_ = (window.Shopify && Shopify.routes && Shopify.routes.root) ? Shopify.routes.root : '/';
window.location.href = root_ + redirectTarget;
})
.catch(function(err) {
error.textContent = err.message || 'Die Produkte konnten nicht hinzugefügt werden. Bitte prüfe die Verfügbarkeit.';
error.style.display = 'block';
allButtons.forEach(function(btn) { btn.disabled = false; });
button.textContent = originalLabel;
root.classList.remove('bkwc__loading');
});
}
root.addEventListener('click', function(event) {
if (event.target.closest('[data-bkw-pdp-open]')) { togglePanel(); return; }
var plus = event.target.closest('[data-quantity-plus]');
var minus = event.target.closest('[data-quantity-minus]');
if (plus || minus) {
var holderCard = (plus || minus).closest('[data-product-card]');
var current = Number(state.holderQuantities[holderCard.dataset.productHandle]) || 0;
setQuantity(holderCard, current + (plus ? 1 : -1));
return;
}
var choice = event.target.closest('[data-holder-needed]');
if (choice) { chooseHolderNeeded(choice); return; }
var card = event.target.closest('[data-product-card]');
if (card && !card.classList.contains('is-disabled')) {
if (card.dataset.productType === 'accessory') toggleAccessory(card);
else if (card.dataset.productType === 'holder') {
var currentQuantity = Number(state.holderQuantities[card.dataset.productHandle]) || 0;
setQuantity(card, currentQuantity > 0 ? 0 : 1);
}
return;
}
var next = event.target.closest('[data-next]');
if (next && !next.disabled) {
var nextStep = Number(next.dataset.next);
if (nextStep === 1 && state.holderNeeded) go(2);
else if (nextStep === 2) go(3);
return;
}
var back = event.target.closest('[data-back]');
if (back) { go(Math.max(1, Number(back.dataset.back) - 1)); return; }
if (event.target.closest('[data-skip-accessory]')) { go(3); return; }
if (event.target.closest('[data-reset]')) { reset(); return; }
var addToCartButton = event.target.closest('[data-add-to-cart]');
if (addToCartButton && !addToCartButton.disabled) { addToCart(addToCartButton); return; }
});
root.addEventListener('keydown', function(event) {
if (event.key === 'Escape' && panelOuter && panelOuter.classList.contains('is-open')) { closePanel(); trigger.focus(); return; }
if (event.key !== 'Enter' && event.key !== ' ') return;
var target = event.target.closest('[data-product-card], [data-holder-needed]');
if (target) { event.preventDefault(); target.click(); }
});
indicators.forEach(function(indicator) {
indicator.addEventListener('click', function() {
var number = Number(indicator.dataset.stepIndicator);
if (number <= state.maxStep) go(number);
});
});
// Auto-Skip Halterungsschritt, falls keine Halterungsblöcke gepflegt sind
var autoNext = root.querySelector('[data-next="1"][data-auto-next]');
if (autoNext) {
state.holderNeeded = 'no';
autoNext.disabled = false;
}
// Bei Variantenwechsel im Hauptformular Summary aktuell halten.
// Viele Custom-Themes (u.a. Impact) setzen den Wert des versteckten
// "id"-Felds per JS (input.value = ...), ohne ein natives change-Event
// auszulösen. Ein MutationObserver auf das value-Attribut fängt das
// zuverlässig ab, unabhängig davon, ob ein change-Event gefeuert wird.
var variantInput = getMainVariantInput();
var lastKnownVariantId = variantInput ? variantInput.value : null;
function handleVariantChange() {
if (!variantInput) return;
if (variantInput.value === lastKnownVariantId) return;
lastKnownVariantId = variantInput.value;
if (state.step === 3) renderSummary();
}
if (variantInput) {
// Fängt native change-Events ab (z.B. bei ' +
'
Produktbeschreibung
Produktdetails & Downloads
Herstellerinformationen und ggf. der verantwortliche Person:
E-Mail:
Homepage:

Beratung & Kontakt
Fragen zum Artikel?
Falls Du weitere Fragen zum Produkt hast oder allgemein Kontakt zu uns suchst, klicke gerne auf den Button und schreibe uns eine Nachricht. Wir freuen uns auf Dich!
JETZT BERATEN LASSEN



