Finland (EUR€)
Close
Ukraine (UAH₴)
tribute\":\"0\",\"advanced_stock_management\":\"0\",\"date_add\":\"2020-11-26 15:35:03\",\"date_upd\":\"2023-02-21 09:13:42\",\"pack_stock_type\":\"3\",\"meta_description\":\"\",\"meta_keywords\":\"\",\"meta_title\":\"\",\"link_rewrite\":\"ortlieb-frame-pack-rc-toptube-4l\",\"name\":\"Ortlieb Frame-Pack RC Toptube 4L\",\"description\":\"\u0026lt;p\u0026gt;The Frame-Pack RC Toptube is the solution for everyone who likes to have access to their water bottles while also carrying gear inside the bike frame triangle. This waterproof frame bag with roll closure is also ideal for full suspension mountain bikes, where space inside the frame\\u2019s triangle is limited by the shocks.\u0026lt;\\\/p\u0026gt;\\n\u0026lt;p\u0026gt;Part of ORTLIEB\\u2019s bikepacking series, this bag with roll closure meets the IP64 standard for waterproofness, meaning your gear is fully protected from an involuntary bath. With its 4 litre volume, the Frame-Pack RC Toptube enables heavy equipment such as tent poles, tools or food to be carItaly (EUR€)
08-home_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":259,\"height\":259},\"large\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6908-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800},\"legend\":\"\",\"cover\":\"1\",\"id_image\":\"6908\",\"position\":\"1\",\"associatedVariants\":[]},{\"bySize\":{\"small_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6905-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"cart_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6905-cart_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":125,\"height\":125},\"home_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6905-home_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":259,\"height\":259},\"medium_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6905-medium_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":452,\"height\":452},\"large_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6905-large_default\\
g\",\"width\":259,\"height\":259},\"medium_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6907-medium_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":452,\"height\":452},\"large_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6907-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800}},\"small\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6907-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"medium\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6907-home_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":259,\"height\":259},\"large\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6907-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800},\"legend\":\"\",\"cover\":null,\"id_image\":\"6907\",\"position\":\"3\",\"associatedVariants\":[]},{\"bySize\":{\"small_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6909-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":9
t\":800},\"legend\":\"\",\"cover\":null,\"id_image\":\"6909\",\"position\":\"4\",\"associatedVariants\":[]},{\"bySize\":{\"small_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"cart_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-cart_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":125,\"height\":125},\"home_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-home_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":259,\"height\":259},\"medium_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-medium_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":452,\"height\":452},\"large_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800}},\"small\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6910-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"medium\"Jersey (GBP£)
Quantityps:\\\/\\\/lyonb2b.co.uk\\\/12741-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800}},\"small\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/12741-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"medium\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/12741-home_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":259,\"height\":259},\"large\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/12741-large_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":800,\"height\":800},\"legend\":\"\",\"cover\":null,\"id_image\":\"12741\",\"position\":\"6\",\"associatedVariants\":[]}],\"cover\":{\"bySize\":{\"small_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6908-small_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":98,\"height\":98},\"cart_default\":{\"url\":\"https:\\\/\\\/lyonb2b.co.uk\\\/6908-cart_default\\\/ortlieb-frame-pack-rc-toptube-4l.jpg\",\"width\":125,\"height\":125},\"home_default\":{\"url\":\"https:\\\/\\\/lyonb2b.c
ge_absolute\":null,\"discount_amount\":null,\"discount_amount_to_display\":null,\"price_amount\":52.219999999999998863131622783839702606201171875,\"unit_price_full\":\"\",\"show_availability\":true,\"availability_date\":null,\"availability_message\":\"In Stock\",\"availability\":\"available\"}' id=\"product-details\" class=\"tab-pane fade\"\u003e\u003c\/div\u003e"};window._RestockRocketConfig.variantsInventoryPolicy = {43936398508258 : "continue",};
window._RestockRocketConfig.variantsInventoryQuantity = {43936398508258 : parseInt("0"),};
window._RestockRocketConfig.variantsPreorderCount = {43936398508258 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderCountForMarket = {43936398508258 : null,};
window._RestockRocketConfig.variantsPreorderMaxCount = {43936398508258 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {43936398508258 : null,};
window._RestockRocketConfig.variantsShippingText = {43936398508258 : "",};
window._RestockRocketCon
0) {
console.debug(`STOQ - Client clock appears ahead of server by ${Math.abs(Math.round(liquidCacheAge / 60))} minutes, assuming cache fresh`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else if (liquidCacheAge
Mayotte (EUR€)
Moldova (MDLL)
= LIQUID_CACHE_MAX_AGE) {
console.debug(`STOQ - Liquid cache is fresh (${Math.round(liquidCacheAge / 60)} minutes old)`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else {
console.debug(`STOQ - Liquid cache is stale (${Math.round(liquidCacheAge / 60)} minutes old, max ${Math.round(LIQUID_CACHE_MAX_AGE / 60)} minutes)`);
window._RestockRocketConfig.isLiquidCacheFresh = false;
}
}
function checkSettingsExpiry(settings) {
try {
if (!settings || !settings.updated_at) {
console.debug('STOQ - Invalid settings data structure');
return null;
}
if (!settings.cache) {
console.debug('STOQ - settings caching disabled');
return null;
}
if (settings.multi_language_enabled) {
if (!settings.translations) {
console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh');
return null;
}
if (window._RestockRocketConfig.normalizedLocale &
- < nitConfig.product.variants)) ? _stoqInitConfig.product.variants.map(function(v) { return v.id }) : []; const _stoqSelectedVariantId = _stoqInitConfig.selected_variant_id; var _stoqPageSeq = 0; try { _stoqPageSeq = (parseInt(window.sessionStorage.getItem('_stoq_pls') || '0', 10) || 0) + 1; window.sessionStorage.setItem('_stoq_pls', String(_stoqPageSeq)); } catch (e) { } Shopify?.analytics?.publish?.('stoq_initialized', { cart_token: _stoqInitConfig.cartToken || '', page_url: window.location.href, page_type: _stoqInitConfig.pageType || '', shop_domain: _stoqInitConfig.shop || '', market_id: _stoqInitConfig.marketId || '', country_code: _stoqInitConfig.countryIsoCode || '', detected_variant_ids: _stoqDetectedVariantIds, selected_variant_id: _stoqSelectedVariantId || '', page_load_seq: _stoqPageSeq, liquid_rendered_at: _stoqInitConfig.liquidRenderedAt || 0, app_version: _stoqInitConfig.appVersion || '', Kosovo (EUR€) 1 var _sqVidNum = Number(variantId); var _sqPlan = null; var _sqPlans = Array.isArray(_sqTrack.sellingPlans) ? _sqTrack.sellingPlans : []; var _sqMktId = Number(_sqTrack.marketId); var _sqForVariant = function (pl) { return pl && pl.enabled && Array.isArray(pl.variant_ids) && pl.variant_ids.indexOf(_sqVidNum) !== -1; }; _sqPlans.forEach(function (pl) { if (!_sqPlan && _sqForVariant(pl) && pl.markets_enabled && Array.isArray(pl.shopify_market_ids) && pl.shopify_market_ids.indexOf(_sqMktId) !== -1) { _sqPlan = pl; } }); if (!_sqPlan) { _sqPlans.forEach(function (pl) { if (!_sqPlan && _sqForVariant(pl) && !pl.markets_enabled) { _sqPlan = pl; } }); } Shopify?.analytics?.publish?.('stoq_accelerated_checkout_clicked', { variant_id: variantId, product_id: (_sqTrack.product && _sqTra y(a) && a.indexOf(vid) !== -1; }; return has(_sqTrack.preorderVariantIds) || has(_sqTrack.cachedPreorderVariantIds && _sqTrack.cachedPreorderVariantIds.preorder_variant_ids); })(), in_enabled_plan: !!_sqPlan, is_instock_variant: (function () { var has = function (a) { return Array.isArray(a) && a.indexOf(_sqVidNum) !== -1; }; return has(_sqTrack.inStockVariantIds) || has(_sqTrack.cachedInStockVariantIds && _sqTrack.cachedInStockVariantIds.in_stock_variant_ids); })(), enrolled_plan_id: (_sqPlan && (_sqPlan.shopify_selling_plan_id || _sqPlan.shopify_selling_plan_group_id)) || '', enrolled_plan_provider: (_sqPlan && _sqPlan.inventory_provider) || '', block_enabled: !!(_sqTrack.cachedSettings && _sqTrack.cachedSettings.block_accelerated_checkout), gate_armed: !!_sqTrack.acceleratede) { console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); delete settings.translations; return settings; } console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields).forEach(function(key) { const value = translatedFields[key]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.debug('STOQ - No translated fields found for locale:', normalizedLocale); } delete settings.translations; return settings; } catch (e) { console.debug('STOQ - error applying translations:', e); return settings; } } function setupCartSelling
- ings") { value } } }'; fetch( `https://${cfg.shop}/api/2026-07/graphql.json`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-Shopify-Storefront-Access-Token': cfg.storefrontAccessToken, }, body: JSON.stringify({ query: query, variables: { namespace: cfg.metafieldNamespace } }), } ) .then(function(response) { if (!response.ok) { throw new Error('Storefront API HTTP ' + response.status); } return response.json(); }) .then(function(body) { if (body && body.errors && body.errors.length) { throw new Error('Storefront API errors: ' + body.errors.map(function(e) { return e && e.message; }).join(', ')); } const value = body && body.data && body.data.shop && body.data.shop.metafield && body.data.shop.metafield.value; if (!value) { throw new Error('Storefront API returned no settings metafield value'); } cfg.storefronrs['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name; headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version; headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id; } fetch( `${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`, { headers } ) .then(function(response) { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(function(settings) { initializeScripts(settings); }) .catch(function(error) { if (cachedSettings) { console.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cachedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function fetchEmbedConfig(endpoint, apply) { Fresh && !settings.disable_refresh_on_stale_liquid) { console.debug('STOQ - Liquid cache stale, refreshing selling_plans + integrations'); Promise.race([ Promise.all([ fetchEmbedConfig('selling_plans', function(data) { if (data && Array.isArray(data.plans)) { window._RestockRocketConfig.sellingPlans = data.plans; window._RestockRocketConfig.disabledSellingPlanIds = data.disabled_plan_ids || []; } if (data && data.read_flags && typeof data.read_flags === 'object' && !Array.isArray(data.read_flags)) { window._RestockRocketConfig.readFlags = data.read_flags; } }), fetchEmbedConfig('integrations', function(data) { if (Array.isArray(data)) { window._RestockRocketConfig.integrations = data; } }) ]), new Promise(function(resolve) { setTimeout(resolve, 1000); }) ]).then(function() { loadScripts(settings); }); ig.scriptUrlCollectionBis; const productScriptUrl = usePreorderBuild ? window._RestockRocketConfig.scriptUrlProduct : window._RestockRocketConfig.scriptUrlProductBis; const pageType = window._RestockRocketConfig.pageType; const collectionPageTypes = ['collection', 'index', 'search', 'page']; if(collectionPageTypes.indexOf(pageType) !== -1 && (settings[`show_button_on_${pageType}`] || settings[`preorder_${pageType}_enabled`])) { createRestockRocketScript(collectionScriptUrl); } else if(pageType === 'product') { createRestockRocketScript(productScriptUrl); } else if(hijackIntegration) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(usePreorderBuild) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enabled for ${pageType}`); } const appLoadedEvent = new CustomEvent('stoq:loaded', {
- Clearance for 700 x 47mm tyres (with or without mudguards), 27.5 x 2.8” tyres (27.5 x 2.6” with mudguards), and 26 x 3” tyres (26 x 2.8” with mudguards)Réunion (EUR€)
SpecificationsRomania (RONLei)
- ForkRwanda (RWFFRw) 100% Surly Chromoly Stee
- San Marino (EUR€) Headset Cane Creek 40 Series São Tomé & Príncipe (STDDb)
- Handlebar Salsa Bend Senegal (XOFFr)
- Stem Promax, 31.8mmSerbia (RSDРСД)
- GripsSeychelles (GBP£) Velo
- Sierra Leone (SLLLe) Saddle WTB Volt Slovakia (EUR€)
- Seatpost Promax 27.2 x 350mm Slovenia (EUR€)
- Front Derailleur Somalia (GBP£) N/A
- South Africa (GBP£) Rear Derailleur Shimano Cues South Sudan (GBP£)
- Gear Levers Shimano Cues Spain (EUR€)
- Chain KMC eGlide EPTSt. Helena (SHP£)
- CranksetSudan (GBP£) Shimano Cues, 32t
- Svalbard & Jan Mayen (GBP£) Cassette Shimano Cues, 11-50t, 11-speed Sweden (SEKkr)
- Brakes Tektro Hydraulic M275/276 Switzerland (CHFCHF)
- Rims WTB ST i30 TCS 2.0, 27.5Tanzania (TZSSh)
- HubsTogo (XOFFr) Novatec
- Tristan da Cunha (GBP£) Tyres WTB Trail Boss 27.5 x 2.4 Tunisia (GBP£)
- Colour Trevor's Closet Black Türkiye (GBP£)
Uganda (UGXUSh)
United States (GBP£)
- ProjektRide© 2026,
If the item is showing in stock, we aim to post the product within 24 hours. Please allow 5 working days to receive the item.
Postage is free on orders over £50. Orders under £50, our postage charge is £3.99.
We also have a physical store, if you are local please pop in -
ProjektRide Bike Shop Edinburgh
/
82 Newington Road, EH91QN, Edinburgh.
01313745324
Svalbard & Jan Mayen (GBP£)
Track Service ProgressTogo (XOFFr)




Close



