LogoLogo
  • Welcome to Akinon Documentation
  • Products
    • ACC
    • Omnitron
    • Commerce
    • Order Management System (OMS)
    • Instore
    • Integrator
    • Marketplace Dashboard (MPD)
    • Project Zero (PZ)
    • Seller Center
    • Akifast
    • App Maker
  • API Reference
    • Welcome to Akinon API Reference
  • Omnitron
    • Getting Started
    • Integration
      • Product
        • Product
        • Pre-Product
        • Attribute
        • Attribute Value
        • Attribute Set
        • Product Image
      • Price
        • Price List
        • Product Price
        • Currency Unit Table
      • Stock
        • Stock List
        • Product Stock
      • Order
        • Get Orders
        • Search Order
        • Get Order Detail by Order Number
        • Get Order Item Detail
        • Orders ID Detail Integration
        • Orders Waiting to Send to ERP
        • Update Order and Order Item
        • Stock Reservation Release
        • Order Cancellation
        • Cancellation & Refund Pending Orders
        • Order Discount Items
        • Order Status Codes & Cancellation Statuses
      • Migration
        • Getting Started
        • User Migration
        • Address Migration
        • Old Order Migration
        • Old Order Item Migration
        • View Migration Progress
        • Currency Options
    • PIM
      • Attributes & Sets
      • Mapping
      • Localization
      • Media
    • Catalogue
      • Introduction
      • Price List
      • Stock List
      • Catalogue Item
      • Category Trees
      • Product Collection
      • Product Sorting
    • Channels
      • Introduction
      • Payments
      • Customers
    • Order
      • Getting Started
      • Fulfillment
      • Cancellations & Refunds
    • Retail Stores
      • Retail Stores
    • User Management
      • Roles & Permissions
      • Add & Remove
    • Whippy Ware
      • Introduction
      • Stock
      • Stock Lists
      • Stock List Rules
      • Stock Providers
      • Stock Locations
  • Omnitron OpenAPIs
    • Without Server
      • Customers
      • Reporting
      • Deleted Items
      • Pos
      • AttributeValues
      • Attribute Values
      • Providers
      • LDAPProviders
      • Healthcheck
      • LoyaltyTransactions
      • Policies
      • Exports
      • Dashboard
      • AuthTOTP
      • Price Lists
      • ProductPrices
      • Districts
      • Cities
      • Countries
      • Townships
      • PrometheusMetrics
      • Language
      • Content Types
      • Mappings
      • Applications
      • ApplicationPermissions
      • Error Reports
      • MailTemplates
      • UploadLogo
      • SalesChannelMarketPlaceAttributeSetConfig
      • SalesChannelCancellationRequestImage
      • SalesChannelCities
      • SalesChannelCancellationReasons
      • SalesChannelCargoCompany
      • SalesChannelProductImage
      • SalesChannelAttributeConfig
      • SalesChannelAttributeValueConfig
      • SalesChannelTownships
      • SalesChannelCustomers
      • SalesChannelFailedIntegrations
      • SalesChannelGetStockList
      • SalesChannelRetailStore
      • IntegrationActions
      • SalesChannelOrderShippingInfo
      • SalesChannelBatchRequests
      • SalesChannelAddresses
      • SalesChannelMarketPlaceAttributeSet
      • SalesChannelErrorReports
      • SalesChannelCategoryNodes
      • SalesChannelDistricts
      • SalesChannelProductStock
      • SalesChannelExtraProductStock
      • SalesChannelOrders
      • SalesChannelCancellationPlans
      • SalesChannelExtraProductPrices
      • SalesChannelProduct
      • SalesChannelAttributeSchemas
      • SalesChannelProductCategories
      • SalesChannelCancellationRequests
      • SalesChannelMarketPlaceAttributeValue
      • SalesChannelMappedProduct
      • SalesChannelMarketPlaceAttribute
      • SalesChannelOrderItem
      • SalesChannelProductPrice
      • SalesChannelCreateOrder
      • GetPriceList
      • SalesChannelCountries
      • SalesChannelGetPriceList
      • SalesChannelCategoryTree
    • With Server
      • Customers
      • Reporting
      • Deleted Items
      • Pos
      • AttributeValues
      • Attribute Values
      • Providers
      • LDAPProviders
      • Healthcheck
      • LoyaltyTransactions
      • Policies
      • Exports
      • Dashboard
      • AuthTOTP
      • Price Lists
      • ProductPrices
      • Districts
      • Cities
      • Countries
      • Townships
      • PrometheusMetrics
      • Language
      • Mappings
      • Content Types
      • Applications
      • ApplicationPermissions
      • Error Reports
      • MailTemplates
      • UploadLogo
      • SalesChannelMarketPlaceAttributeSetConfig
      • SalesChannelCancellationRequestImage
      • SalesChannelCities
      • SalesChannelCancellationReasons
      • SalesChannelCargoCompany
      • SalesChannelProductImage
      • SalesChannelAttributeConfig
      • SalesChannelAttributeValueConfig
      • SalesChannelTownships
      • SalesChannelCustomers
      • SalesChannelFailedIntegrations
      • SalesChannelGetStockList
      • IntegrationActions
      • SalesChannelRetailStore
      • SalesChannelOrderShippingInfo
      • SalesChannelBatchRequests
      • SalesChannelAddresses
      • SalesChannelMarketPlaceAttributeSet
      • SalesChannelErrorReports
      • SalesChannelDistricts
      • SalesChannelCategoryNodes
      • SalesChannelProductStock
      • SalesChannelExtraProductStock
      • SalesChannelCountries
      • SalesChannelOrders
      • SalesChannelProduct
      • SalesChannelCancellationPlans
      • SalesChannelExtraProductPrices
      • SalesChannelProductCategories
      • SalesChannelAttributeSchemas
      • SalesChannelCancellationRequests
      • SalesChannelMarketPlaceAttributeValue
      • SalesChannelMappedProduct
      • SalesChannelMarketPlaceAttribute
      • SalesChannelOrderItem
      • SalesChannelProductPrice
      • SalesChannelCreateOrder
      • GetPriceList
      • SalesChannelGetPriceList
      • SalesChannelCategoryTree
  • Commerce
    • Users
      • Getting Started
      • User Management & Authentication
      • Password & OTP Operations
      • User Profile & Segment Management
      • User Payment & Card Management
      • User Orders & Cancellations
      • Anonymous User Orders & Cancellations
      • User Support & Conversation
      • Captcha Validation
      • Currency & Akifast Operations
    • Checkout
      • Payment Related
      • Payment Strategy Related
      • Shipping Related
      • Independent Pages
    • Product
    • User Collections
    • Basket
    • Discount
    • Autocomplete
    • Breadcrumb
    • Pretty URLs
    • Menu
    • Widgets
    • Loyalty Accounts
    • Address Migration
    • Index Configuration
    • Favourite Products
    • User Address
    • Data Warehouse
    • Introduction
      • Filtering Parameters
    • Data Warehouse
    • Default
  • OMS
    • Package Services
    • Package Item Services
    • Package Denial Reason Services
    • Order Services
    • Order Item Services
    • Transfer Order Services
    • Transfer Item Services
    • Channel Services
    • Cancellation Plan Services
    • Cancellation Reason Services
    • Address Setup Services
    • City Services
    • District Services
    • Township Services
    • Stock Location Address Services
    • Webhook Setup Services
    • Webhook Event Services
    • Omnitron Order Webhooks
    • Undelivered Webhook Event Services
    • Inventory Discrepancy Services
    • OMS Setup Services
    • UI Settings Services
    • OMS Audit Events Service
    • Customer Address Services
    • Application Settings Services
    • Content Type Services
    • Customer Services
    • Channel Setup Services
    • Demo Data Service
    • Order Execution Plan Services
    • Invoice Services
    • Localization Services
    • Action Log Services
    • Order Log Services
    • Celery Metrics Service
    • Stock Location Services
    • Stock Location Address Services
    • Stock Location Sender Address Services
    • Stock Location Sender Address Setup Services
    • Cargo Company Condition Services
    • Permission Group Services
  • OMS OpenAPIs
    • Package Services
      • Default
    • Transfer Order Services
      • Default
  • Instore
    • Password Reset Services
  • Integrator
    • Projects
    • Flows
    • Logs
  • Seller Center
    • Languages
    • Categories
    • Introduction
    • Products
    • Packages
    • Orders
    • Claims
    • Shipping Methods
  • Akifast
    • Authentication
  • B2B
    • Quotation
    • Basket
    • Division
    • User
    • Staff User
    • Groups
    • Notification
    • Notification Template
  • Flows
    • Shipment Flows
    • Payment Flows
    • SMS Flows
    • Basket Offer Flows
Powered by GitBook

© 2025 Akinon. All rights reserved.

On this page
  • GET Price List
  • POST Create Price List
  • PATCH Update Price List
  • POST Bulk Upsert Price List
  • Check Status with Cache Key

Was this helpful?

  1. Omnitron
  2. Catalogue

Price List

The name of product prices is ProductPrice. PriceList is used to create multiple lists to link to channels and similar operations. On the Shop side, when linked to the channel, the price list continues to flow without a PriceList defined in that section.

The description above is valid for the conventional loop. Multiple PriceList & StockList developments allow for the definition of multiple price lists on the basis of RetailStore.

The concept of extra price list is created to add PriceList in multiple ways. Thanks to this structure linked to the catalogs, the linked extra_price_list and ProductPrice values are sent to the shop that is matched with the relevant catalog.

GET Price List

Sample HTTP request to get all price lists from the system.

‘content_type’ header represents the response type.

The ‘Authorization’ header is required for authentication. You can retrieve api_token by logging in.

Request

Path: /api/v1/price_list

import requests

url = "https://{customer_api_url}/api/v1/price_list/"
api_token = "API TOKEN"

headers = {
   'content-type': 'application/json',
   'Authorization': 'Token {}'.format(api_token)
}

response = requests.get(url, headers=headers)
print(response.text)

Response

{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
          {
            "pk": 1,
            "name": "default_price_list",
            "code": "default_price_list",
            "is_auto_sync": true,
            "modified_date": "2017-01-22T12:14:44.637000Z",
            "created_date": "2017-01-22T12:14:44.637000Z",
            "currency": "try"          
            }
               ]
}

POST Create Price List

Records new objects in the PriceList table. The PriceListSerializer class defined at omnitron.catalogs.resources.serializers is used to validate the data.

‘content_type’ header represents the response type.

The ‘Authorization’ header is required for authentication. You can retrieve api_token by logging in.

Request

Path: /api/v1/price_list/

import requests

url = "https://{customer_api_url}/api/v1/price_list/"
api_token = "API TOKEN"

headers = {
    'content-type': 'application/json',
    'Authorization': 'Token {}'.format(api_token)
}

data = {
    "name": "Test List",
    "code": "test_list",
    "is_auto_sync": True
}

response = requests.post(url, headers=headers, data=data)
print(response.text)

Response

{
    "pk": 2,
    "name": "Test List",
    "code": "test_list",
    "is_auto_sync": true,
    "modified_date": "2021-02-18T11:55:03.741159Z",
    "created_date": "2021-02-18T11:55:03.741139Z",
    "Currency": "try"

}

PATCH Update Price List

Update the object specified with the primary key in the PriceList table.

‘content_type’ header represents the response type.

The ‘Authorization’ header is required for authentication. You can retrieve api_token by logging in.

Request

Path: /api/v1/price_list/{PK}/

import requests

url = "https://{customer_api_url}/api/v1/price_list/{PK}/"
api_token = "API TOKEN"

headers = {
    'content-type': 'application/json',
    'Authorization': 'Token {}'.format(api_token)
}

data = {
    "name": "Test List Updated"
}

response = requests.patch(url, headers=headers, data=data)
print(response.text)

Response

{
    "pk": 2,
    "name": "Test List Updated",
    "code": "test_list",
    "is_auto_sync": true,
    "currency": "try"
    "modified_date": "2021-02-18T12:02:40.890103Z",
    "created_date": "2021-02-18T11:55:03.741139Z"

}

POST Bulk Upsert Price List

Sample HTTP post request to create multiple price lists at once. Make sure you have an acceptable dataset and file.

Request

Path: /api/v1/price_list/{PK}/excel_import/

csv file should contain the following headers and their values:

csv[headers]: product__sku,price, retail_price, price_list, tax_rate
csv[values]: 1, 43.2, 86.4, 1, 18.00

Response

This is an asynchronous operation and the status of the operation can be followed when it sends a GET request at the endpoint where it will check the status with cache_key. It should be noted that only 1 cache key is returned in the response.

cache_key: Unique cache key to status lookup.

{
  "cache_key":"b6b0828c-34ec-445b-9c06-5ae060ad1029"
}

Check Status with Cache Key

Checking the status of the bulk upsert process with the received cache key.

status: This is representing the process of excel import status and can be waiting, in_progress and completed.

chunk_size: In default, it is set to 100, indicating the number of times the entered line count is divided into 100-sized chunks. For example, if 300 data is entered and the chunk size is 3, it would mean that it was divided into 100-sized chunks three times.

Path: /api/v1/price_list/{CACHE_KEY}/excel_import_status/

Waiting Status:

Completed Status:

Bad Response

If there is no valid file, this will raise the exception file_100_1(FileNotFoundException). Django REST's status codes and exceptions are returned because another REST is used.

{
    "non_field_errors": "File not found please provide an appropriate file",
    "error_code": "file_100_1"
}

Service(omnitron.catalogs.service.PriceListService)

create_price_list: Improvements have been made to ensure that is_auto_sync is True in code.

bulk_upsert: Improvements have been made to add multiple ProductPrices.

Channel Redirections

As mentioned above, when the relevant PriceList and Channel matching is performed, all ProductPrices linked to the relevant PriceList are sent to the Channels.

For instance;

When inspected, the method at omnitron.channels.integrations.omniweb.integration. Integration.qs__product_price will show a filter such as price_listcatalogchannel=self.channel_id . All ProductPrices in the select query will be sent by accessing the channel through the catalog linked to the PriceList and matching it with the relevant channel.

Data Source

Just like the principle in Channels, ProductPrices can be used for DataSource. DataSource is the structure that enables selling between Omnitron and creates an environment like a marketplace. It is done by direct match over the DataSource model.

PreviousIntroductionNextStock List

Last updated 27 days ago

Was this helpful?