Requirements for services

A service is an item on plentyMarketplace offered by a service partner that can be purchased by the customer. A service partner describes the offered service in the description and gives detailed information about the service, including contact data, in the user guide. After a customer purchased the service on plentyMarketplace, a JSON response with the respective purchase and customer data is sent to the service partner using a webhook URL. To offer a service on plentyMarketplace, all the plugin requirements must be met unless stated otherwise, e.g. user guide, icons etc. In addition, you have to specify a webhook URL.

Overview of the differences between services and plugins

Find a list of new required information in the plugin.json file not covered by the basic plugin requirements below.

Property Description
Plugin data
type A service must be of type service. required
categories The category 3600 must be specified. required
webhookUrl A webhook URL must be specified. A JSON response is sent to the webhook URL when a service is purchased on plentyMarketplace. Find an example of the JSON response below. required
license The license is not required for services. The license field will not be displayed on plentyMarketplace. optional
Meta data
Change logs A change log is not required for services. The change log tab will not be displayed on plentyMarketplace. optional
Support contact data A support contact file is not required for services. The support tab will not be displayed on plentyMarketplace. optional

Content of the JSON response

The JSON response sent to the service partner using the webhook URL contains the following data.

Field Type Description
id string The ID of the service. The ID consists of a maximum of 200 characters and is used for the communication between the plentymarkets API and the service partner API.
type string The type of the service. The type is SERVICE.PLUGIN.PURCHASE.
createdAt int The timestamp of the service
resource Resource[] The response resource containing information about the contact of the customer, the invoice address of the customer and the order including the order items that are associated with the order.
 contact Contact[] The contact information
  id int The ID of the contact
  gender string The gender of the contact. The gender can be male, female or empty.
  firstName string The first name of the contact
  lastName string The last name of the contact
  email string The private email address of the contact
  updatedAt int The timestamp when the contact was last updated.
 address Address[] The address information
  id int The ID of the address
  companyName string The company name
  firstName string The first name
  lastName string The last name
  street string The street
  houseNumber string The house number
  additional string The additional address information
  postalCode string The postcode
  town string The town
  country string The ISO code of the country. For further information about country codes, refer to Country IDs.
  phone string The phone option
  email string The email option
  updatedAt int The timestamp when the address was last updated.
 order Order[] The order information
  id int The ID of the order
  payPalTransactionId string The ID of the PayPal transaction for this order
  orderItems OrderItem[] The order items that are associated with the order.
   itemVariationId int The ID of the item variation
   quantity float The quantity. The quantity can have up to 2 decimal places.
   orderItemName string The name of the order item
   priceGross float The total gross price including surcharges and discounts. The gross price can have up to 4 decimal places.
   priceNet float The total net price including surcharges and discounts. The net price can have up to 4 decimal places.
    {
       "id":"evt_553ea8a294e2d3a75d5086a06fb53f5a",
       "type":"SERVICE.PLUGIN.PURCHASE",
       "createdAt":1510656066,
       "resource":{
          "contact":{
             "id":1337,
             "gender":"male",
             "firstName":"John",
             "lastName":"Doe",
             "email":"john@account.com",
             "updatedAt":1510837206
          },
          "address":{
             "id":25,
             "companyName":"MyStore",
             "firstName":"John",
             "lastName":"Doe",
             "street":"Main Street",
             "houseNumber":"123",
             "additional":"",
             "postalCode":"34117",
             "town":"Kassel",
             "country":"DE",
             "phone":"123-456-7890",
             "email":"john@account.com",
             "updatedAt":1510753095
          },
          "order":{
             "id":221,
             "payPalTransactionId":"1S473067CV761473M",
             "orderItems":[
                {
                   "itemVariationId":1338,
                   "quantity":1,
                   "orderItemName":"SuperService",
                   "priceGross":49,
                   "priceNet":41.1765
                }
             ]
          }
       }
    }