Introducing the plentymarkets plugin interface

The plentymarkets plugin interface is a collection of interfaces representing the modules and sub-modules available in plentymarkets. The plugin interface defines the core services for plentymarkets plugins and contains all necessary methods for your plugin to communicate with plentymarkets. For each module of plentymarkets, individual interfaces are available. The documentation for these interfaces can be accessed via the Interface drop-down menu in the navigation bar.

How to execute code blocks without authentication

If you want to execute individual code blocks in the plugin without being restricted by authentication, use the AuthHelper class. For further information, refer to the code example below:

AuthHelper.php
<?php
 
use Plenty\Modules\Account\Address\Contracts\AddressRepositoryContract;
use Plenty\Modules\Authorization\Services\AuthHelper;

/** @var \Plenty\Modules\Account\Address\Contracts\AddressRepositoryContract $addressRepo */
$addressRepo = pluginApp(AddressRepositoryContract::class);

/** @var \Plenty\Modules\Authorization\Services\AuthHelper $authHelper */
$authHelper = pluginApp(AuthHelper::class);

$address = null;

$address = $authHelper->processUnguarded( (1)
    function () use ($addressRepo, $address) {
        return $addressRepo->findAddressById(42);
    }
);
1 Inside the function, the process is unguarded.

Overview of interfaces

Find an overview of all available interfaces below:

Interface Description

Account

Contains sub-modules for Addresses and Contacts. This interface is the counterpart to the plentymarkets CRM module.

Accounting

Contains a sub-module for VAT and classes for determining the VAT.

Amazon

Interface for Amazon.

Authentication

Interface for user authentication.

Authorization

Interface for user permissions and user roles.

Basket

Contains sub-modules for determining the basket and the items within the basket.

Blog

Interface for blog posts.

Board

Interface for boards.

Catalog

Interface for the catalog.

Category

Interface with sub-modules and models for categories.

Cloud

Interface for cloud services, e.g. ElasticSearch and Storage.

Comment

Contains the comment model.

ContentBuilder

Interface for the content builder.

ContentCache

Interface for the content cache.

Cron

Interface for accessing cron jobs.

CustomerContract

Interface for customer contracts.

Data

Contains the data model.

DataExchange

Interface for exchanging data. Contains models for export and filters.

DeleteLog

Interface for the delete log.

Document

Contains the document model.

ElasticSync

Interface for ElasticSync.

EventProcedures

Interface with events and services for event procedures.

Facet

Interface for facets.

Feedback

Interface for feedbacks.

Frontend

Interface with services for the online store.

Helper

Interface with contracts, models and services for helpers.

Item

Contains sub-modules for attributes, availability, item and variation data, manufacturers, shipping and units.

ItemSet

Interface for item sets. Contains methods to get and create item sets and item set components.

Listing

Interface for listings.

LiveShopping

Interface for LiveShopping.

Market

Contains the sub-module Ebay for fitments and fitment items.

Messenger

Interface for the messenger.

Order

Contains contracts and models for orders and order items as well as the sub-modules Currency, Payment and Shipping. This interface is the counterpart to the plentymarkets order module.

Payment

Contains the sub-modules for payment methods, the payment history, as well as contracts and models for payments and payment properties.

Pim

Interface for prices.

plentyMarketplace

Interface for plentyMarketplace.

Plugin

Contains the sub-modules for storing data in a plugin database or accessing external SDKs.

PluginMultilingualism

Interface for multilingualism.

Property

Interface for properties.

Report

Interface for reports.

ShopBuilder

Interface for ShopBuilder.

StockManagement

Contains contracts and models for stock management and storage data.

System

Contains the Webstore model.

Tag

Interface for tags.

Template

Contains contracts and models for the design and design configuration.

Ticket

Contains contracts and models related to the plentymarkets ticket system.

User

Interface for users.

Warehouse

Interface for warehouses.

Webshop

Interface for the online store.

Wizard

Interface for assistants.

Miscellaneous

Contains interfaces that cannot be organised in the listed interfaces.