Skip to main content

Shopware Installation Instructions

Step-by-step setup for the iPaaS.com Shopware integration, including authentication and post-installation verification.

This article walks subscribers or their MiSP through connecting iPaaS.com to a Shopware 6 store, configuring authentication, reviewing the key subscription settings, and verifying that data flows correctly after installation.

Before You Begin

Before installing the Shopware integration, make sure you have the following in place.

Administrative access to your Shopware 6 store: You need an account with administrative privileges in the Shopware Administration. This integration has been tested against Shopware 6.6.10.4.

Credentials for the authentication grant you intend to use: The Shopware Admin API supports two OAuth grants. Choose one and have its credentials ready:

  • Password grant: A Shopware administrator username and password.

  • Client Credentials grant: An Access Key ID and a Secret Access Key. Create these in the Shopware Administration under Settings > System > Integrations by adding a new Integration with an administrative role, then copying the generated Access key ID and Secret access key to a secure location.

For details on creating an Integration and on Shopware's API authentication, refer to Shopware's Admin API documentation.

Commercial and extension dependencies (some features only): Several capabilities rely on Shopware commercial or extension features and are only available if the corresponding extension is installed in your store at the time this documentation was written:

  • B2B Company and employee synchronization: requires the B2B Suite.

  • Warehouse synchronization: requires Advanced Stock Management.

  • Partial order deliveries: requires the Partial Delivery extension.

  • Sales-channel-specific product content: requires the Sales Channel Specific Content extension.

  • Per-line discount amounts on order line items: requires the Discount Line Item Extension (version 1.0.0). This extension exposes a line-item discount on each order line — a discount amount and a calculated line total per line — which the integration reads and sends to iPaaS.com. Without it, your store does not surface per-line discount amounts, and the line-level discount fields on transferred orders stay empty. This is optional: the rest of each order still transfers without it, but sending per-line discount amounts from Shopware to iPaaS.com requires it.

If your store does not use a given extension, the rest of the integration still works; only the dependent feature is unavailable.

Installation Instructions for Integration Setup

Add and enable the Shopware integration from the iPaaS.com side, then create a subscription and apply its initial throttle and concurrency settings.

  1. Go to Subscriptions Management > Subscriptions and click Search Certified Integration Marketplace and Subscribe.

    iPaaS.com Subscriptions list with the Search Certified Integration Marketplace and Subscribe button highlighted
  2. Locate and click the Shopware integration tile.

    Shopware integration tile in the Certified Integration Marketplace
  3. On the Subscription Detail page, click Subscribe.

    Shopware Subscription Detail page with the Subscribe button
  4. Enter a subscription name and select a version. Use a name that is relevant and unique within your company. A common convention is [Product Name] - [Environment/Purpose], for example Shopware - Production.

  5. Leave Create Default Mappings selected (recommended). This pre-builds the standard mapping collections so you do not have to create every mapping by hand.

    Note: If you prefer to build all mappings from scratch yourself, clear this checkbox.

    Subscription creation form showing the Name and Versions fields and the Create Default Mappings checkbox
  6. On the Subscription Settings page, configure the API endpoint and the throttle and concurrency controls:

    Subscription Settings API Throttle and Concurrent Connections fields with recommended values
    • API endpoint (API Url): Enter the base URL of your own Shopware store's Admin API. Shopware is self-hosted on a per-store basis, so there is no fixed iPaaS.com test or production URL to choose between — the endpoint is always the specific store instance you want to connect.

    • API Throttle Limit: The maximum number of API requests allowed within the throttle window. Recommended values — Initial: 5, Ongoing: 500, High Volume: 500.

    • API Throttle Seconds: The length of the throttle window in seconds. Default 60; valid range 1–3600.

    • Concurrent Connections: The number of simultaneous connections the integration opens to your store. Default 1; valid range 1–10.

    • Concurrent Batch Executions: The number of batches the integration processes at the same time. Default 1; valid range 1–10.

  7. Click Apply to save the subscription settings.

  8. Continue to the connection details and complete the authentication fields described in Authentication Configuration below.

Authentication Configuration

On the connection form, provide the API Url, choose a Grant Type, and enter the credentials that grant requires. The Shopware Admin API supports two OAuth grants. The password grant is the primary method; the client_credentials grant is the secondary method. Requiredness of several fields is conditional on the selected Grant Type.

API Url

  • Location: The base URL of your Shopware store, as shown in your browser when signed in to the Shopware Administration.

  • Description: Points the integration at the specific store instance you want to connect.

  • Required: Yes.

Primary Method — Password Grant

Authenticates with a Shopware administrator account through Shopware's built-in administration client.

UserName

  • Location: The administrator account you sign in with at Shopware Administration > top-right user menu (the account's username).

  • Description: The Shopware administrator username used to obtain an access token.

  • Required: Conditional: Yes when Grant Type is password; not used for client_credentials.

Password

  • Location: The password for that same Shopware administrator account.

  • Description: The Shopware administrator password used to obtain an access token.

  • Required: Conditional: Yes when Grant Type is password; not used for client_credentials.

Connection form with Grant Type set to password and the UserName, Password, and API URL fields

Secondary Method — Client Credentials Grant

Authenticates with an Integration's access keys rather than a user account.

ClientId (Access Key ID)

  • Location: Shopware Administration > Settings > System > Integrations: create a new Integration with an administrative role and copy the generated Access key ID.

  • Description: Identifies the Integration used to obtain an access token.

  • Required: Conditional: Yes when Grant Type is client_credentials; not used for the password grant.

ClientSecret (Secret Access Key)

  • Location: Shopware Administration > Settings > System > Integrations: copy the Secret access key generated alongside the Access key ID when the Integration is created.

  • Description: The secret paired with the Access Key ID, used to obtain an access token.

  • Required: Conditional: Yes when Grant Type is client_credentials.

Shopware Settings, System, Integrations showing the Access key ID and Secret access key

Important Notes

  • Grant Type (valid values password and client_credentials) is always required and determines which credential set above is needed.

  • The Secret access key is shown only once, when the Integration is created in Shopware. Copy it to a secure location immediately; if it is lost, generate a new Integration.

  • Access tokens are obtained automatically when the integration runs and are refreshed automatically as they expire; subscribers or their MiSP do not manage tokens manually.

  • If the credentials are incorrect or missing, no access token is generated and API calls fail to authenticate.

  • For more detail on these grants and on creating an Integration, refer to Shopware's Admin API documentation.

Operational Configuration

After the connection is established, review the subscription settings that tune how the integration behaves at install time. The high-impact fields are described below. For the complete catalog of settings, their defaults, and their effects, see the Shopware Connections and Settings Help Center article.

Grant Type

  • Description: Selects the OAuth grant (password or client_credentials) used to authenticate against the Shopware Admin API.

  • Purpose: Lets subscribers or their MiSP match the connection to the credential set they have available.

  • Example: Setting client_credentials makes the integration authenticate with the Integration's Access Key ID and Secret Access Key rather than an administrator login.

  • Recommended values: Initial: match the credentials entered; Ongoing: unchanged; High Volume: unchanged.

Translations Enabled

  • Description: Lets the integration send per-language translated values for product, variant, property-group, and category content.

  • Purpose: Keeps multi-language storefront content in sync when the store serves more than one language.

  • Example: With this on, add custom fields on the source record named TranslationField_[localeCode]_[fieldName] for standard fields or TranslationCustomField_[localeCode]_[customFieldName] for custom fields — using the Shopware language's locale code such as de-DE — and map them so their values are sent; the translated values then appear under that language instead of only the default. The Product and Catalog Category mapping documentation cover this in detail. Off by default.

  • Recommended values: Initial: Off; Ongoing: On only if the store is multi-language; High Volume: same as Ongoing.

Transfer Kits using API Extension

  • Description: Sends product kits through the Bundle API extension instead of native cross-selling.

  • Purpose: This is the only mode that allows a single product to carry both related products and a kit.

  • Example: Turning this on routes kits through the Bundle extension so a kit product can also list related products. Off by default.

  • Recommended values: Initial: Off; Ongoing: On if kits must coexist with related products; High Volume: same as Ongoing.

Product Category Duplicate Checking By / Product Category Duplicate Matching By

  • Description: Control how catalog-category duplicates are detected and matched — by name, by description, or by a named custom field.

  • Purpose: Prevents duplicate categories when source data uses a key other than the category name.

  • Example: Setting both to a custom field matches incoming categories on that field rather than on name. Both default to name.

  • Recommended values: Initial: name; Ongoing: name unless a custom key is required; High Volume: same as Ongoing.

Throttle and concurrency controls

  • Description: The inbound and To-iPaaS throttle limits and windows, plus Concurrent Connections and Concurrent Batch Executions.

  • Purpose: Keep the integration within your Shopware store's available API capacity.

  • Example: Lowering the throttle limit and concurrency reduces simultaneous load on the store during a large manual job.

  • Recommended values: Initial: API Throttle Limit 5; Ongoing: 500; High Volume: 500, with concurrency tuned to your store's capacity. Stagger large manual jobs so they do not overwhelm the Shopware API.

Additional Configuration Options

These optional settings are pulled from the Shopware Connections and Settings article; see that article for the full table. All are optional and ship with a sensible default.

Tax ID

  • Purpose: The default Shopware tax used as a pricing fallback when a tax value cannot otherwise be resolved.

  • Default Value: None (resolved from source data when available).

  • Format: A Shopware tax identifier.

Currency ID

  • Purpose: The default Shopware currency used as a pricing fallback when a currency value cannot otherwise be resolved.

  • Default Value: None (resolved from source data when available).

  • Format: A Shopware currency identifier.

Product Content Processing

  • Purpose: Splits sales-channel-specific product content into the dedicated content entity. Requires the Sales Channel Specific Content extension.

  • Default Value: Off.

  • Format: On/Off toggle.

Property Group Match Field / Property Group Option Match Field

  • Purpose: Match an existing property group (or option) on the named field instead of matching by name.

  • Default Value: Match by name.

  • Format: A field name.

TransactionPollSearchDays

  • Purpose: The look-back window, in days, used when polling Shopware for transactions.

  • Default Value: Set to a window appropriate for your order volume.

  • Range: A positive number of days.

Index Behavior Header

  • Purpose: Sends an indexing-deferral header on writes to improve performance during bulk loads. Stock and inventory writes bypass this header.

  • Default Value: Off.

  • Format: On/Off toggle.

For every other optional setting and its default, see the Shopware Connections and Settings article.

Post-Installation Verification

Confirm the integration is working before relying on it in production.

  1. Connection Test: Confirm the connection authenticates. With the credentials and Grant Type saved, the integration obtains an access token automatically on its next run; a sync that completes without an authentication error confirms the connection.

  2. Data Sync Test: Run a Manual Sync for a supported entity and confirm the record appears on the iPaaS.com side. Pick an entity that exists in your store so the sync has data to transfer.

  3. Functionality Test: For the reference data types that support a one-time bulk backfill, run Initialization to load existing records. Bulk Initialization is available for Payment Methods, Shipping Methods, Warehouses, and Warehouse Groups (all transferred TO iPaaS.com). Then check the Dashboard / Integration Monitoring / Error Logs for any errors raised during the sync. A clean run with the expected record present confirms the connection and authentication are configured correctly.

Support and Troubleshooting

If you run into problems during or after installation:

Did this answer your question?