Skip to main content
Global-e stores localization and mode flags on the SFCC session. The storefront extension cartridges (int_globale_sfra, int_globale_sitegenesis) copy key values to session.custom during the onInit hook so you can use them in Business Manager customer groups, promotions, and ISML templates.
Scope: the top-level session.custom.ge* attributes below are written by the globale.onInit handler registered in int_globale_sfra / int_globale_sitegenesis. Popups-only sites and headless-only sites do not register that handler, so they do not get these attributes out of the box — add a custom globale.onInit handler if you need them.
See also: Customer Groups, Cookies, Customization, Hooks — onInit.

Attributes on session.custom (Business Manager rules)

These attributes are set when Global-e (re)initializes — on the first visit and whenever the country, currency, culture, or locale changes (not on every request). Use session.custom.<name> in Dynamic Customer Group membership rules (see demo groups in repo metadata/demo/demo.customergroup.xml).

Additional session keys (scripts and templates)

Fields inside geAppState (JSON)

Read with require('*/cartridge/models/globale/session').getAppState() — not available as top-level session.custom paths in BM rules. Culture and locale are persisted in geAppState and mirrored to the Global-e cookie; they are not copied to session.custom.geCulture or session.custom.geLocale.

Checking operated country in templates

For ISML, the cartridges typically use the app context factory (same logic as geIsOperated):
Alternatively, session.custom.geIsOperated works when set (after init):
See Customization for a cart-page example.