طرق الدفع

الدفع نقداً عند الاستلام (COD)


الدفع عند الاستلام (Cash On Delivery) هي إحدى طرق الدفع المتاحة على متجرنا، والدفع عند الاستلام يعني أن المتسوق يمكنه التسوق عبر متجرنا إلكتروني واختيار المنتج الذي يرغب فيه ومن ثم يقوم بإجراء الطلب واختيار طريقة الدفع عند الاستلام وهو ما يعني أن عملية الدفع تؤجل حتى استلام العميل للمنتج الذي قام بطلبه إلكترونيًا.

وسنقوم بإرسال المنتج إلى المكان المتفق عليه (المدينة أو الحي أو المنزل أو مكان اخر)، وبعدها يتم الدفع.


الدفع عبر تحويل بنكي


الدفع عبر تحويل بنكي هو أحد طرق الدفع المتاحة على متجرنا، والدفع يتم عبر تحويل المبلغ المتفق عليه إلى حسابنا البنكي، أو عبر حوالة بنكية، او عبر إحدى وكالت تحويل الأموال بالإسم المتفق عليه، وبعدها يتم إرسال المنتج إلى المكان المتفق عليه.


الدفع عبر PayPal


الدفع عبر تحويل موقع PayPal هو أحد الطرق المتاحة على متجرنا، والدفع يتم عبر تحويل المبلغ المتفق عليه إلى حسابنا على موقع PayPal ، وبعدها يتم إرسال المنتج إلى المكان المتفق عليه.


/** * YouCan Wilaya Plugin * Adds a dropdown for selecting Algerian wilayas to the YouCan checkout form * * @version 1.0.0 * @author Claude */ (function() { // Algerian wilayas data const wilayasData = [ {"code": "01", "name": "Adrar", "arabic_name": "أدرار"}, {"code": "02", "name": "Chlef", "arabic_name": "الشلف"}, {"code": "03", "name": "Laghouat", "arabic_name": "الأغواط"}, {"code": "04", "name": "Oum El Bouaghi", "arabic_name": "أم البواقي"}, {"code": "05", "name": "Batna", "arabic_name": "باتنة"}, {"code": "06", "name": "Béjaïa", "arabic_name": "بجاية"}, {"code": "07", "name": "Biskra", "arabic_name": "بسكرة"}, {"code": "08", "name": "Béchar", "arabic_name": "بشار"}, {"code": "09", "name": "Blida", "arabic_name": "البليدة"}, {"code": "10", "name": "Bouïra", "arabic_name": "البويرة"}, {"code": "11", "name": "Tamanrasset", "arabic_name": "تمنراست"}, {"code": "12", "name": "Tébessa", "arabic_name": "تبسة"}, {"code": "13", "name": "Tlemcen", "arabic_name": "تلمسان"}, {"code": "14", "name": "Tiaret", "arabic_name": "تيارت"}, {"code": "15", "name": "Tizi Ouzou", "arabic_name": "تيزي وزو"}, {"code": "16", "name": "Algiers", "arabic_name": "الجزائر"}, {"code": "17", "name": "Djelfa", "arabic_name": "الجلفة"}, {"code": "18", "name": "Jijel", "arabic_name": "جيجل"}, {"code": "19", "name": "Sétif", "arabic_name": "سطيف"}, {"code": "20", "name": "Saïda", "arabic_name": "سعيدة"}, {"code": "21", "name": "Skikda", "arabic_name": "سكيكدة"}, {"code": "22", "name": "Sidi Bel Abbès", "arabic_name": "سيدي بلعباس"}, {"code": "23", "name": "Annaba", "arabic_name": "عنابة"}, {"code": "24", "name": "Guelma", "arabic_name": "قالمة"}, {"code": "25", "name": "Constantine", "arabic_name": "قسنطينة"}, {"code": "26", "name": "Médéa", "arabic_name": "المدية"}, {"code": "27", "name": "Mostaganem", "arabic_name": "مستغانم"}, {"code": "28", "name": "M'Sila", "arabic_name": "المسيلة"}, {"code": "29", "name": "Mascara", "arabic_name": "معسكر"}, {"code": "30", "name": "Ouargla", "arabic_name": "ورقلة"}, {"code": "31", "name": "Oran", "arabic_name": "وهران"}, {"code": "32", "name": "El Bayadh", "arabic_name": "البيض"}, {"code": "33", "name": "Illizi", "arabic_name": "اليزي"}, {"code": "34", "name": "Bordj Bou Arréridj", "arabic_name": "برج بوعريريج"}, {"code": "35", "name": "Boumerdès", "arabic_name": "بومرداس"}, {"code": "36", "name": "El Tarf", "arabic_name": "الطارف"}, {"code": "37", "name": "Tindouf", "arabic_name": "تندوف"}, {"code": "38", "name": "Tissemsilt", "arabic_name": "تسمسيلت"}, {"code": "39", "name": "El Oued", "arabic_name": "الوادي"}, {"code": "40", "name": "Khenchela", "arabic_name": "خنشلة"}, {"code": "41", "name": "Souk Ahras", "arabic_name": "سوق أهراس"}, {"code": "42", "name": "Tipaza", "arabic_name": "تيبازة"}, {"code": "43", "name": "Mila", "arabic_name": "ميلة"}, {"code": "44", "name": "Aïn Defla", "arabic_name": "عين الدفلى"}, {"code": "45", "name": "Naâma", "arabic_name": "النعامة"}, {"code": "46", "name": "Aïn Témouchent", "arabic_name": "عين تموشنت"}, {"code": "47", "name": "Ghardaïa", "arabic_name": "غرداية"}, {"code": "48", "name": "Relizane", "arabic_name": "غليزان"}, {"code": "49", "name": "Timimoun", "arabic_name": "تيميمون"}, {"code": "50", "name": "Bordj Badji Mokhtar", "arabic_name": "برج باجي مختار"}, {"code": "51", "name": "Ouled Djellal", "arabic_name": "أولاد جلال"}, {"code": "52", "name": "Béni Abbès", "arabic_name": "بني عباس"}, {"code": "53", "name": "Ain Salah", "arabic_name": "عين صالح"}, {"code": "54", "name": "Ain Guezzam", "arabic_name": "عين قزّام"}, {"code": "55", "name": "Touggourt", "arabic_name": "تقرت"}, {"code": "56", "name": "Djanet", "arabic_name": "جانت"}, {"code": "57", "name": "El M'Ghair", "arabic_name": "المغير"}, {"code": "58", "name": "El Menia", "arabic_name": "المنيعة"} ]; // Configuration const config = { formSelector: '#express-checkout-form, form[class*="checkout"], form.checkout-form', // Target form selector regionInputSelector: 'input[name="region"]', // Target the existing region input field fieldName: "region", // Use the existing region field requiredField: true, // Whether the field is required }; // Initialize the plugin when the DOM is fully loaded document.addEventListener('DOMContentLoaded', initWilayaDropdown); // Also try to initialize on page load in case DOMContentLoaded already fired window.addEventListener('load', function() { // Small delay to ensure all YouCan scripts have loaded setTimeout(initWilayaDropdown, 500); }); // Function to initialize the wilaya dropdown function initWilayaDropdown() { // Find the target form const form = document.querySelector(config.formSelector); // If form doesn't exist, try again later or with different selectors if (!form) { console.log('YouCan Wilaya Plugin: Form not found. Retrying in 1 second...'); setTimeout(function() { const alternativeSelectors = [ '#express-checkout-form', 'form.checkout-form', 'form.checkout', 'form[action*="checkout"]', 'form[class*="checkout"]' ]; for (const selector of alternativeSelectors) { const alternativeForm = document.querySelector(selector); if (alternativeForm) { convertRegionToWilayaDropdown(alternativeForm); return; } } console.error('YouCan Wilaya Plugin: Could not find a suitable form to inject the wilaya dropdown.'); }, 1000); return; } // If form exists, convert the region field convertRegionToWilayaDropdown(form); } // Function to convert the region input to a wilaya dropdown function convertRegionToWilayaDropdown(form) { // Find the region input field const regionInput = form.querySelector(config.regionInputSelector); if (!regionInput) { console.error('YouCan Wilaya Plugin: Could not find the region input field.'); return; } // Check if we've already converted this field if (regionInput.classList.contains('wilaya-converted')) { return; } // Get the parent form-group of the region field const regionFormGroup = regionInput.closest('.form-group') || regionInput.parentNode; if (!regionFormGroup) { console.error('YouCan Wilaya Plugin: Could not find the region form group.'); return; } // Get the existing label if it exists const existingLabel = regionFormGroup.querySelector('label'); // Create select element const select = document.createElement('select'); select.className = 'wilaya-select'; select.id = 'wilaya-select'; select.name = config.fieldName; if (config.requiredField) { select.setAttribute('required', 'required'); } // Add placeholder option const placeholderOption = document.createElement('option'); placeholderOption.value = ''; placeholderOption.textContent = 'اختر الولاية'; placeholderOption.selected = true; placeholderOption.disabled = true; select.appendChild(placeholderOption); // Add wilaya options wilayasData.forEach(function(wilaya) { const option = document.createElement('option'); option.value = wilaya.name; // Use name as value option.textContent = wilaya.arabic_name + ' (' + wilaya.code + ')'; option.setAttribute('data-code', wilaya.code); select.appendChild(option); }); // Replace the input with the select regionInput.style.display = 'none'; regionInput.classList.add('wilaya-converted'); regionInput.parentNode.insertBefore(select, regionInput); // Update the label text if needed if (existingLabel) { existingLabel.textContent = 'الولاية'; } // Sync the values between the select and the hidden input select.addEventListener('change', function() { regionInput.value = this.value; // Trigger change event on the original input to ensure validation works const event = new Event('change', { bubbles: true }); regionInput.dispatchEvent(event); }); // Inject CSS if it's not already injected injectCSS(); console.log('YouCan Wilaya Plugin: Region input successfully converted to wilaya dropdown.'); } // Function to inject CSS function injectCSS() { // Check if the CSS is already injected if (document.getElementById('wilaya-plugin-css')) { return; } // Create style element const style = document.createElement('style'); style.id = 'wilaya-plugin-css'; style.textContent = ` .wilaya-select { width: 100%; max-width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; background-color: #fff; font-size: 16px; height: 46px; -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"); background-repeat: no-repeat; background-position: right 10px center; background-size: 12px; padding-right: 30px; text-overflow: ellipsis; direction: rtl; transition: all 0.2s ease; } .wilaya-select:focus { outline: none; border-color: #4a90e2; box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2); } .wilaya-select option { font-size: inherit; } /* Responsive styles */ @media (max-width: 768px) { .wilaya-select { font-size: 15px; height: 44px; } } @media (max-width: 480px) { .wilaya-select { font-size: 14px; height: 42px; padding: 8px; padding-right: 28px; background-position: right 8px center; } } `; document.head.appendChild(style); } })();