Skip to content

E-Commerce Catalog Events

List of Catalogs

Catalog Description
Drug Catalog Catalog representing values for Drugs/meds in the app.
Grocery Catalog Catalog representing values for Grocery items in the app.
Blood Catalog Catalog representing values for Blood items in the app.
Oxygen Catalog Catalog representing values for Oxygen items in the app.
Medical Equipment Catalog Catalog representing values for Medical Equipment in the app.
Facility Catalog Catalog representing values for Facility such as clinic, hospital, pharmacy.


Required Catalog Fields

Some catalog fields can be marked as optional below but may be required for your app. Please refer to your integration notes to verify which fields are required for your use-case.

Drug Catalog

Below is the Drug Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a drug, provided by the partner.
name REQUIRED STRING Name of the drug, provided by the partner.
description OPTIONAL STRING Description of the drug, provided by the partner.
drug_form OPTIONAL STRING Drug Form of the drug, provided by the partner.
drug_strength OPTIONAL STRING Drug Strength of the drug, provided by the partner.
active_ingredients OPTIONAL ARRAY(STRING) Ingredients of the drug, provided by the partner.
atc_anatomical_group OPTIONAL STRING Atc Anatomical Group of the drug, provided by the partner.
otc_or_ethical OPTIONAL STRING if the drug is OTC or Ethical, provided by the partner.
market_id OPTIONAL STRING Market Id of the drug where it is available, provided by the partner. Probably country code.
packaging OPTIONAL STRING Packaging of the drug, provided by the partner.
producer OPTIONAL STRING Producer of the drug, provided by the partner.
supplier_id OPTIONAL STRING Supplier Id of the drug, provided by the partner.
supplier_name OPTIONAL STRING Supplier Name of the drug, provided by the partner.

Usage

    val drugCatalogObject = DrugCatalogModel(
        market_id = "id", 
        name = "MedName",
        description = "",
        supplier_id = "SupplierId",
        supplier_name = "SupplierName",
        producer = "",
        packaging = "",
        active_ingredients = ["paracetamol"],
        drug_form = "otc",
        drug_strength = "",
        atc_anatomical_group = "",
        otc_or_ethical = "otc"
    )

    CfEComCatalog.updateDrugCatalog("itemDrugId", drugCatalogObject)
    let drugCatalogObject = {
        market_id: "id", 
        name: "MedName",
        description: "",
        supplier_id: "SupplierId",
        supplier_name: "SupplierName",
        producer: "",
        packaging: "",
        active_ingredients: ["paracetamol"],
        drug_form: "otc",
        drug_strength: "",
        atc_anatomical_group: "",
        otc_or_ethical: "otc"
    }

    CfECom.updateDrugCatalog("itemId", drugCatalogObject)
    let drugCatalogObject = {
        market_id: "id", 
        name: "MedName",
        description: "",
        supplier_id: "SupplierId",
        supplier_name: "SupplierName",
        producer: "",
        packaging: "",
        active_ingredients: ["paracetamol"],
        drug_form: "otc",
        drug_strength: "",
        atc_anatomical_group: "",
        otc_or_ethical: "otc"
    }

    ECommerce.updateDrugCatalog("someItemId", drugCatalogObject)
[
  {
    "id": "2422583",
    "name": "panadol",
    "description": "Lorem Ipsum",
    "active_ingredients": [
      "paracetamol"
    ],
    "atc_anatomical_group": "Alimentary tract and metabolism",
    "drug_form": "injection",
    "drug_strength": "125mg/5ml",
    "market_id": "ID",
    "otc_or_ethical": "otc",
    "packaging": "10ml",
    "producer": "testProducer",
    "supplier_id": "testSupplierId",
    "supplier_name": "testSupplierName"
  }
]


Grocery Catalog

Below is the Grocery Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a grocery item, provided by the partner.
name REQUIRED STRING Name of the grocery item, provided by the partner.
description OPTIONAL STRING Description of the grocery item, provided by the partner.
category OPTIONAL STRING Category of the grocery item, provided by the partner.
active_ingredients OPTIONAL ARRAY(STRING) Ingredients of the grocery item, provided by the partner.
market_id OPTIONAL STRING Market Id of the grocery item where it is available, provided by the partner. Probably country code.
packaging OPTIONAL STRING Packaging of the grocery item, provided by the partner.
packaging_size OPTIONAL FLOAT Packaging Size of the grocery item, provided by the partner.
packaging_units OPTIONAL STRING Packaging Units of the grocery item, provided by the partner.
producer OPTIONAL STRING Producer of the grocery item, provided by the partner.
supplier_id OPTIONAL STRING Supplier Id of the grocery item, provided by the partner.
supplier_name OPTIONAL STRING Supplier Name of the grocery item, provided by the partner.

Usage

    val groceryProperties = GroceryCatalogModel(
        name = "groceryItem",
        description = "test",
        market_id = "ES",
        supplier_id = "sup1",
        supplier_name = "sup",
        producer = "prod1",
        packaging = "box",
        packaging_size = 12,
        packaging_units = "units",
        category = "Food&Drinks",
        active_ingredients = arrayListOf("item1", "item2")
    )

    CfEComCatalog.updateGroceryCatalog("itemGroceryId", groceryProperties)
    let groceryProps = {
        name: "groceryItem",
        description: "test",
        market_id: "ES",
        supplier_id: "sup1",
        supplier_name: "sup",
        producer: "prod1",
        packaging: "box",
        packaging_size: 12,
        packaging_units: "units",
        category: "Food&Drinks",
        active_ingredients = ["item1", "item2"]
    }

    CfECom.updateGroceryCatalog("itemId", groceryProps)
    let groceryProps = {
        name: "groceryItem",
        description: "test",
        market_id: "ES",
        supplier_id: "sup1",
        supplier_name: "sup",
        producer: "prod1",
        packaging: "box",
        packaging_size: 12,
        packaging_units: "units",
        category: "Food&Drinks",
        active_ingredients: ["item1", "item2"]
    }

    ECommerce.updateGroceryCatalog("itemId", groceryProps)
[
   {
      "id":"itemGroceryId",
      "name":"testName",
      "description":"test",
      "category":"Food and Drinks",
      "market_id":"ES",
      "active_ingredients":[
         "test1"
      ],
      "packaging":"box",
      "packaging_size":12.0,
      "packaging_units":"units",
      "producer":"prod1",
      "supplier_id":"sup1",
      "supplier_name":"sup"
   }
]


Blood Catalog

Below is the Blood Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a blood, provided by the partner. If no Id is there then format will be _
blood_group REQUIRED STRING Blood Group for blood, provided by the partner.
blood_component OPTIONAL STRING Blood Component for blood, provided by the partner.
market_id OPTIONAL STRING Market Id for blood where it is available, provided by the partner. Probably country code.
packaging OPTIONAL STRING Packaging for blood, provided by the partner.
packaging_size OPTIONAL FLOAT Packaging Size for blood bag, provided by the partner.
packaging_units OPTIONAL STRING Packaging Units for blood bag, provided by the partner.
supplier_id OPTIONAL STRING Supplier Id of the blood, provided by the partner.
supplier_name OPTIONAL STRING Supplier Name of the blood, provided by the partner.

Usage

    val bloodModel = BloodCatalogModel(
        market_id = "id",
        blood_component = "Platelets",
        blood_group = "A+",
        packaging = "Pint",
        packaging_size = 0.453,
        packaging_units = "L",
        supplier_id = "",
        supplier_name = ""
    )

    CfEComCatalog.updateBloodCatalog("itemId", bloodModel)
    let bloodProperties = {
        market_id: "id",
        blood_component: "Platelets",
        blood_group: "A+",
        packaging: "Pint",
        packaging_size: 0.453,
        packaging_units: "L",
        supplier_id: "",
        supplier_name: ""
    }

    CfECom.logItemEvent(itemBloodProperties, bloodProperties)
    let bloodProperties = {
        market_id: "id",
        blood_component: "Platelets",
        blood_group: "A+",
        packaging: "Pint",
        packaging_size: 0.453,
        packaging_units: "L",
        supplier_id: "",
        supplier_name: ""
    }

    ECommerce.logItemEvent(itemProperties, bloodProperties)
[
  {
    "id": "a+_platelets",
    "blood_group": "A+",
    "blood_component": "Platelets",
    "market_id": "ID",
    "packaging": "pint",
    "packaging_size": 0.453,
    "packaging_units": "L",
    "supplier_id": "testSupplierId",
    "supplier_name": "testSupplierName"
  }
]


Oxygen Catalog

Below is the Oxygen Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a oxygen, provided by the partner. If no Id is present, the format will be: oxygen_
market_id OPTIONAL STRING Market Id for oxygen where it is available, provided by the partner. Probably country code.
packaging OPTIONAL STRING Packaging for oxygen, provided by the partner.
packaging_size OPTIONAL FLOAT Packaging Size for oxygen cylinder, provided by the partner.
packaging_units OPTIONAL STRING Packaging Units for oxygen cylinder, provided by the partner.
supplier_id OPTIONAL STRING Supplier Id of the oxygen, provided by the partner.
supplier_name OPTIONAL STRING Supplier Name of the oxygen, provided by the partner.

Usage

    val oxygenModel = OxygenCatalogModel(
        market_id = "eu",
        packaging = "Cylinder",
        packaging_size = 5f,
        packaging_units = "cubic_meter",
        supplier_id = "testSupplierId",
        supplier_name = "testSupplierName"
    )

    CfEComCatalog.updateOxygenCatalog("itemId", oxygenModel)
    let oxygenModel = {
        market_id: "eu",
        packaging: "Cylinder",
        packaging_size: 5,
        packaging_units: "cubic_meter",
        supplier_id: "testSupplierId",
        supplier_name: "testSupplierName"
    }

    CfECom.logItemEvent(itemProperties, oxygenModel)
    let oxygenModel = {
        market_id: "eu",
        packaging: "Cylinder",
        packaging_size: 5,
        packaging_units: "cubic_meter",
        supplier_id: "testSupplierId",
        supplier_name: "testSupplierName"
    }

    ECommerce.logItemEvent(itemProperties, oxygenModel)
[
  {
    "id": "oxygen_5-cubic-meter",
    "market_id": "ES",
    "packaging": "Cylinder",
    "packaging_size": 5.0,
    "packaging_units": "cubic_meter",
    "supplier_id": "testSupplierId",
    "supplier_name": "testSupplierName"
  }
]


Medical Equipment Catalog

Below is the Medical Equipment Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a Medical Equipment, provided by the partner.
name REQUIRED STRING Name for Medical Equipment where it is available, provided by the partner.
description OPTIONAL STRING Description for Medical Equipment where it is available, provided by the partner.
market_id OPTIONAL STRING Market Id for Medical Equipment where it is available, provided by the partner. Probably country code.
packaging OPTIONAL STRING Packaging for Medical Equipment, provided by the partner.
packaging_size OPTIONAL FLOAT Packaging Size for Medical Equipment, provided by the partner.
packaging_units OPTIONAL STRING Packaging Units for Medical Equipment, provided by the partner.
supplier_id OPTIONAL STRING Supplier Id of the Medical Equipment, provided by the partner.
supplier_name OPTIONAL STRING Supplier Name of the Medical Equipment, provided by the partner.
category OPTIONAL STRING Category of the Medical Equipment, provided by the partner.
producer OPTIONAL STRING Producer name of the Medical Equipment, provided by the partner.

Usage

     val medicalEquipmentCatalogModel = MedicalEquipmentCatalogModel(
        name = "Syringe 3ml", 
        description = "",
        market_id = "ES", 
        supplier_id = "supId", 
        supplier_name = "testSupplierName",
        category = "", 
        packaging = "carton", 
        packaging_size = 50f, 
        packaging_units = "units", 
        producer = ""
     )

    CfEComCatalog.updateMedicalEquipmentCatalog("itemId", medicalEquipmentCatalogModel)
    let medicalEquipmentProps = {
        name: "Syringe 3ml", 
        description: "",
        market_id: "ES", 
        supplier_id: "supId", 
        supplier_name: "testSupplierName",
        category: "", 
        packaging: "carton", 
        packaging_size: 50, 
        packaging_units: "units", 
        producer: ""
    }

    CfECom.logItemEvent(itemProperties, medicalEquipmentProps)
    let medicalEquipmentProps = {
        name: "Syringe 3ml", 
        description: "",
        market_id: "ES", 
        supplier_id: "supId", 
        supplier_name: "testSupplierName",
        category: "", 
        packaging: "carton", 
        packaging_size: 50, 
        packaging_units: "units", 
        producer: ""
    }

    ECommerce.logItemEvent(itemProperties, medicalEquipmentProps)
[
  {
    "id": "2422583",
    "name": "10ml Syringes and Needle",
    "description": "Lorem Ipsum",
    "market_id": "ID",
    "category": "Syringes",
    "packaging": "100pcs/Pack, 12pks/Ctn",
    "packaging_size": 12.0,
    "packaging_units": "pks",
    "producer": "Getz Pharma",
    "supplier_id": "testSupplierId",
    "supplier_name": "testSupplierName"
  }
]


Facility Catalog

Below is the Facility Catalog values.

Format

Param Usability Format Description
id REQUIRED STRING Unique id for a facility, provided by the partner.
name REQUIRED STRING Name for facility, provided by the partner.
type OPTIONAL STRING Type for facility, provided by the partner
country OPTIONAL STRING Country for facility, provided by the partner Probably country code.
region_state OPTIONAL STRING Region or state for facility, provided by the partner
city OPTIONAL STRING City for facility, provided by the partner
is_active OPTIONAL BOOLEAN Is the facility currently active, provided by the partner
has_delivery OPTIONAL BOOLEAN Does the facility offers delivery services, provided by the partner
is_sponsored OPTIONAL BOOLEAN Is the facility sponsored, provided by the partner

Usage

     val facilityCatalogModel = FacilityCatalogModel(
        name = "test site name",
        type = "pharmacy",
        country = CountryCode.Spain.name,
        region_state = "Barcelona",
        city = "Barcelona",
        is_active = true,
        is_sponsored = false,
        has_delivery = false
    )

   CfEComCatalog.updateFacilityCatalog("facilityId", facilityCatalogModel)
    let facilityProperties = {
        name: "some place name",
        type: "pharmacy",
        country: "Spain",
        region_state: "Barcelona",
        city: "Barcelona",
        is_active: true,
        has_delivery: false,
        is_sponsored: false
    }

    CfECom.updateFacilityCatalog("testFacilityId", facilityProperties);
    let facilityProperties = {
        name: "some place name",
        type: "pharmacy",
        country: "Spain",
        region_state: "Barcelona",
        city: "Barcelona",
        is_active: true,
        has_delivery: false,
        is_sponsored: false
    }

    ECommerce.logItemEvent(itemProperties, facilityProperties)
[
    {
        "city":"Barcelona",
        "country":"Spain",
        "has_delivery":false,
        "id":"facilityId",
        "is_active":true,
        "is_sponsored":false,
        "name":"test site name",
        "region_state":"Barcelona",
        "type":"pharmacy"
    }
]