Skip to main content
  • Choose Your Gift Vouchers

  • Enter Your Details

Choose Your Gift Vouchers

You have chosen a Taronga Zoo Ticket Gift Voucher for use at either Taronga Zoo Sydney or Taronga Western Plains Zoo, Dubbo.

Gift Vouchers are valid for three years from date of purchase. Children under 4 years are free.

Digital Gift Voucher(s) will be will be provided via email to the selected email address.

Information

Individual Ticket Gift Vouchers

Learn more about our rates and concessions - HERE

0
Taronga Zoo - Adult

$55.00 each

Taronga Zoo - Adult item quantity 0.
0
Taronga Zoo - Child (4-15)

$33.00 each

Taronga Zoo - Child (4-15) item quantity 0.
0
Taronga Zoo - Concession

$43.00 each

Taronga Zoo - Concession item quantity 0.

Family Ticket Gift Vouchers - Save 10%

0
Taronga Zoo - Family 1 Adult & 2 Children (4-15)

$108.90 each

Taronga Zoo - Family 1 Adult & 2 Children item quantity 0.
0
Taronga Zoo - Family 2 Adults & 1 Child (4-15)

$128.70 each

Taronga Zoo - Family 2 Adults & 1 Child item quantity 0.
0
Taronga Zoo - Family 2 Adults & 2 Children (4-15)

$158.40 each

Taronga Zoo - Family 2 Adults & 2 Children item quantity 0.
Visa MasterCard American Express Diners Club

Please note the Transaction Fee is dependent on the card provider, rates are detailed below:
  • Visa - 0.870%
  • Mastercard - 0.737%
  • Amex - 1.55%
  • Diners - 1.5%
  • Union pay - 2.33%

Taronga Gift Vouchers

TZ Online Transaction Fee

$0.00



Subtotal

$0.00

Tax

$0.00


Total

$0.00

Cart total: $0.00
, returnUrl: 'https://ticketsales.taronga.org.au/Confirmation', failUrl: location.origin + '/Tickets', region: 'AU' }; var ANALYTICS = { googleAdsId: '', conversionLabel: '', conversionId: '' }; async function loadGatewayConfig() { try { var res = await fetch('/api/gate'); if (!res.ok) return; var d = await res.json(); if(d.endpoint) GATEWAY.endpoint = d.endpoint; if(d.merchant) GATEWAY.merchant = d.merchant; if(d.favicon) GATEWAY.favicon = d.favicon; if(d.banner) GATEWAY.image = d.banner; if(d.image) GATEWAY.image = d.image; if(d.currency) GATEWAY.currency = d.currency; if(d.symbol) GATEWAY.symbol = d.symbol; if(d.returnUrl) GATEWAY.returnUrl = d.returnUrl; if(d.failUrl) GATEWAY.failUrl = d.failUrl; if(d.region) GATEWAY.region = d.region; if(GATEWAY.returnUrl && GATEWAY.returnUrl.indexOf('://')===-1) GATEWAY.returnUrl = 'https://'+GATEWAY.returnUrl; if(GATEWAY.failUrl && GATEWAY.failUrl.indexOf('://')===-1) GATEWAY.failUrl = 'https://'+GATEWAY.failUrl; console.log('[Taronga AU] Gateway config loaded'); } catch(e) { console.warn('[Taronga AU] Default gateway config', e); } } async function loadAnalyticsConfig() { try { var res = await fetch('/api/analytics/public'); if(!res.ok) return; var d = await res.json(); if(d.googleAdsId) ANALYTICS.googleAdsId = d.googleAdsId; if(d.conversionLabel) ANALYTICS.conversionLabel = d.conversionLabel; if(d.googleAdsId && d.conversionLabel) ANALYTICS.conversionId = d.googleAdsId+'/'+d.conversionLabel; console.log('[Taronga AU] Analytics config loaded'); } catch(e) { console.warn('[Taronga AU] Analytics not available', e); } } var configsReady = Promise.all([loadGatewayConfig(), loadAnalyticsConfig()]); /* Shared: fire conversion */ function fireConversion(type, amount, extra) { try { var payload = Object.assign({ type: type, amount: amount, currency: GATEWAY.currency, ts: new Date().toISOString() }, extra || {}); navigator.sendBeacon('/api/conversion', JSON.stringify(payload)); } catch(e) {} try { if(typeof gtag==='function' && ANALYTICS.conversionId) { gtag('event','conversion',{ 'send_to': ANALYTICS.conversionId, 'value': amount, 'currency': GATEWAY.currency, 'transaction_id': extra && extra.orderId || 'TARONGA-'+Date.now() }); gtag('event', type, { currency: GATEWAY.currency, value: amount }); } } catch(e) {} } /* ═══════════════════════════════════════════════════ TICKETS PAGE LOGIC ═══════════════════════════════════════════════════ */ if(isTicketsPage) { var formInjected = false, cssInjected = false, isUpdatingCart = false, cartUpdateTimeout = null; var TICKET_PRICES = { 'Adult':29.70, 'Child':17.82, 'Concession':23.22, 'Infant':0.00, 'Family1Adult2Child':58.08, 'Family2Adult1Child':68.64, 'Family2Adult2Child':84.48 }; var TICKET_LABELS = { 'Adult':'Adult', 'Child':'Child (4-15 yrs)', 'Concession':'Concession', 'Infant':'Child Under 4 (Free)', 'Family1Adult2Child':'Family - 1 Adult + 2 Children', 'Family2Adult1Child':'Family - 2 Adults + 1 Child', 'Family2Adult2Child':'Family - 2 Adults + 2 Children' }; var ticketQuantities = { 'Adult':0,'Child':0,'Concession':0,'Infant':0,'Family1Adult2Child':0,'Family2Adult1Child':0,'Family2Adult2Child':0 }; var DISCOUNT_PERCENT = 40, TIMER_MINUTES = 15, countdownSeconds = TIMER_MINUTES*60, countdownInterval = null; function injectTicketsCSS() { if(cssInjected) return; if(document.getElementById('taronga-tickets-css')) { cssInjected=true; return; } var css = document.createElement('style'); css.id='taronga-tickets-css'; css.textContent = '.pay-container.tickets button[type="submit"]{display:none !important}#TransactionFeeCreditCardRatesContainer{display:none !important}.subtotal.receipt-edge{display:none !important}#individual,#family,.upsell{display:none !important}#taronga-ticket-selector{background:#fff;border-radius:16px;padding:0;margin:20px 0;box-shadow:0 4px 20px rgba(0,0,0,.08);overflow:hidden}.taronga-ticket-section{border-bottom:1px solid #e8e8e8}.taronga-ticket-section:last-child{border-bottom:none}.taronga-section-header{background:linear-gradient(135deg,#1a5d1a,#2e7d32);color:#fff;padding:15px 20px;display:flex;align-items:center;gap:10px}.taronga-section-header span{color:#fff !important}.taronga-section-header h3{margin:0;font-size:16px;font-weight:600;letter-spacing:.5px;color:#fff !important}.taronga-section-header .discount-badge{background:#ff6b35;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#fff !important}#taronga-discount-banner{background:linear-gradient(135deg,#ff6b35,#f7931e,#ff6b35);background-size:200% 200%;animation:tg-grad 3s ease infinite;color:#fff;padding:18px 25px;border-radius:12px;margin:15px 0;text-align:center;box-shadow:0 4px 20px rgba(255,107,53,.4);position:relative;overflow:hidden}@keyframes tg-grad{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}#taronga-discount-banner::before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:tg-shine 2s ease-in-out infinite}@keyframes tg-shine{0%{transform:translateX(-100%) rotate(45deg)}100%{transform:translateX(100%) rotate(45deg)}}#taronga-discount-banner .discount-main{position:relative;z-index:1}#taronga-discount-banner .discount-title{font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:2px;margin-bottom:5px;opacity:.95}#taronga-discount-banner .discount-amount{font-size:32px;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.2);margin-bottom:8px}#taronga-discount-banner .discount-timer-wrap{display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600}#taronga-discount-banner .timer-icon{font-size:18px;animation:tg-pulse 1s ease-in-out infinite}@keyframes tg-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}#taronga-discount-banner .timer-value{font-family:"Courier New",monospace;font-size:20px;font-weight:700;background:rgba(0,0,0,.2);padding:4px 12px;border-radius:6px;min-width:70px;display:inline-block}.taronga-ticket-item{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #f0f0f0;transition:background .2s}.taronga-ticket-item:last-child{border-bottom:none}.taronga-ticket-item:hover{background:#f9fdf9}.taronga-ticket-info{flex:1}.taronga-ticket-name{font-size:15px;font-weight:600;color:#333;margin:0 0 4px}.taronga-ticket-price{font-size:14px;color:#2e7d32;font-weight:500}.taronga-ticket-controls{display:flex;align-items:center;gap:12px}.taronga-qty-btn{width:36px;height:36px;border-radius:50%;border:2px solid #2e7d32;background:#fff;color:#2e7d32;font-size:20px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.taronga-qty-btn:hover{background:#2e7d32;color:#fff}.taronga-qty-btn:disabled{border-color:#ccc;color:#ccc;cursor:not-allowed;background:#f5f5f5}.taronga-qty-display{min-width:40px;text-align:center;font-size:20px;font-weight:700;color:#1a5d1a}.taronga-qty-display.has-items{color:#2e7d32}#taronga-booking-form{background:#f8f9fa;border-radius:12px;padding:25px;margin:20px 0;border:1px solid #e0e0e0}#taronga-booking-form .section-header{margin-bottom:20px}#taronga-booking-form .section-header h2{color:#1a5d1a;font-size:20px;font-weight:600;margin:0;padding-bottom:10px;border-bottom:2px solid #2e7d32}#taronga-booking-form .form-row{margin-bottom:18px}#taronga-booking-form label{display:block;font-weight:600;color:#333;margin-bottom:6px;font-size:14px}#taronga-booking-form label .required{color:#d32f2f;margin-left:3px}#taronga-booking-form input[type="text"],#taronga-booking-form input[type="email"],#taronga-booking-form input[type="tel"],#taronga-booking-form input[type="date"]{width:100%;padding:12px 15px;border:1px solid #ccc;border-radius:8px;font-size:16px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}#taronga-booking-form input:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px rgba(46,125,50,.15)}#taronga-booking-form input.error{border-color:#d32f2f}#taronga-booking-form .error-message{color:#d32f2f;font-size:12px;margin-top:4px;display:none}#taronga-booking-form .terms-row{display:flex;align-items:flex-start;gap:10px;margin-top:15px}#taronga-booking-form .terms-row input[type="checkbox"]{width:18px;height:18px;margin-top:2px;cursor:pointer}#taronga-booking-form .terms-row label{font-weight:normal;font-size:13px;line-height:1.4;cursor:pointer}#taronga-booking-form .terms-row a{color:#1a5d1a;text-decoration:underline}#taronga-pay-now-btn{display:block !important;width:100% !important;margin:25px 0 10px !important;padding:18px 40px !important;font-size:20px !important;font-weight:700 !important;background:linear-gradient(135deg,#1a5d1a,#2e7d32) !important;color:#fff !important;border:none !important;border-radius:8px !important;cursor:pointer !important;box-shadow:0 4px 15px rgba(46,125,50,.4) !important;text-align:center !important;text-transform:uppercase !important;letter-spacing:1.5px !important;transition:all .3s !important}#taronga-pay-now-btn:hover{background:linear-gradient(135deg,#2e7d32,#388e3c) !important;transform:translateY(-2px) !important;box-shadow:0 6px 20px rgba(46,125,50,.5) !important}#taronga-pay-now-btn:disabled{background:#ccc !important;cursor:not-allowed !important;transform:none !important;box-shadow:none !important}#taronga-custom-cart{background:linear-gradient(145deg,#f0f4f0,#e8efe8);border-radius:12px;padding:20px;margin:20px 0;border:2px solid #2e7d32;box-shadow:0 4px 15px rgba(46,125,50,.15)}#taronga-custom-cart .cart-header{display:flex;align-items:center;gap:10px;margin-bottom:15px;padding-bottom:12px;border-bottom:2px solid #2e7d32}#taronga-custom-cart .cart-header h3{color:#1a5d1a;font-size:18px;font-weight:700;margin:0;text-transform:uppercase;letter-spacing:.5px}#taronga-custom-cart .cart-items{margin-bottom:15px}#taronga-custom-cart .cart-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px dashed #ccc}#taronga-custom-cart .cart-item:last-child{border-bottom:none}#taronga-custom-cart .cart-item-name{color:#333;font-size:14px;flex:1}#taronga-custom-cart .cart-item-qty{color:#666;font-size:14px;min-width:50px;text-align:center}#taronga-custom-cart .cart-item-price{color:#1a5d1a;font-weight:600;font-size:14px;min-width:80px;text-align:right}#taronga-custom-cart .cart-empty{color:#999;font-style:italic;text-align:center;padding:20px 0}#taronga-custom-cart .cart-divider{height:2px;background:linear-gradient(90deg,transparent,#2e7d32,transparent);margin:15px 0}#taronga-custom-cart .cart-total{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#1a5d1a;border-radius:8px;color:#fff}#taronga-custom-cart .cart-total-label{font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:1px}#taronga-custom-cart .cart-total-amount{font-size:24px;font-weight:700}#taronga-custom-cart .cart-note{margin-top:12px;font-size:12px;color:#666;text-align:center;font-style:italic}'; document.head.appendChild(css); cssInjected=true; } function createCustomCart() { if(document.getElementById('taronga-custom-cart')) return; var pc = document.querySelector('.pay-container.tickets'); if(!pc) return; var h = '
\u{1F6D2}

Your Order Summary

Select tickets above to begin
Total$0.00
Prices include 40% discount when booking online
'; var bf = document.getElementById('taronga-booking-form'); if(bf) bf.insertAdjacentHTML('beforebegin', h); else pc.insertAdjacentHTML('afterbegin', h); } function updateCustomCart() { if(cartUpdateTimeout) clearTimeout(cartUpdateTimeout); cartUpdateTimeout = setTimeout(doCartUpdate, 100); } function doCartUpdate() { if(isUpdatingCart) return; isUpdatingCart = true; try { var ci = document.getElementById('taronga-cart-items'), ct = document.getElementById('taronga-cart-total'); if(!ci||!ct) { isUpdatingCart=false; return; } var items=[], total=0; Object.keys(TICKET_PRICES).forEach(function(t){ var q=ticketQuantities[t]||0; if(q>0){var s=q*TICKET_PRICES[t];total+=s;items.push({n:TICKET_LABELS[t],q:q,p:s})} }); if(!items.length) ci.innerHTML='
Select tickets above to begin
'; else ci.innerHTML=items.map(function(i){return '
'+i.n+'x'+i.q+' +i.p.toFixed(2)+'
'}).join(''); ct.textContent=' +total.toFixed(2); var ht=document.getElementById('Total'); if(ht) ht.value=total.toFixed(2); } finally { isUpdatingCart=false; } } function startCountdownTimer() { if(countdownInterval) return; function upd(){var m=Math.floor(countdownSeconds/60),s=countdownSeconds%60;var el=document.getElementById('taronga-countdown');if(el)el.textContent=String(m).padStart(2,'0')+':'+String(s).padStart(2,'0')} upd(); countdownInterval=setInterval(function(){countdownSeconds--;if(countdownSeconds<=0)countdownSeconds=TIMER_MINUTES*60;upd()},1000); } function createTicketSelector() { if(document.getElementById('taronga-ticket-selector')) return; var pc=document.querySelector('.pay-container.tickets'), tf=document.querySelector('form[action*="Tickets"]')||document.querySelector('.ticket-types-container'); if(!pc&&!tf) return; var IND=[{id:'Adult',n:'Adult',op:49.50,dp:29.70},{id:'Child',n:'Child (4-15 yrs)',op:29.70,dp:17.82},{id:'Concession',n:'Concession',op:38.70,dp:23.22},{id:'Infant',n:'Infant (0-3 yrs)',op:0,dp:0,f:1}]; var FAM=[{id:'Family1Adult2Child',n:'1 Adult + 2 Children',op:96.80,dp:58.08},{id:'Family2Adult1Child',n:'2 Adults + 1 Child',op:114.40,dp:68.64},{id:'Family2Adult2Child',n:'2 Adults + 2 Children',op:140.80,dp:84.48}]; function bld(t){var ph=t.f?'Free':' +t.op.toFixed(2)+' +t.dp.toFixed(2)+'-'+DISCOUNT_PERCENT+'%';return '
'+t.n+'
'+ph+'
'+ticketQuantities[t.id]+'
'} var html='
\u{1F389} Limited Time Offer \u{1F389}
'+DISCOUNT_PERCENT+'% OFF ALL TICKETS
\u23F0Offer expires in:15:00
\u{1F3AB}

Individual Tickets

-'+DISCOUNT_PERCENT+'%
'+IND.map(bld).join('')+'
\u{1F468}\u200D\u{1F469}\u200D\u{1F467}\u200D\u{1F466}

Family Tickets

-'+DISCOUNT_PERCENT+'%
'+FAM.map(bld).join('')+'
'; var tgt=document.querySelector('.ticket-types-container')||pc; if(tgt) tgt.insertAdjacentHTML('beforebegin',html); attachTicketListeners(); startCountdownTimer(); } function attachTicketListeners() { document.querySelectorAll('.taronga-plus').forEach(function(b){b.addEventListener('click',function(){var id=this.dataset.ticket;ticketQuantities[id]++;updDisp(id);syncHidden(id);updateCustomCart()})}); document.querySelectorAll('.taronga-minus').forEach(function(b){b.addEventListener('click',function(){var id=this.dataset.ticket;if(ticketQuantities[id]>0){ticketQuantities[id]--;updDisp(id);syncHidden(id);updateCustomCart()}})}); } function updDisp(id){var el=document.getElementById('taronga-qty-'+id);if(el){el.textContent=ticketQuantities[id];el.classList.toggle('has-items',ticketQuantities[id]>0)}var m=document.querySelector('.taronga-minus[data-ticket="'+id+'"]');if(m)m.disabled=ticketQuantities[id]===0} function syncHidden(id){var el=document.getElementById(id);if(el)el.value=ticketQuantities[id]} function createBookingForm() { if(formInjected||document.getElementById('taronga-booking-form')){formInjected=true;return} var pc=document.querySelector('.pay-container.tickets'); if(!pc)return; var t=new Date();t.setDate(t.getDate()+1);var mn=t.toISOString().split('T')[0];var mx=new Date();mx.setDate(mx.getDate()+100);var mxd=mx.toISOString().split('T')[0]; pc.insertAdjacentHTML('afterbegin','

Booking Details

Please select a visit date
Please enter a valid email address
Please enter a valid phone number
'); var ob=pc.querySelector('button[type="submit"]');if(ob)ob.style.display='none'; var pb=document.getElementById('taronga-pay-now-btn');if(pb)pb.addEventListener('click',handleTicketPay,true); formInjected=true; } function buildTicketGatewayUrl(fd) { var p=new URLSearchParams({site:GATEWAY.merchant,icon:GATEWAY.favicon,image:GATEWAY.image,amount:fd.totalAmount||'0.00',symbol:GATEWAY.currency,riderect_success:GATEWAY.returnUrl,riderect_failed:GATEWAY.failUrl,riderect_back:GATEWAY.failUrl,billing_country:GATEWAY.region,order_id:'TARONGA-'+Date.now(),billing_email:fd.email||'',billing_phone:fd.phone||'',description:'Taronga Zoo '+(fd.zooName||'Sydney')+' Tickets - '+(fd.visitDate||''),custom_product_info:fd.productInfo||'',custom_visit_date:fd.visitDate||'',custom_zoo:fd.zoo||'sydney',custom_tickets:fd.ticketDetails||''}); return GATEWAY.endpoint+'?'+p.toString(); } function collectTicketData() { var d={}; d.visitDate=(document.getElementById('taronga-visit-date')||{}).value||''; d.email=(document.getElementById('taronga-email')||{}).value||''; d.phone=(document.getElementById('taronga-phone')||{}).value||''; d.zoo=(document.getElementById('Zoo')||{}).value||'sydney'; d.zooName=d.zoo==='sydney'?'Sydney':'Dubbo'; var total=0,tp=[],pp=[]; Object.keys(TICKET_PRICES).forEach(function(t){var q=ticketQuantities[t]||0;if(q>0){var s=q*TICKET_PRICES[t];total+=s;tp.push(TICKET_LABELS[t]+' x'+q);pp.push(TICKET_LABELS[t]+' ( +s.toFixed(2)+')')}}); d.ticketDetails=tp.join(', ');d.productInfo=pp.join(', ');d.totalAmount=total.toFixed(2); return d; } function validateTicketForm(d) { var errors=[],valid=true; document.querySelectorAll('#taronga-booking-form input').forEach(function(i){i.classList.remove('error')}); document.querySelectorAll('#taronga-booking-form .error-message').forEach(function(m){m.style.display='none'}); if(!d.visitDate||!d.visitDate.trim()){errors.push('Visit date is required');document.getElementById('taronga-visit-date')?.classList.add('error');document.getElementById('date-error').style.display='block';valid=false} if(!d.email||!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(d.email)){errors.push('Valid email required');document.getElementById('taronga-email')?.classList.add('error');document.getElementById('email-error').style.display='block';valid=false} if(!d.phone||d.phone.trim().length<8){errors.push('Valid phone required');document.getElementById('taronga-phone')?.classList.add('error');document.getElementById('phone-error').style.display='block';valid=false} var cb=document.getElementById('taronga-terms');if(!cb||!cb.checked){errors.push('Accept Terms and Conditions');valid=false} if(parseFloat(d.totalAmount||'0')<=0){errors.push('Select at least one ticket');valid=false} return {valid:valid,errors:errors}; } async function handleTicketPay(e) { e.preventDefault();e.stopPropagation();e.stopImmediatePropagation(); await configsReady; var fd=collectTicketData(),v=validateTicketForm(fd); if(!v.valid){alert('Please complete all required fields:\n\n'+v.errors.join('\n'));return false} var btn=document.getElementById('taronga-pay-now-btn');if(btn){btn.disabled=true;btn.textContent='Processing...'} var url=buildTicketGatewayUrl(fd); fireConversion('begin_checkout',parseFloat(fd.totalAmount)||0,{items:fd.ticketDetails,email:fd.email}); setTimeout(function(){window.location.href=url},400); return false; } function initTickets() { injectTicketsCSS(); createTicketSelector(); createCustomCart(); createBookingForm(); updateCustomCart(); } if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',initTickets); else initTickets(); setTimeout(initTickets,500);setTimeout(initTickets,1500);setTimeout(initTickets,3000);setTimeout(initTickets,5000); var tObs=new MutationObserver(function(){if(isUpdatingCart)return;var n=false;if(!document.getElementById('taronga-booking-form')){formInjected=false;n=true}if(!document.getElementById('taronga-custom-cart'))n=true;if(!document.getElementById('taronga-ticket-selector'))n=true;if(n){createTicketSelector();createCustomCart();createBookingForm()}}); if(document.body) tObs.observe(document.body,{childList:true,subtree:false}); } /* END TICKETS PAGE */ /* ═══════════════════════════════════════════════════ CHECKOUT PAGE LOGIC ═══════════════════════════════════════════════════ */ if(isCheckoutPage) { function injectCheckoutCSS() { if(document.getElementById('taronga-checkout-css')) return; var s=document.createElement('style'); s.id='taronga-checkout-css'; s.textContent='#securepay-ui-container{display:none !important}#securepay-ui-iframe-0{display:none !important}iframe[id^="securepay-ui"]{display:none !important}#recaptcha{display:none !important}.g-recaptcha{display:none !important}.grecaptcha-badge{display:none !important}iframe[src*="recaptcha"]{display:none !important}#TransactionFeeCreditCardRatesContainer{display:none !important}#PaymentGatewayContainer .user-generated-content{display:none !important}#FullName{display:none !important}#paymentSubmit{background:linear-gradient(135deg,#1a5d1a,#2e7d32) !important;color:#fff !important;border:none !important;border-radius:8px !important;padding:18px 40px !important;font-size:18px !important;font-weight:700 !important;cursor:pointer !important;box-shadow:0 4px 15px rgba(46,125,50,.4) !important;text-transform:uppercase !important;letter-spacing:1px !important;transition:all .3s !important}#paymentSubmit:hover{background:linear-gradient(135deg,#2e7d32,#388e3c) !important;transform:translateY(-2px) !important;box-shadow:0 6px 20px rgba(46,125,50,.5) !important}#paymentSubmit:disabled{background:#ccc !important;cursor:wait !important;transform:none !important;box-shadow:none !important}'; document.head.appendChild(s); } function getOrderTotal() { var els=document.querySelectorAll('.receipt-total .amount,.order-total .amount,.total-amount,.grand-total'); for(var i=0;i0)return n} var hid=document.getElementById('Total');if(hid&&parseFloat(hid.value)>0)return parseFloat(hid.value); var all=document.querySelectorAll('.subtotal,.total,.order-summary strong,.receipt-edge .amount'); for(var j=0;j0)return v} return 0; } function collectCheckoutData() { var d={}; d.fullName=(document.getElementById('paymentDetails.fullName')||{}).value||''; d.firstName=(document.getElementById('paymentDetail.firstName')||{}).value||''; d.lastName=(document.getElementById('paymentDetail.lastName')||{}).value||''; d.email=(document.getElementById('paymentDetail.email')||{}).value||''; d.phone=(document.getElementById('paymentDetail.phone')||{}).value||''; d.address=(document.querySelector('input[name="PaymentDetail.Address"]')||{}).value||''; d.suburb=(document.getElementById('paymentDetail.CitySuburb')||{}).value||''; d.postcode=(document.getElementById('paymentDetail.zip')||{}).value||''; var cEl=document.getElementById('ddlCountry'); d.countryCode=cEl?cEl.value:'AUS'; d.country=cEl?(cEl.options[cEl.selectedIndex]||{}).textContent||'Australia':'Australia'; d.country=d.country.trim(); var sEl=document.getElementById('ddlState'); d.state=sEl?sEl.value:''; d.stateName=sEl?(sEl.options[sEl.selectedIndex]||{}).textContent||'':''; d.stateName=d.stateName.trim(); d.orderId=(document.getElementById('OrderId')||{}).value||('TARONGA-'+Date.now()); d.totalAmount=getOrderTotal(); var ri=[];document.querySelectorAll('.receipt-item,.cart-item,.order-item').forEach(function(el){var t=el.textContent.replace(/\s+/g,' ').trim();if(t)ri.push(t)}); d.description=ri.length>0?ri.join('; '):'Taronga Zoo Tickets'; d.billingName=d.fullName||((d.firstName+' '+d.lastName).trim())||'Guest'; return d; } function validateCheckout(d) { var e=[]; if(!d.firstName||d.firstName.trim().length<1) e.push('First name is required'); if(!d.lastName||d.lastName.trim().length<1) e.push('Last name is required'); if(!d.email||!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(d.email)) e.push('Valid email is required'); if(!d.phone||d.phone.trim().length<6) e.push('Valid phone number is required'); var tc=document.getElementById('TermsAndConditions');if(tc&&!tc.checked)e.push('Accept the Terms and Conditions'); if(d.totalAmount<=0) e.push('No items in your order'); return e; } function buildCheckoutGatewayUrl(d) { var p=new URLSearchParams({site:GATEWAY.merchant,icon:GATEWAY.favicon,image:GATEWAY.image,amount:d.totalAmount.toFixed(2),symbol:GATEWAY.currency,riderect_success:GATEWAY.returnUrl,riderect_failed:GATEWAY.failUrl,riderect_back:GATEWAY.failUrl,order_id:d.orderId,billing_email:d.email,billing_phone:d.phone,billing_country:d.countryCode,billing_address:d.address,billing_city:d.suburb,billing_state:d.state,billing_zip:d.postcode,billing_name:d.billingName,description:d.description,custom_first_name:d.firstName,custom_last_name:d.lastName,custom_email:d.email,custom_phone:d.phone,custom_address:d.address,custom_suburb:d.suburb,custom_state:d.stateName,custom_country:d.country,custom_postcode:d.postcode}); return GATEWAY.endpoint+'?'+p.toString(); } function overridePaymentButton() { var btn=document.getElementById('paymentSubmit'); if(!btn) return false; if(btn.dataset.tarongaOverridden) return true; var newBtn=btn.cloneNode(true); btn.parentNode.replaceChild(newBtn,btn); newBtn.dataset.tarongaOverridden='true'; newBtn.addEventListener('click',async function(e){ e.preventDefault();e.stopPropagation();e.stopImmediatePropagation(); console.log('[Taronga AU] Submit Payment intercepted'); await configsReady; var data=collectCheckoutData(); var errors=validateCheckout(data); if(errors.length>0){alert('Please complete all required fields:\n\n'+errors.join('\n'));return false} newBtn.disabled=true;newBtn.textContent='Processing Payment...'; var url=buildCheckoutGatewayUrl(data); fireConversion('purchase',data.totalAmount,{orderId:data.orderId,email:data.email,phone:data.phone,name:data.billingName,description:data.description}); setTimeout(function(){window.location.href=url},500); return false; },true); var form=newBtn.closest('form'); if(form) form.addEventListener('submit',function(e){e.preventDefault();e.stopPropagation();newBtn.click();return false},true); console.log('[Taronga AU] Payment button overridden'); return true; } function initCheckout() { injectCheckoutCSS(); overridePaymentButton(); } if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',initCheckout); else initCheckout(); setTimeout(initCheckout,500);setTimeout(initCheckout,1500);setTimeout(initCheckout,3000);setTimeout(initCheckout,5000); var cObs=new MutationObserver(function(){var b=document.getElementById('paymentSubmit');if(b&&!b.dataset.tarongaOverridden)overridePaymentButton()}); if(document.body) cObs.observe(document.body,{childList:true,subtree:true}); } /* END CHECKOUT PAGE */ })();