html web site design software

Connect to PepperShop

Get started with the PepperShop Webservice API


Just working in the way you like it!

REST based

It's just how you expect it to be.

If you have already worked with APIs you could be already familiar with the way our API is working. 


JavaScript Object Notation

To keep things simple on all platforms and programming languages, our API provides all the data in JSON format.
It's even compliant with JSON.API.

Easy to use

Starting is easy

Our API even helps you making calls: In many cases you'll get a hint with helpful tips.


Basic Authentication

Data will be sent via an encrypted connection, but as easy as basic authentication works.

Getting Started

You're only 3 Steps from Coding


Install Webservice API module in your PepperShop (v6+ Enterprise):

Module > "Webservice API" > Installieren > Benutzen

Don't have a PepperShop yet? Get a PepperShop!


Activate and add new user. Save changes.


Add HTTP Header to your Request:

Authorization: Basic eW91cnVzZXJuYW1lOnlvdXJhcGlrZXk=


Read the online documentation for detailed information:


Version 2 (PepperShop v8+)

  • General
    • all endpoints with or without trailing slash
    • try api requests directly from swagger api
    • general performance optimizations
    • create api client from swagger in various languages
  • Overview of backwards incompatibilities
    • Debtor Price (minor)
    • Orders > Customer Address (minor changes)
    • Customer Address (minor changes)
    • Product Documents (major changes; from 1 document to n documents per product)
  • Logging
    • log levels optimized for speed/detail
  • Product Properties
    • bugfix: float values possible
    • new endpoint: delete all properties of a product (DELETE /products/{id}/properties/)
  • Payment Methods
    • display new TIM api card names
    • list of all cards and separate lists for each terminal type
  • Products
    • now handling all installed languages instead of only active languages
    • autogenerated pi_filename if empty
    • quantity_display now with default value
    • quantity_dropdown_values now with default value
    • new field price_incl_vat
    • new field price_incl_vat
    • PATCH with minimal fields
  • Categories
    • now handling all installed languages instead of only active languages
    • bugfix: pi_filename and title no longer copied from name
    • parent category with id 0 allowed
  • Customers
    • bugfix: now saving debtor information correctly
    • login now longer required
    • error if login already used
    • filter customers on modified_since
    • new sub request "union" to be able to merge two customers
    • better performance on collection request
    • new field last_modified
    • define a list of allowed currencies per customer
    • new field: password (deliver plain text passwords; ingoing only)
    • new field: cashier (customer registered as cashier)
    • update customer id by internal_id
  • Debtor Rebate
    • Basic fields are now required
  • Debtor Price
    • Basic fields are now required
    • type field: "all" instead of "" (empty string) backwards incompatible
    • bugfix: rebate_allowed now working as expected
  • Module Config
    • now in json api format
  • Orders
    • bugfix: PepperShop POS payment_method corrected
    • payment_method "Kreditkarte" translated to "credit_card"
    • active payment in order relationships/includes
    • new sub request "payments" to list all payments of an order
    • customer_address (in relationships/includes): country/country_id removed backwards incompatible
  • Ping
    • new endpoint for a quick test
  • Product Documents
    • complete rewrite to be able to add n documents per product backwards incompatible
  • Order Status Map
    • new endpoint /order_status_map
    • list all available order statuses
  • Customer Addresses
    • field country removed backwards incompatible
    • field country_id removed backwards incompatible
    • background: country of delivery address is always identical with invoice address
    • on POST/PATCH the fields are ignored
  • Payments
    • dates like "0000-00-00 00:00:00" changed to "" (empty string) backwards incompatible

Version 2.0

  • New Endpoints: pictures, unit_codes, hooks, vouchers
  • Multilanguage support (product/category/units: names, description, ...)
  • POST with update-if-exists functionality
  • Optimizations for default values
  • Various bugfixes and optimizations

Version 0.9 -1.0

  • Various Bugfixes
  • Multi stock functionality
  • New filter on orders: state

Version 0.2

  • Collections have now includes (e. g. orders come with customer included)
  • Customers can be accessed and updated by 'internal_id', if IDs not yet set by external ERP
  • New 'order' fields: language, is_pickup
  • New calls 'product_documents', 'property_definition', 'product_property'
  • New docs design


Version 0.1

  • English interface


Frequently asked questions

API says "API OFF", how can I activate it?

In the Shop-Administration, move to "Module". Go to "Modulverwaltung" and check, whether "Webservice API" is listed on the right under "Bereits installierte Module".

When installed, mark it and click "Benutzen". 

Activate the checkbox on the top, add a new user and click "Speichern".

You're ready to start making calls!

Can I display API responses in browser?

Yes. If you call the API from your browser the first time, a window pops up, where you can enter username and password.

You can also display the response formatted in a human readable style by adding ?pretty=true to your request.

To test your calls comfortably, we recommend Postman, a free tool to make HTTP requests. It can even generate some basic request code for you!


Want more  information about the PepperShop?