syntax = "proto3";
package pricing;

service PricingService {
  rpc SetPrice(SetPriceRequest) returns (PriceResponse);
  rpc GetPrice(GetPriceRequest) returns (PriceResponse);
  rpc GetPriceBulk(GetPriceRequestBulk) returns (GetPriceResponse);
}

message SetPriceRequest {
  string sku = 1;
  int32 price_net_retail = 2;
  string vat = 3;
  int32 price_gross_retail = 4;
  string created_by = 5;
}

message PriceResponse {
  string sku = 1;
  int32 price_net_retail = 2;
  string vat = 3;
  int32 price_gross_retail = 4;
}

message PriceResponseBulk {
  string sku = 1;
  int32 price_net_retail = 2;
  string vat = 3;
  int32 price_gross_retail = 4;
  int32 status_code = 5;
}

message GetPriceRequest { string sku = 1; }

message GetPriceRequestBulk { repeated string skus = 1; }

message GetPriceResponse { map<string, PriceResponseBulk> result = 1; }