Settings
E-commerce → Settings lists the configuration values of your online shop. Each row has a key, a value and a short description. This page explains the keys you can change yourself, grouped by topic.
How values are stored
- Yes/no settings are on with
Yes(ortrue); anything else, including an empty value, is off. Exception:cart_merge_user_cartsis on only with1. - JSON settings must be valid JSON. Settings with a form show input fields instead of raw JSON.
- Passwords and API keys are stored encrypted. Once saved, the value is shown masked and is never sent back to the browser; enter a new value to replace it.
- A key that is not in your list is not set, and its default applies.
Settings managed by Pikselis
The connection between the shop and Pikselis Business (API address and key) is set up by Pikselis when the shop is created, so it is not listed here. Contact support if it needs to change. Some other technical keys (catalog sync schedules, caching, platform security switches) are also managed by Pikselis and are not described on this page.
Shop
| Key | Meaning |
|---|---|
shop_name | Shop name, e.g. Demo shop. |
page_url | Shop website address, e.g. https://www.myshop.com. Used for return links from payment providers and links in emails. |
shop_logo | Logo image URL used in emails. |
shop_contact_mail | Shop contact email. Also the fallback recipient for quote and net terms notifications. |
analytics_retention_days | How many days raw shop analytics events are kept. Totals are kept. Empty = kept indefinitely. E.g. 90. |
Email
The shop sends order and account emails either through the Pikselis email service or through your own SMTP server.
| Key | Meaning |
|---|---|
mail_server | SMTP server address. |
mail_port | SMTP server port, e.g. 587. |
mail_username | SMTP username. |
mail_password | SMTP password (stored encrypted). |
mail_from | Sender address, e.g. [email protected]. |
mail_name | Sender name shown to the customer. |
mail_localpart | With the Pikselis email service and your own verified domain: the part before @ of the sender address, e.g. orders → [email protected]. Default notifications. |
mail_localpart_map | Optional different sender per email template, JSON, e.g. {"order_confirmation":"orders","quote_request_customer":"quotes"}. Templates not listed use mail_localpart. One sender for everything is usually better. |
cfg_email_subscription_options | Extra fields of the newsletter subscription form, e.g. { "requiredFields": { "womenCollection": "bool", "menCollection": "bool" } }. |
Products and catalog
| Key | Meaning |
|---|---|
products_warehouses | Warehouse codes whose stock the shop shows, e.g. ["Sand"]. Empty = all warehouses. |
cfg_product_store_to_warehouses_map | Which warehouses supply each physical store, for “available in store” information. Store ID → warehouse codes, e.g. { "1": ["Norf2"], "2": ["Rimi0"] }. |
products_out_of_stock_behaviour | What happens when a product has no stock: denyOrders (cannot be ordered), allowBackOrders (can be ordered), default. |
products_default_price_field | Which ERP price the shop uses, e.g. price2. Empty = the first price. |
cfg_product_additional_prices | Extra ERP prices passed to the shop under another name, e.g. [{"fieldName":"price2","showFieldName":"shopPrice","active":true}]. |
products_custom_fields | Product custom fields passed to the shop: fieldName (ERP field), showFieldName (name in the shop), active. E.g. [{"fieldName":"relatedProducts","showFieldName":"relatedProducts","active":true}]. |
products_query_map_addons | Extra conditions added to every product request to Pikselis Business, so the shop only shows selected products. See the example below. |
products_filters | Named product filters the storefront can use (recommended, discounted and so on). See the example below. |
categories_filter_type | How category product lists are filtered: inEshop (all shop products) or inEshopInWarehouse (only products in stock in products_warehouses). When products_warehouses is set and this is empty, inEshopInWarehouse is used. |
facet_default_sort_mode | Default order of filter values for features left on “Inherit”: erp (order set in Pikselis Business), alpha (by name), smart (by number of matching products). |
facet_group_ordering_enabled | Yes = filters are grouped by feature group. Default No. |
facets_include_zero_values | Yes = show filter values with no matching products. Default No. |
search_blog_posts_enabled | Yes = shop search also finds blog posts. |
products_url_template | Product page path used in links the shop builds (e.g. back-in-stock emails). {slug} is replaced with the product slug. Default /{slug}. |
products_query_map_addons example: only products marked for the shop, in stock and with a main image:
[
{ "name": "filter_syncPrestashop", "value": "1" }, { "name": "operator_syncPrestashop", "value": "contains" },
{ "name": "filter_quantity", "value": "1" }, { "name": "operator_quantity", "value": "moreOrEqual" },
{ "name": "filter_mainImage", "value": "" }, { "name": "operator_mainImage", "value": "notEmpty" },
{ "name": "selectMerged", "value": "1" }
]products_filters example:
{
"recommended": { "field": "recommendedProduct", "operator": "more", "value": "0" },
"discounted": { "field": "isDiscounted", "operator": "contains", "value": "true" }
}Older key names
Older shops may still have keys with a cfg_ prefix: cfg_products_warehouses, cfg_products_query_map_addons, cfg_product_custom_fields, cfg_product_filters, cfg_product_default_price_field, cfg_products_out_of_stock_behaviour. They still work. If both the old and the new key exist, the new one (without cfg_) wins.
Cart and checkout
| Key | Meaning |
|---|---|
cart_is_one_step_checkout | Yes = checkout on one page. |
cart_merge_user_carts | 1 = when a customer logs in, the guest cart is merged into their saved cart. |
cart_default_shipping_method_id | Shipping method ID preselected in new carts. |
cart_enable_live_pricing | Yes = cart prices (quantity breaks, customer prices) are fetched from Pikselis Business live. |
checkout_min_order | Minimum order amount for the whole shop. Below it checkout is blocked for every payment method. Compared with the product total incl. VAT after discounts, without shipping. Empty currency = any cart currency. |
checkout_small_order_fee | Fixed fee added when the product total is below a threshold. The amount is excl. VAT. Requires the Pikselis Business charge type ID (chargeTypeId); without it the fee stays off. Does not count towards checkout_min_order. |
cart_discount_allow_multiple_coupons | Yes = more than one coupon per cart. |
cart_discount_max_coupon_codes_per_cart | Maximum number of coupons per cart when several are allowed. |
cart_discount_same_line_product_discount_stacking | Yes = a coupon discount adds up with a product discount on the same line. |
cart_abandonment_enabled | Yes = record abandoned carts. |
cart_abandonment_threshold_hours | Hours of inactivity after which a cart counts as abandoned. |
cart_retention_policy | How many days inactive guest and customer carts are kept. |
back_in_stock_enabled | Yes = customers can subscribe to a “back in stock” email. |
payment_allow_payer_billing_address | Yes = the payment page may send the billing address the payer entered when the customer's billing data is incomplete. |
Orders and customers
| Key | Meaning |
|---|---|
order_auto_create_customers | Yes = each private buyer gets their own customer in Pikselis Business (found by email or created). No = orders from private buyers go to the customer set in physical_person_id. |
physical_person_id | Pikselis Business customer ID that collects orders from private buyers when order_auto_create_customers is No. |
order_waiting_payment_status_id | Order status ID for orders waiting for payment. |
order_paid_status_id | Order status ID for paid orders. |
order_partially_paid_status_id | Order status ID for partly paid orders (optional). |
register_create_assign_company | Yes = registration creates the customer's company in Pikselis Business and links it to the account. |
register_auto_assign_company_admin | Yes = the user who creates a company at registration becomes its administrator. |
register_company_custom_fields_schema | JSON: company custom fields asked for at registration and how they are validated. |
user_info_company_custom_fields | JSON: company custom fields the customer can see and edit in their account. |
tax_exemption_provisional_exempt | Yes = a tax exemption certificate uploaded in the shop stops VAT immediately, before it is approved in Pikselis Business. Default No. |
charges_enabled | Yes = product charges (duties, fees) are calculated in the cart. |
charges_display_mode | separate (own column) or included (added to the price). |
charges_include_in_tax | Yes = charges are included in VAT calculation. |
order_shipping_as_charge | Yes = shipping goes to the order as a document charge, not a product line. |
shipping_charge_type_id | Charge type ID used when order_shipping_as_charge is on. |
Quotes and net terms
| Key | Meaning |
|---|---|
quote_request_status_id | Proposal status ID for new quote requests from the shop. |
quote_request_status_letter | Proposal status code for new quote requests. |
quote_request_ready_status_id | Proposal status ID that marks a quote as priced and ready to accept or pay. |
quote_order_status_id | Order status ID set when a quote is accepted and turned into an order. |
quote_request_notify_mail | Who gets notified about new quote requests. Empty = shop_contact_mail. |
net_terms_request_enabled | Yes = companies can apply for net terms (pay later). |
net_terms_request_payment_term_id | Payment term assigned on request. Empty = the first payment term with the “net terms request” payment method. |
net_terms_request_notify_mail | Who gets notified about net terms requests (several addresses comma-separated). Empty = shop_contact_mail. |
net_terms_request_notify_customer | Yes = the customer gets a confirmation email when their request is received. |
Payments
Fill in only the providers you use. Keys and passwords are stored encrypted.
Paysera: paysera_project_id, paysera_project_key, paysera_transaction_id_prefix (payment purpose prefix, default PS), paysera_payment_account_no (account the payment is booked against in accounting, e.g. 27101).
Neopay: neopay_project_id, neopay_project_key, neopay_transaction_id_prefix, neopay_payment_account_no — same meaning as Paysera.
EveryPay: everypay_api_url (e.g. https://igw-demo.every-pay.com/api for testing), everypay_api_user_name, everypay_api_key, everypay_api_processing_account (e.g. EUR3D1).
Braintree:
| Key | Meaning |
|---|---|
braintree_sandbox_merchant_id, braintree_sandbox_public_key, braintree_sandbox_private_key | Test account credentials. |
braintree_production_merchant_id, braintree_production_public_key, braintree_production_private_key | Live account credentials. |
braintree_use_production | Yes = use the live credentials, No = test. Fill in both sets; the switch does not copy them. |
braintree_submit_for_settlement | Yes = charge immediately, No = authorize only. |
braintree_invoice_submit_for_settlement | Same, but only for invoice payments; overrides the setting above. |
braintree_server_side_3ds_enabled | Yes = require 3D Secure when risk rules ask for it. Turn on only after your storefront supports 3D Secure. |
braintree_payment_account_no | Account Braintree invoice payments are booked against in accounting (optional). |
Older shops may use the single-set keys braintree_environment, braintree_merchant_id, braintree_public_key, braintree_private_key; they still work when the sandbox/production keys are empty.
Tax (Avalara)
| Key | Meaning |
|---|---|
avalara_enabled | Yes = calculate tax with Avalara. |
avalara_account_id, avalara_license_key, avalara_company_code | Avalara account details (license key stored encrypted). |
avalara_environment | sandbox or production. |
avalara_default_tax_code | Tax code for products without their own, e.g. P0000000. |
avalara_default_currency | Currency for tax calculation, e.g. EUR. |
avalara_fallback_rate | Tax rate used when Avalara does not respond, e.g. 0.21. |
avalara_tax_shipping | Yes = shipping is taxed. |
Shipping
| Key | Meaning |
|---|---|
cart_shipping_use_zones | Yes = shipping prices depend on shipping zones. |
use_auto_refresh_omniva_locations | Yes = the Omniva parcel locker list refreshes automatically. |
ship_from_name, ship_from_company, ship_from_phone, ship_from_address1, ship_from_address2, ship_from_city, ship_from_state, ship_from_postal, ship_from_country | Sender address used for carrier rates and labels. |
live_rates_shipping_method_code | Pikselis Business shipping method code for orders with carrier live rates. Default COURIER. |
live_rates_markup_rules | Markup added to carrier rates: a default percent and per-carrier or per-service rules, e.g. {"default": {"percent": 15}, "rules": [{"carrierId": "se-1", "percent": 20, "flat": 2, "flatCurrency": "EUR"}]}. |
live_rates_tiers | Groups carrier rates into speed options shown at checkout (e.g. Least expensive / Standard / Express). |
live_rates_package_type_dedupe | When a carrier quotes one service for several package types, show one row: expensive or cheapest. Empty = show all. |
live_rates_min_package_weight_kg | Minimum package weight sent to the carrier (very light items would otherwise get no quote). 0 = off. |
live_rates_confirmation | Signature on delivery: level (delivery, signature, adult_signature, direct_signature) and optionally only above a merchandise value. |
freight_collect_company_field | Name of the customer custom field that holds the customer's own carrier accounts. Set = customers can ship on their own account. |
freight_collect_carriers | Which carriers freight collect recognizes. Empty = UPS, FedEx, USPS, DHL. |
Sign-in with Facebook or Google
| Key | Meaning |
|---|---|
fb_app_id, fb_app_secret | Facebook app for “Sign in with Facebook”. |
google_client_id, google_secret | Google OAuth client for “Sign in with Google” (secret stored encrypted). |
Address lookup (HERE)
| Key | Meaning |
|---|---|
here_enabled | Yes = address suggestions in checkout forms. |
here_api_key | Your HERE API key, so lookups are billed to your HERE account (stored encrypted). |
here_country_filter | Country to search in, e.g. Lithuania. |
Security
| Key | Meaning |
|---|---|
captcha_provider | Bot protection for public forms: none or turnstile (Cloudflare Turnstile). Each form can still turn it off or override it. |
turnstile_site_key | Cloudflare Turnstile site key (public). |
turnstile_secret_key | Cloudflare Turnstile secret key (stored encrypted). |
captcha_fail_open | true = accept a form when Turnstile cannot be reached, so an outage does not lose enquiries. false = reject. A failed check is always rejected. |
abuse_rate_limits | Request limits for login, registration, forms and similar. Keep the defaults unless Pikselis support suggests a change. |
abuse_behavior_score | Slows down sessions that behave like bots. Keep the defaults unless Pikselis support suggests a change. |