Märkus.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida sisse logida või kausta vahetada.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida kausta vahetada.
See artikkel kirjeldab erinevaid hinnakujunduse API-sid, mida Microsoft Dynamics 365 Commerce hinnamootor pakub.
Dynamics 365 Commerce hinnamootor pakub järgmisi jaemüügiserveri API-sid, mida välised rakendused saavad kasutada erinevate hinnastsenaariumite toetamiseks:
- GetActivePrices – see API hangib toote arvutatud hinna, sealhulgas lihtsad allahindlused.
- CalculateSalesDocument – see API arvutab hinnad ja allahindlused toodetele antud kogustes, kui need ostetakse koos.
- GetAvailablePromotions – see API hangib ostukorvis olevatele toodetele kehtivaid allahindlusi.
- AddCoupons – see API lisab kupongid ostukorvi.
- RemoveCoupons – see API eemaldab kupongid ostukorvist.
Lisateavet jaemüügiserveri API-de kasutamise kohta välistes rakendustes vt Kasutage jaemüügiserveri API-sid välistes rakendustes.
GetActivePrices
API GetActivePrices lisati Commerce’i versiooni 10.0.4 väljalaskest. API hangib toote arvutatud hinna, sealhulgas lihtsad allahindlused. See ei arvuta mitmerealisi allahindlusi ja eeldab, et API päringu iga toote kogus on 1. See API võib võtta sisendiks ka toodete loendi ja küsida hulgi üksikute toodete hinda.
API GetActivePrices toetab Commerce’i rolle Töötaja, Klient, Anonüümbe ja Rakendus.
API GetActivePrices peamine kasutusala on toote üksikasjade leht (PDP), kus jaemüüjad näitavad toote parimat hinda, sealhulgas kehtivaid allahindlusi.
Märkus.
Kui näete, et kutsele GetActivePrices tagastatakse vähem tooteid, saate oma müügikonfiguratsioonide kinnitamiseks järgida kanali müügikonfiguratsiooni valideerijat.
Järgmises tabelis on näidatud API GetActivePrices sisendparameetrid.
| Nimi | Alamnimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|---|
| projectDomain | ProjectionDomain | Nõutav | ||
| ChannelId | long | Nõutav | ||
| Kataloogi ID | long | Nõutav | ||
| productIds | IEnumerable<pikk> | Nõutav | Toodete loend, mille jaoks hindu arvutada. | |
| activeDate | DateTimeOffset | Nõutav | Hindade arvutamise kuupäev. | |
| customerId | string | Valikuline | Kliendikonto number. | |
| affiliationLoyaltyTiers | IEnumerable<AffiliationLoyaltyTier> | Valikuline | Alluvuse ja lojaalsuse kihid. | |
| AffiliationId | long | Nõutav | Alluvuse ID. | |
| LoyaltyTierId | long | Valikuline | Püsikliendi kihi ID. | |
| includeSimpleDiscountsInContextualPrice | bool | Valikuline | Seadke selle parameetri väärtuseks tõene, et kaasata hinnaarvutusse lihtsad allahindlused. Vaikeväärtus on väär. | |
| includeVariantPriceRange | bool | Valikuline | Määrake selle parameetri väärtuseks tõene, et saada põhitoote kõigi variantide miinimum- ja maksimumhinnad. Vaikeväärtus on väär. | |
| includeAttainablePricesAndDiscounts | bool | Valikuline | Saavutatavate hindade ja allahindluste saamiseks määrake selle parameetri väärtuseks tõene. Vaikeväärtus on väär. |
Taotluse näidiskogum
{
"projectDomain":
{
"ChannelId": 5637144592,
"CatalogId": 0
},
"productIds":
[
68719489871
],
"activeDate": "2022-06-20T14:40:05.873+08:00",
"includeSimpleDiscountsInContextualPrice": true,
"includeVariantPriceRange": false
}
Näidisvastuse sisu
{
"value":
[
{
"ProductId": 68719489871,
"ListingId": 68719489871,
"BasePrice": 0,
"TradeAgreementPrice": 0,
"AdjustedPrice": 0,
"MaxVariantPrice": 0,
"MinVariantPrice": 0,
"CustomerContextualPrice": 0,
"DiscountAmount": 0,
"CurrencyCode": "USD",
"ItemId": "82000",
"InventoryDimensionId": null,
"UnitOfMeasure": "ea",
"ValidFrom": "2022-06-20T01:40:05.873-05:00",
"ProductLookupId": 0,
"ChannelId": 5637144592,
"CatalogId": 0,
"SalesAgreementPrice": 0,
"PriceSourceTypeValue": 1,
"DiscountLines": [],
"AttainablePriceLines": [],
}
]
}
PriceLookupContexti kasutamine
Commerce'i versioon 10.0.37 tutvustab PriceLookupContext klassi. See klass sisaldab kõiki GetActivePrices API otsingukriteeriume. See asendab varasemad parameetrid productIds, activeDate, customerId ja affiliationLoyaltyTiers. Klassil on ka lisakinnisvara, mida arendajad saavad kasutada allahindluste filtreerimiseks allahindluste otsingu ajal.
Sõltuvalt teie organisatsiooni vajadustest võib GetActivePrices API aktsepteerida kas varasemaid või uusi parameetreid, mis on seotud PriceLookupContext klassiga.
Sisendparameetrid
| Nimi | Alamnimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|---|
| projectDomain | ProjectionDomain | Nõutav | ||
| ChannelId | long | Nõutav | ||
| Kataloogi ID | long | Nõutav | ||
| priceLookupContext | PriceLookupContext | Nõutav | ||
| HeaderContext | PriceLookupHeaderContext | Nõutav | Sisaldab CustomerAccountNumber, AffiliationLoyaltyTierLines ja SalesOrderProperties | |
| LineContexts | IEnumerable<PriceLookupLineContext> | Nõutav | Sisaldab ProductRecordId, UnitOfMeasureSymbol, InventorySiteId, InventoryLocationId, DeliveryMode, CatalogId ja SalesLineProperties. | |
| includeSimpleDiscountsInContextualPrice | bool | Valikuline | Seadke selle parameetri väärtuseks tõene, et kaasata hinnaarvutusse lihtsad allahindlused. Vaikeväärtus on väär. | |
| includeVariantPriceRange | bool | Valikuline | Määrake selle parameetri väärtuseks tõene, et saada põhitoote kõigi variantide miinimum- ja maksimumhinnad. Vaikeväärtus on väär. | |
| includeAttainablePricesAndDiscounts | bool | Valikuline | Saavutatavate hindade ja allahindluste saamiseks määrake selle parameetri väärtuseks tõene. Vaikeväärtus on väär. |
Lisateavet vt PriceLookupContext.
CalculateSalesDocument
API CalculateSalesDocument lisati Commerce’i versiooni 10.0.25 väljalaskest. API arvutab hinnad ja allahindlused toodetele antud kogustes, kui need ostetakse järjest koos. CalculateSalesDocument API hinnaarvutus arvestab nii üherealisi allahindlusi kui ka mitmerealisi allahindlusi.
API CalculateSalesDocument peamine kasutusjuht on hinnakujunduse arvutamine stsenaariumide puhul, kus ostukorvi täielikku konteksti ei kehti (nt müügipakkumised). Sellest kasutusjuhust võivad kasu olla ka kassa stsenaariumid ja Commerce’i e-kaubandus. Madalam koguhind, kui ostukorvi tooteid arvutatakse komplektina (näiteks eraldiseisvate komplektide, seotud või soovitatud toodete või juba ostukorvis olevate toodete puhul), võib kliente veenda ostukorvi tooteid lisama.
Nii päringu kui ka vastuse API CalculateSalesDocument andmemudel on Ostukorv. Selle API kontekstis kannab andmemudel aga nime SalesDocument. Kuna enamik atribuute on valikulised ja ainult mõned neist mõjutavad hinnakujundust, kuvatakse järgmises tabelis ainult hinnakujundusega seotud väljad. Ära lisa API päringusse muid välju.
API Müügidokumendi arvutamine ulatus on lihtsalt hindade ja allahindluste arvutamine. Maksud ja tasud ei ole kaasatud.
Järgmises tabelis on toodud nimega salesDocument objekti sisendparameetrid.
| Nimi | Alamnimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|---|
| ID | string | Nõutav | Müügidokumendi identifikaator. | |
| CartLines | IList<CartLine> | Valikuline | Ridade loend, mille jaoks hindu ja allahindlusi arvutada. | |
| Toote ID | long | Nõutav CartLine’i ulatuse jaoks | Toote kirje ID. | |
| ItemId | string | Valikuline | Kauba identifikaator. Kui väärtus on esitatud, peab see ühtima parameetri ProductId väärtusega. | |
| InventoryDimensionId | string | Valikuline | Varude dimensiooni identifikaator. Kui väärtus on esitatud, siis väärtuste ItemId ja InventoryDimensionId kombinatsioon peab ühtima parameetri ProductId väärtusega. | |
| Kogus | decimal | Nõutav CartLine’i ulatuse jaoks | Toote kogus. | |
| UnitOfMeasureSymbol | string | Valikuline | Toote ühik. Kui väärtust pole esitatud, kasutab API vaikimisi toote müügiüksust. | |
| CustomerId | string | Valikuline | Kliendikonto number. | |
| LoyaltyCardId | string | Valikuline | Kliendikaardi identifikaator. Iga püsikliendikontoga seostatud kliendi kaart peab sobima parameetri CustomerId väärtusega (kui see on esitatud). Püsikliendi kaart ei leita, kas seda ei leita või selle olek on Blokeeritud. | |
| AffiliationLines | IList<kuuluvusLojaalsusTase> | Valikuline | Alluvuse klienditaseme read. Kui esitatud on väärtused CustomerId ja/ või LoyaltyCardId , ühendatakse vastavad püsikliendijärgu read väärtustega AffiliationLines . | |
| AffiliationId | long | Nõutav AffiliationLoyaltyTieri ulatuse jaoks | Alluvuse kirje ID. | |
| LoyaltyTierId | long | Nõutav AffiliationLoyaltyTieri ulatuse jaoks | Klienditaseme kirje ID. | |
| AffiliationTypeValue | täisarv | Nõutav AffiliationLoyaltyTieri ulatuse jaoks | Väärtus, mis näitab, kas alluvuse rida on tüübiga Üldine (0) või Lojaalsus (1). Kui parameetri väärtuseks on seatud 0, võtab API identifikaatoriks AffiliationIdväärtuse ja ignoreerib LoyaltyTierId väärtust. Kui parameetri väärtuseks on seatud 1 , võtab APIidentifikaatoriks LoyaltyTierId väärtuse ja ignoreerib väärtust AffiliationId . | |
| ReasonCodeLines | Kogumik<ReasonCodeLine> | Nõutav AffiliationLoyaltyTieri ulatuse jaoks | Põhjuse koodiread. See parameeter ei mõjuta hinnakujunduse arvutamist, kuid see on vajalik objekti AffiliationLoyaltyTier osana. | |
| CustomerId | string | Nõutav AffiliationLoyaltyTieri ulatuse jaoks | Kliendikonto number. | |
| Kupongid | IList<kupong> | Valikuline | Kuponge, mis ei ole rakendatavad (passiivne, aegunud või ei leita), ei arvestata hinnakujunduse arvutamisel. | |
| Kood | string | Nõutav kupongi ulatuse jaoks | Kupongi kood. | |
| CodeId | string | Valikuline | Kupongi koodi identifikaator. Kui väärtus on esitatud, peab see ühtima parameetri Code väärtusega. | |
| DiscountOfferId | string | Valikuline | Allahindluse identifikaator Kui väärtus on esitatud, peab see ühtima parameetri Code väärtusega. |
Taotluse näidiskogum
{
"salesDocument":
{
"Id": "CalculateSalesDocument",
"CartLines":
[
{
"ProductId": 68719491408,
"ItemId": "91003",
"InventoryDimensionId": "",
"Quantity": 1,
"UnitOfMeasureSymbol": "ea"
},
{
"ProductId": 68719493014,
"Quantity": 2,
"UnitOfMeasureSymbol": "ea"
}
],
"CustomerId": "3003",
"AffiliationLines":
[
{
"AffiliationId": 68719476742,
"LoyaltyTierId": 0,
"AffiliationTypeValue": 0,
"ReasonCodeLines": [],
"CustomerId": null
}
],
"LoyaltyCardId": "55103",
"Coupons":
[
{
"CodeId": "CODE-0005",
"Code": "CPN0004",
"DiscountOfferId": "ST100077"
}
]
}
}
Kogu ostukorvi objekt tagastatakse vastuse sisuna. Hindade ja allahindluste kontrollimiseks keskendu järgmises tabelis olevatele väljadele.
| Nimi | Alamnimi | Tüüp | Kirjeldus |
|---|---|---|---|
| NetPrice | decimal | Kogu müügidokumendi netohind enne allahindluste rakendamist. | |
| DiscountAmount | decimal | Kogu müügidokumendi allahindluse kogusumma. | |
| TotalAmount | decimal | Kogu müügidokumendi kogusumma. | |
| CartLines | IList<CartLine> | Arvutatud read, mis sisaldavad hinna ja allahindluse üksikasju. | |
| Hind | decimal | Toote ühikuhind. | |
| NetPrice | decimal | Rea netohind enne mis tahes allahindluste rakendamist (= Price × Quantity). | |
| DiscountAmount | decimal | Allahindluse summa. | |
| TotalAmount | decimal | Rea lõplik hinnakujunduse kogutulemus. | |
| PriceLines | IList<PriceLine> | Hinna üksikasjad, sealhulgas hinna allikas (baashind, hinna korrigeerimine või kaubandusleping) ja summa. | |
| DiscountLines | IList<DiscountLine> | Allahindluse üksikasjad. |
GetAvailablePromotions
Saadaval on kaks sarnast GetAvailablePromotions API-d:
- Kassetid/GetAvailablePromotions aktsepteerib parameetrina kassuliini identifikaatorite nimekirja.
- GetAvailablePromotions aktsepteerib parameetrina objekti DiscountsSearchCriteria .
Carts/GetAvailablePromotions
Kui ostukorvis on mitu ostukorvi rida, tagastab API Carts/GetAvailablePromotions API ostukorvi ridadele kehtivad allahindlused.
API Carts/GetAvailablePromotions peamine kasutusjuht on ostukorvi leht, kus jaemüüjad näitavad kehtiva ostukorvi jaoks kehtivaid allahindlusi või saadaolevaid kuponge.
Järgmises tabelis on loetletud API Carts/GetAvailablePromotions sisendparameetrid.
| Nimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|
| võti | string | Nõutav | Ostukorvi ID. |
| cartLineIds | IEnumerable<string> | Valikuline | Määrake see parameeter, et tagastada allahindlused ainult valitud ostukorvi ridadele. |
Näidis-vastus keha
{
"value":
[
{
"LineId": "f495ffa507bc4f63a47a409cd8713dd7",
"Promotion": {
"OfferId": "ST100012",
"OfferName": "Loyalty 5% off over $100",
"PeriodicDiscountTypeValue": 4,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": null,
"AdditionalRestrictions": null,
"Description": "All loyalty members get 5% with transaction total above $10 unless some exclusive or best price discounts are already applied on the transaction",
"ValidFromDate": "2022-06-20T06:52:56.2460219Z",
"ValidToDate": "2022-06-20T06:52:56.2460224Z",
"CouponCodes": [],
"ValidationPeriod": null
}
}
]
}
GetAvailablePromotions
API GetAvailablePromotions tagastab kõik antud kanali puhul kehtivad allahindlused.
GetAvailablePromotions API peamine kasutusjuhtum on kõigi allahindluste leht, kus jaemüüjad kuvavad kõiki allahindlusi praeguse kanali kohta.
Järgmises tabelis on loetletud API GetAvailablePromotions sisendparameetrid.
| Nimi | Alamnimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|---|
| searchCriteria | DiscountsSearchCriteria | Nõutav | ||
| ChannelId | long | Nõutav | ||
| Märksõna | string | Valikuline | ||
| IsDiscountCodeRequired | bool | Valikuline | Näitab, kas kupongi kood on vajalik või mitte. Kui null läbitakse, hangib API kõik allahindlused, sõltumata kupongikoodi nõuetest. | |
| StartDate | DateTimeOffset | Nõutav | Alguskuupäev (kaasa arvatud). | |
| EndDate | DateTimeOffset | Nõutav | Lõpukuupäev (kaasa arvatud). |
Taotluse näidiskogum
{
"searchCriteria": {
"ChannelId": 5637144592,
"StartDate": "1900-01-01T00:00:00Z",
"EndDate": "2154-12-31T00:00:00Z"
}
}
Näidisvastuse sisu
{
"@odata.context": "https://usnconeboxax1ret.cloud.onebox.dynamics.com/Commerce/$metadata#Collection(Microsoft.Dynamics.Commerce.Runtime.DataModel.Promotion)",
"value": [
{
"OfferId": "ST100024",
"OfferName": "Weekly ad",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": true,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100019",
"OfferName": "Take 20 off anything",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": true,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100015",
"OfferName": "Watches",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100012",
"OfferName": "Loyalty 5% off over $100",
"PeriodicDiscountTypeValue": 4,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "All loyalty members get 5% with transaction total above $10 unless some exclusive or best price discounts are already applied on the transaction",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100011",
"OfferName": "Loyalty 50% off sunglasses",
"PeriodicDiscountTypeValue": 1,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "Gold tier Loyalty customers get 50% on Sunglasses when purchased with a Top, Scarf or Men's Casual shirts",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100009",
"OfferName": "Student discount",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "Students get 10% off for on Jeans and Backpacks",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100004",
"OfferName": "Soccer sale",
"PeriodicDiscountTypeValue": 3,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "Providing you great discounts ranging from 10% to 20% on all branded Soccer balls. We carry a full line of soccer balls. Buy one for yourself or gift it to someone. We promise you that you won't be disappointed. If you don't see something that you are looking for please call us. This offer is only valid at our Retail Malls.",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
},
{
"OfferId": "ST100003",
"OfferName": "BMX helmet sale",
"PeriodicDiscountTypeValue": 0,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": "",
"AdditionalRestrictions": "",
"Description": "Get 20% off on all branded youth BMX helmets when you buy two or more. Choose from our great selection of BMX bike helmets from top brands, including ProTec, Giro, Bell and SixSixOne BMX helmets. This offer is only available at our Retail Mall stores",
"ValidFromDate": "1900-01-01T00:00:00Z",
"ValidToDate": "2154-12-31T00:00:00Z",
"CouponCodes": [],
"ExtensionProperties": [
{
"Key": "DATAAREAID",
"Value": {
"StringValue": "usrt"
}
},
{
"Key": "DATEVALIDATIONTYPE",
"Value": {
"IntegerValue": 1
}
}
]
}
]
}
AddCoupons
API AddCoupons toetab kupongide loendi lisamist ostukorvi. See tagastab ostukorvi objekti pärast kupongide lisamist.
Järgmises tabelis on näidatud API AddCoupons sisendparameetrid.
| Nimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|
| võti | string | Nõutav | Ostukorvi ID. |
| couponCodes | IEnumerable<string> | Nõutav | Kupongi koodid ostukorvi lisamiseks. |
| isLegacyDiscountCode | bool | Valikuline | Määrake selle parameetri väärtuseks tõene, et näidata, et kupong on pärandsooduskood. Vaikeväärtus on väär. |
RemoveCoupons
API RemoveCoupons API toetab kupongide loendi eemaldamist ostukorvist. See tagastab ostukorvi objekti pärast kupongide eemaldamist.
Järgmises tabelis on näidatud API RemoveCoupons sisendparameetrid.
| Nimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|
| võti | string | Nõutav | Ostukorvi ID. |
| couponCodes | IEnumerable<string> | Nõutav | Kupongi koodid eseme ostukorvist eemaldamiseks. |
GetProductPromotions
GetProductPromotions API tutvustati Commerce version 10.0.38 väljaandes. See API saab nimekirja reklaamtoodetest koos antud tooteallahindlustega. Samuti võib see võtta sisendiks toote soodusnumbrite ID-de ja hinnakonteksti ning pärida seotud reklaamtoodete kohta. GetProductPromotions API peamine kasutusjuhtum on tooteloendi lehtedel, kus jaemüüjad kuvavad allahindlustega tooteid. See API toetab nii atribuudipõhise hinnakujunduse mudelit kui pärandhinna mudelit.
Järgmine tabel näitab sisendparameetreid GetProductPromotions API jaoks.
| Nimi | Alamnimi | Tüüp | Nõutav/valikuline | Kirjeldus |
|---|---|---|---|---|
| productDiscountIds | IEnumerable<string> | Nõutav | Tootesoodustuste ID-de nimekiri, et otsida reklaamtooteid. | |
| priceLookupContext | PriceLookupContext | Nõutav | Hinnakujunduse kontekst. | |
| activeDate | DateTimeOffset | Valikuline | Kuupäev, millal kampaaniat loetakse. |
Piirangud ja piirangud:
- Sisendina saab võtta kuni viis toote allahindluse ID-d.
- Toetatakse ainult lihtsaid allahindlusi.
Taotluse näidiskogum
{
{
"productDiscountIds":
[
"ST100009",
"ST100024"
],
"priceLookupContext":
{
"HeaderContext":
{
"AffiliationLoyaltyTierLines":
[
{
"AffiliationId": 5637144577,
"LoyaltyTierId": 0,
"AffiliationTypeValue": 0,
"ReasonCodeLines": [],
"CustomerId": "2001"
}
]
},
"LineContexts": []
},
"activeDate": "2023-08-20T14:40:05.873+08:00",
},
}
Näidisvastuse sisu
{
"value":
[
{
"ProductId": 68719489871,
"ProductDiscounts":
[
{
"OfferId": "ST100009",
"OfferName": "Student discount",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": null,
"AdditionalRestrictions": null,
"Description": "Students get 10% off on Jeans and Backpacks",
"ValidFromDate": "1900-01-01T00:00:00.0000000Z",
"ValidToDate": "2154-12-31T00:00:00.0000000Z",
"CouponCodes": [],
"DateValidationTypeValue": 1
},
{
"OfferId": "ST100024",
"OfferName": "Weekly ad",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": null,
"AdditionalRestrictions": null,
"Description": "",
"ValidFromDate": "1900-01-01T00:00:00.0000000Z",
"ValidToDate": "2154-12-31T00:00:00.0000000Z",
"CouponCodes": [],
"DateValidationTypeValue": 1
}
]
},
{
"ProductId": 68719489872,
"ProductDiscounts":
[
{
"OfferId": "ST100009",
"OfferName": "Student discount",
"PeriodicDiscountTypeValue": 2,
"IsDiscountCodeRequired": false,
"ValidationPeriodId": null,
"AdditionalRestrictions": null,
"Description": "Students get 10% off on Jeans and Backpacks",
"ValidFromDate": "1900-01-01T00:00:00.0000000Z",
"ValidToDate": "2154-12-31T00:00:00.0000000Z",
"CouponCodes": [],
"DateValidationTypeValue": 1
}
]
}
]
}
Lisateavet vt PriceLookupContext.
PriceLookupContext
Kasuta PriceLookupContext klassi kinnisvarapõhise hinnamudeli jaoks GetProductPromotions ja GetActivePrices API-des.
Järgmine näide näitab PriceLookupContext klassi struktuuri.
{
HeaderContext: PriceLookupHeaderContext
{
CustomerAccountNumber: string
AffiliationLoyaltyTierLines: IEnumerable<AffiliationLoyaltyTier>
ChannelId: long?
SalesOrderProperties: IEnumerable<AttributeValueBase>
},
LineContexts: IEnumerable<PriceLookupLineContext>
[
{
ProductRecordId: string
UnitOfMeasureSymbol: string
InventorySiteId: string
InventoryLocationId: string
DeliveryMode: string
CatalogId: string
SalesLineProperties: IEnumerable<AttributeValueBase>
},
]
}
Taotluse näidiskogum
"PriceLookupContext":
{
"HeaderContext":
{
"CustomerAccount": 2001,
"AffiliationLoyaltyTierLines":
[
{
"AffiliationId": 5637144577,
"LoyaltyTierId": 0,
"AffiliationTypeValue": 0,
"ReasonCodeLines": [],
"CustomerId": "2001"
}
],
"SalesOrderProperties":
[
{
"@odata.type": "#Microsoft.Dynamics.Commerce.Runtime.DataModel.AttributeTextValue",
"Name": "CalcDate",
"TextValue": "2022-10-10"
}
]
},
"LineContexts": []
}
Märkus.
- API tuletab kliendigrupi kliendikonto numbrist, seega päring ei määra kliendigruppi PriceLookupHeaderContext parameetris.
- Saate määrata ChannelId parameetris PriceLookupHeaderContext. Kui sa seda ei täpsusta, kasutab API päringu kontekstist pärit ChannelId-d (praegust kanalit Store Commerce'i kasutamisel).