Important

We are updating the images for OroCommerce version 6.1 to align with the latest changes in the back-office design. During this transition, some images may still show older versions. Thank you for your patience as we work to update all visuals to reflect these changes.

Configuration Reference 

Channel Type Definition 

Channel type - a type of the application/service to connect. Channel - an instance of the configured channel type with enabled connectors.

The responsibility of a channel is to split transport/connectors into groups by a third party application type. To define you own channel type, create a class that implements Oro\Bundle\IntegrationBundle\Provider\ChannelInterface and then register it as a service with the oro_integration.channel tag with a unique type key.

Example

acme.demo_integration.provider.prestashop.channel:
    class: Acme\Bundle\DemoBundle\Integration\PrestashopChannel
    tags:
        - { name: oro_integration.channel, type: presta_shop }

The integration type can also bring an icon that will be shown in the type selector. For this purposes, the type class should implement Oro\Bundle\IntegrationBundle\Provider\IconAwareIntegrationInterface and method getIcon() should return a valid path to the image for Symfony assets helper.

Transport Definition 

The responsibility of transport is providing communication between the connector and the channel, it should perform read/write operations to the third party systems.

To define you own transport, create a class that implements Oro\Bundle\IntegrationBundle\Provider\TransportInterface and register it as a service with the oro_integration.transport tag that contains a unique type key and a channel_type key that shows what channel type it can be used for.

Example

acme.demo_integration.provider.db_transport:
    class: Acme\Bundle\DemoBundle\Integration\PrestashopTransport
    tags:
        - { name: oro_integration.transport, type: db, channel_type: presta_shop }

Connector Definition 

Channel connector is responsible for bringing data in and defining compatible channel types.

To define you own connector, create a class that implements Oro\Bundle\IntegrationBundle\Provider\ConnectorInterface and register it as a service with the oro_integration.connector tag that contains a type key (unique for the channel) and a channel_type key that shows what channel type it can be used for.

Example

acme.demo_integration.provider.prestashop_product.connector:
    class: Acme\Bundle\DemoBundle\Integration\PrestashopProductConnector
    tags:
        - { name: oro_integration.connector, type: product, channel_type: presta_shop }