Flavours API
ProductPrice

Upsert Product Price

POST
/api/v2/products/{productId}/prices

Add or update a product price for a payment method or order type.

AuthorizationBearer <token>

You can retrieve your token by logging in.

In: header

Path Parameters

productId*string

Header Parameters

X-API-Version*string

API contract version to target. See the Changelog for what changed in each version.

Default"2.0.0"
Value in"2.3.0" | "2.2.0" | "2.1.0" | "2.0.0"

Request Body

application/json

modifier_id?|

Must match an existing stored value.

priceable_type*string
Value in"PAYMENT_METHOD" | "ORDER_TYPE"
priceable_id*string
value_type?string

This field is required when value is present.

Value in"PERCENT" | "NOMINAL"
value?number

This field is required when price is not present.

price?|

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://api.flavours.sa/dev/api/v2/products/totam/prices" \  -H "X-API-Version: 2.3.0" \  -H "Content-Type: application/json" \  -d '{    "priceable_type": "ORDER_TYPE",    "priceable_id": "officia"  }'
{
  "meta": {
    "code": 200,
    "status": "success",
    "message": "Price saved successfully."
  },
  "data": {
    "id": 12,
    "product_id": "fd345ea2-fe4e-4db3-8a90-69510518b8c6",
    "price": "20",
    "tax": "0",
    "total": "20",
    "is_tax_included": true,
    "market_id": "848aa3f5-fc3d-42d3-8cc9-4c6edd0140d0",
    "branch_id": "7c538fd7-9547-4b16-959d-f01052e04c6f",
    "product_modifier_id": 717712183882075,
    "payment_method_key": "MASTERCARD",
    "payment_method": {
      "key": "MASTERCARD",
      "name": "MasterCard",
      "is_online": false,
      "logo_img": "http://localhost:8000/img/payment-methods/MASTERCARD.png",
      "created_at": 1787446700993,
      "updated_at": 1787446700993,
      "scopes": [
        "SCOPE_ORDER"
      ]
    },
    "modifier": {
      "id": 717712183882075,
      "modifierable_id": "fd345ea2-fe4e-4db3-8a90-69510518b8c6",
      "name_en": null,
      "name_ar": null,
      "type": "OPTION",
      "calorie": null,
      "price": 20,
      "tax": 0,
      "total": 20,
      "cost": null,
      "profit": null,
      "is_tax_included": true,
      "deleted_at": null,
      "barcode": null,
      "barcode_img": null,
      "weight_amount": null,
      "weight_unit": null,
      "market_id": "848aa3f5-fc3d-42d3-8cc9-4c6edd0140d0",
      "branch_id": "7c538fd7-9547-4b16-959d-f01052e04c6f",
      "modifierable_type": "PRODUCT_MODIFIER_PRODUCT",
      "stock": 50,
      "product_id": "fd345ea2-fe4e-4db3-8a90-69510518b8c6",
      "sku": null
    }
  }
}
{
  "meta": {
    "code": 401,
    "status": "error",
    "message": "Unauthenticated."
  },
  "data": null
}
{
  "meta": {
    "code": 403,
    "status": "error",
    "message": "Unauthorized."
  },
  "data": null
}
{
  "meta": {
    "code": 404,
    "status": "error",
    "message": "Resource not found."
  },
  "data": null
}
{
  "meta": {
    "code": 422,
    "status": "error",
    "message": "The selected priceable_id is invalid. (and 1 more error)"
  },
  "data": [
    {
      "code": 0,
      "message": "The selected priceable_id is invalid.",
      "field": "priceable"
    },
    {
      "code": 0,
      "message": "The price must be greater than 0.",
      "field": "price"
    }
  ]
}
{
  "meta": {
    "code": 500,
    "status": "error",
    "message": "Internal server error."
  },
  "data": null
}