Richemont.Booster2.PublicApi

<back to all web services

GetSaleDetails

Requires Authentication
The following routes are available for this service:
GET/warrantyGet a list of Sale DetailsGet a list of Sale Details based on the search parameters submitted

export class SaleDetail
{
    /** @description Unique Identifier of the Sell-out created in Booster */
    // @ApiMember(Description="Unique Identifier of the Sell-out created in Booster", IsRequired=true)
    public saleId: number;

    /** @description Unique Identifier of the Sell-out created in Booster */
    // @ApiMember(Description="Unique Identifier of the Sell-out created in Booster", IsRequired=true)
    public saleDetailId: number;

    /** @description Booster Customer Id */
    // @ApiMember(Description="Booster Customer Id")
    public boosterCustomerId?: number;

    /** @description Richemont POS code */
    // @ApiMember(Description="Richemont POS code", IsRequired=true)
    public posCode: string;

    /** @description Receipt or Invoice Number */
    // @ApiMember(Description="Receipt or Invoice Number")
    public documentNumber: string;

    /** @description Date of the Sell-out */
    // @ApiMember(Description="Date of the Sell-out", IsRequired=true)
    public documentDate: string;

    /** @description Position Number */
    // @ApiMember(Description="Position Number")
    public documentLineNumber?: number;

    /** @description Richemont Reference Code of the item */
    // @ApiMember(Description="Richemont Reference Code of the item", IsRequired=true)
    public articleCode: string;

    /** @description Serial Number of the item */
    // @ApiMember(Description="Serial Number of the item")
    public serialNumber: string;

    /** @description Use positive for standard Sell-out and negative quantity for return */
    // @ApiMember(Description="Use positive for standard Sell-out and negative quantity for return", IsRequired=true)
    public quantity: number;

    /** @description Retail Price */
    // @ApiMember(Description="Retail Price")
    public retailPrice?: number;

    /** @description Sold Price */
    // @ApiMember(Description="Sold Price")
    public unitPrice?: number;

    /** @description Currency of the sold price */
    // @ApiMember(Description="Currency of the sold price")
    public currencyCode: string;

    /** @description CCP Status Code */
    // @ApiMember(Description="CCP Status Code")
    public ccpStatusCode: string;

    /** @description CCP Status Description */
    // @ApiMember(Description="CCP Status Description")
    public ccpStatusDescription: string;

    /** @description CCP Retrigger enable */
    // @ApiMember(Description="CCP Retrigger enable")
    public retriggerEnabled: boolean;

    /** @description Warranty Extention Status */
    // @ApiMember(Description="Warranty Extention Status")
    public warrantyExtentionStatusId?: number;

    /** @description Warranty Extention Status */
    // @ApiMember(Description="Warranty Extention Status")
    public warrantyExtentionStatusDescription: string;

    /** @description Sale Representative Email */
    // @ApiMember(Description="Sale Representative Email")
    public saleRepresentativeEmails: string[];

    /** @description Promoter Type IDs, possible values are: DAI, FIT, GRT */
    // @ApiMember(Description="Promoter Type IDs, possible values are: DAI, FIT, GRT")
    public promoterTypeId: string;

    /** @description Sellout Type, possible values are: 'standard' or 'consigned' */
    // @ApiMember(Description="Sellout Type, possible values are: 'standard' or 'consigned'", IsRequired=true)
    public type: string;

    /** @description Original Sale Detail Id */
    // @ApiMember(Description="Original Sale Detail Id")
    public originalSaleDetailId?: number;

    public constructor(init?: Partial<SaleDetail>) { (Object as any).assign(this, init); }
}

export class GetSaleDetailsResponse
{
    /** @description Index of the result set returnedr */
    // @ApiMember(Description="Index of the result set returnedr", IsRequired=true)
    public page: number;

    /** @description Size of the result set returned */
    // @ApiMember(Description="Size of the result set returned", IsRequired=true)
    public items: number;

    /** @description Total amount of pages / result sets */
    // @ApiMember(Description="Total amount of pages / result sets", IsRequired=true)
    public totalPages: number;

    /** @description Total amount of results */
    // @ApiMember(Description="Total amount of results", IsRequired=true)
    public totalResults: number;

    /** @description List of Sale Details */
    // @ApiMember(Description="List of Sale Details", IsRequired=true)
    public elements: SaleDetail[];

    public constructor(init?: Partial<GetSaleDetailsResponse>) { (Object as any).assign(this, init); }
}

export class ProductCategory
{
    /** @description Brand Category ID */
    // @ApiMember(Description="Brand Category ID")
    public brandCategoryId: string;

    /** @description Grand Category ID */
    // @ApiMember(Description="Grand Category ID", IsRequired=true)
    public grandCategoryId: string;

    /** @description Master Category ID */
    // @ApiMember(Description="Master Category ID")
    public masterCategoryId: string;

    /** @description Category ID */
    // @ApiMember(Description="Category ID")
    public categoryId: string;

    /** @description Sub Category ID */
    // @ApiMember(Description="Sub Category ID")
    public subCategoryId: string;

    public constructor(init?: Partial<ProductCategory>) { (Object as any).assign(this, init); }
}

export class GetSaleDetails implements IPagedRequest
{
    /** @description Richemont Brand ID */
    // @ApiMember(Description="Richemont Brand ID", IsRequired=true)
    public brand: string;

    /** @description Richemont POS code */
    // @ApiMember(Description="Richemont POS code", IsRequired=true)
    public posCode: string;

    /** @description Receipt or Invoice Number */
    // @ApiMember(Description="Receipt or Invoice Number")
    public documentNumber: string;

    /** @description Date of the Sell-out Start  */
    // @ApiMember(Description="Date of the Sell-out Start ")
    public documentDateFrom?: string;

    /** @description Date of the Sell-out End */
    // @ApiMember(Description="Date of the Sell-out End")
    public documentDateTo?: string;

    /** @description Richemont Reference Code of the item */
    // @ApiMember(Description="Richemont Reference Code of the item")
    public articleCode: string;

    /** @description Serial Number of the item */
    // @ApiMember(Description="Serial Number of the item")
    public serialNumber: string;

    /** @description Unique Identifier of the Sell-out created in Booster */
    // @ApiMember(Description="Unique Identifier of the Sell-out created in Booster")
    public saleDetailId?: number;

    /** @description Unique Identifier of the Sell-out created in Booster */
    // @ApiMember(Description="Unique Identifier of the Sell-out created in Booster")
    public saleId?: number;

    /** @description Booster Customer Id */
    // @ApiMember(Description="Booster Customer Id")
    public boosterCustomerId?: number;

    /** @description Possible warranty extention status IDs, 1 (Activated), 2 (Requested), 3 (Refused), 4 (Error), 5 (Action Required), 6 (Pending) */
    // @ApiMember(Description="Possible warranty extention status IDs, 1 (Activated), 2 (Requested), 3 (Refused), 4 (Error), 5 (Action Required), 6 (Pending)")
    public warrantyExtensionStatusIds: number[];

    /** @description Product Categories */
    // @ApiMember(Description="Product Categories")
    public productCategories: ProductCategory[];

    /** @description Index of the result set returned */
    // @ApiMember(Description="Index of the result set returned", IsRequired=true)
    public page: number;

    /** @description Size of the result set returned */
    // @ApiMember(Description="Size of the result set returned", IsRequired=true)
    public items: number;

    /** @description Omit precise record count - save on performance */
    // @ApiMember(Description="Omit precise record count - save on performance")
    public noCount: boolean;

    /** @description Sort Expression, Possible values: 'SaleDetailIdDESC', 'DocumentDate'. */
    // @ApiMember(Description="Sort Expression, Possible values: 'SaleDetailIdDESC', 'DocumentDate'.")
    public sortBy: string;

    public constructor(init?: Partial<GetSaleDetails>) { (Object as any).assign(this, init); }
}

TypeScript GetSaleDetails DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /warranty HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"page":0,"items":0,"totalPages":0,"totalResults":0}