Kredity
Kredity
Kredit v EdeeShopu lze uplatnit dvěma způsoby:
- jako sleva z objednávky (ABSOLUTE_ORDER) – výchozí chování,
- jako platba (PAYMENT) – zapíná se v konfiguraci přes useCreditAsPayment.
Při použití kreditu jako platby:
- v režimu daní poukazů SINGLE se snižuje základ DPH (kredit se chová jako předplacená platba),
- v režimu MULTI se základ DPH nemění,
- volitelně může krýt i dopravu a platbu přes useCreditToShippingAndPayment.
Poznámka: Jaký je rozdíl mezi slevou a platbou?
- Sleva (ABSOLUTE_ORDER) je rozpočítána mezi položky a vždy snižuje základ DPH položek.
- Platba (PAYMENT) se mezi položky nerozpočítává, ovlivňuje pouze finální částku k úhradě; to, zda sníží základ DPH, závisí na nastavení objednákového modulu, viz voucherTaxStrategy.
Pořadí uplatnění vůči jiným cenovým politikám (např. dárkovým poukazům) určíte prioritou skupiny cenové politiky v konfiguraci kreditů (pricePolicyPriority). Pokud chcete, aby se nejdříve uplatnil voucher a až poté kredit, nastavte pro kredit nižší prioritu než pro dárkové poukazy (viz také giftConfig.
Kredity se zapínají pomocí elementu <credit/>.
Konfigurační soubor se standardně nachází v adresáři config/module-edeeshop/features/benefit/credit.xml.
Zkopírovat odkaz na sekciPříklad konfigurace
1 <credit>2 <allocations>3 <fixedAdditions>4 <addition>5 <code/>6 <events>7 <event>8 <allocationId>event.order.number</allocationId>9 <amount>100</amount>10 <catalogCode>event.order.catalogCode</catalogCode>11 <checkUnique>true</checkUnique>12 <constraint>eq(event.state.code,dispatched-order)</constraint>13 <currency>event.order.currency</currency>14 <customer>event.user.login</customer>15 <eventName>afterNewOrderStateCreatedEvent</eventName>16 <expireAtEndOfDay>true</expireAtEndOfDay>17 <expression>event.state.code == 'dispatched-order'</expression>18 <lang>event.order.lang</lang>19 <message>texts.get('mail.credit.thanks', event.order.customer)</message>20 <validity>P365D</validity>21 </event>22 </events>23 </addition>24 </fixedAdditions>25 <percentageAdditions>26 <addition>27 <code/>28 <events>29 <event>30 <allocationId>event.order.number</allocationId>31 <catalogCode>event.order.catalogCode</catalogCode>32 <checkUnique>true</checkUnique>33 <constraint>eq(event.state.code,dispatched-order)</constraint>34 <currency>event.order.currency</currency>35 <customer>event.user.login</customer>36 <eventName>afterNewOrderStateCreatedEvent</eventName>37 <expireAtEndOfDay>true</expireAtEndOfDay>38 <expression>event.state.code == 'dispatched-order'</expression>39 <fromAmount>event.order.totalPriceOfItemsToPay</fromAmount>40 <lang>event.order.lang</lang>41 <message>texts.get('mail.credit.thanks', event.order.customer)</message>42 <percent>10</percent>43 <rounding>0</rounding>44 <roundingMode>T(java.math.RoundingMode).DOWN</roundingMode>45 <validity>P365D</validity>46 </event>47 </events>48 </addition>49 </percentageAdditions>50 <reverts>51 <revert>52 <code/>53 <events>54 <event>55 <allocationId>event.order.number</allocationId>56 <catalogCode>event.order.catalogCode</catalogCode>57 <constraint>eq(event.state.code,dispatched-order)</constraint>58 <currency>event.order.currency</currency>59 <customer>event.user.login</customer>60 <eventName>afterNewOrderStateCreatedEvent</eventName>61 <expression>event.state.code == 'dispatched-order'</expression>62 </event>63 </events>64 </revert>65 </reverts>66 </allocations>67 <currencies>68 <currency>69 <code>CZK</code>70 <minimalOrderAmount>1000</minimalOrderAmount>71 </currency>72 </currencies>73 <expiration>1y</expiration>74 <notifyBeforeExpiration>7d</notifyBeforeExpiration>75 <pricePolicyPriority>-1000000</pricePolicyPriority>76 <useCreditAsPayment>true</useCreditAsPayment>77 <useCreditToShippingAndPayment>true</useCreditToShippingAndPayment>78 <catalogSpecific>79 <catalogCode/>80 <allocations>81 <fixedAdditions>82 <addition>83 <code/>84 <events>85 <event>86 <allocationId>event.order.number</allocationId>87 <amount>100</amount>88 <catalogCode>event.order.catalogCode</catalogCode>89 <checkUnique>true</checkUnique>90 <constraint>eq(event.state.code,dispatched-order)</constraint>91 <currency>event.order.currency</currency>92 <customer>event.user.login</customer>93 <eventName>afterNewOrderStateCreatedEvent</eventName>94 <expireAtEndOfDay>true</expireAtEndOfDay>95 <expression>event.state.code == 'dispatched-order'</expression>96 <lang>event.order.lang</lang>97 <message>texts.get('mail.credit.thanks', event.order.customer)</message>98 <validity>P365D</validity>99 </event>100 </events>101 </addition>102 </fixedAdditions>103 <percentageAdditions>104 <addition>105 <code/>106 <events>107 <event>108 <allocationId>event.order.number</allocationId>109 <catalogCode>event.order.catalogCode</catalogCode>110 <checkUnique>true</checkUnique>111 <constraint>eq(event.state.code,dispatched-order)</constraint>112 <currency>event.order.currency</currency>113 <customer>event.user.login</customer>114 <eventName>afterNewOrderStateCreatedEvent</eventName>115 <expireAtEndOfDay>true</expireAtEndOfDay>116 <expression>event.state.code == 'dispatched-order'</expression>117 <fromAmount>event.order.totalPriceOfItemsToPay</fromAmount>118 <lang>event.order.lang</lang>119 <message>texts.get('mail.credit.thanks', event.order.customer)</message>120 <percent>10</percent>121 <rounding>0</rounding>122 <roundingMode>T(java.math.RoundingMode).DOWN</roundingMode>123 <validity>P365D</validity>124 </event>125 </events>126 </addition>127 </percentageAdditions>128 <reverts>129 <revert>130 <code/>131 <events>132 <event>133 <allocationId>event.order.number</allocationId>134 <catalogCode>event.order.catalogCode</catalogCode>135 <constraint>eq(event.state.code,dispatched-order)</constraint>136 <currency>event.order.currency</currency>137 <customer>event.user.login</customer>138 <eventName>afterNewOrderStateCreatedEvent</eventName>139 <expression>event.state.code == 'dispatched-order'</expression>140 </event>141 </events>142 </revert>143 </reverts>144 </allocations>145 <currencies>146 <currency>147 <code>CZK</code>148 <minimalOrderAmount>1000</minimalOrderAmount>149 </currency>150 </currencies>151 <expiration>1y</expiration>152 <notifyBeforeExpiration>7d</notifyBeforeExpiration>153 <pricePolicyPriority>-1000000</pricePolicyPriority>154 <useCreditAsPayment>true</useCreditAsPayment>155 <useCreditToShippingAndPayment>true</useCreditToShippingAndPayment>156 </catalogSpecific>157</credit>
Zkopírovat odkaz na sekciPopis
Zkopírovat odkaz na sekcicredit
Konfigurace .
Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| allocations | Alokační pravidla, která zajistí automatizované přidělení kreditu na základě konkrétní události a naopak revertování původního přidělení kreditu na základě jiné události. | - | - | |
| currencies/currency | Specifická konfigurace pro konkrétní měny. V případě, že je seznam prázdný, tak jsou kredity povoleny pro všechny měny. V opačném případě jsou kredity povoleny jen pro měny definované v tomto seznamu. | List: currencies/currency | - | - |
| expiration | Časový interval po kterém dojde k vypršení platnosti kredity. Časový interval se počítá od přidělení kreditu. Po vypršení platnosti nelze již kredity uplatnit. | - | 1y | |
| notifyBeforeExpiration | Časový interval před koncem platnosti kreditu, kdy se mají odeslat upozornění na konec platnosti. | - | 7d | |
| pricePolicyPriority | Priorita uplatnění cenové politiky pro kredity. Standardně by se kredity měly uplatnit jako poslední, proto je default hodnota velmi nízká. Čím vyšší je priorita, tím dříve se politika uplatní. | Long | - | -1000000 |
| useCreditAsPayment | Pokud je povoleno, kredit se uplatní jako platba (PAYMENT) namísto slevy z objednávky (ABSOLUTE_ORDER). Prakticky to znamená:
Výchozí hodnota: false (kvůli zpětné kompatibilitě). | Boolean | - | - |
| useCreditToShippingAndPayment | Pokud je povoleno, kredit použitý jako platba (viz #getUseCreditAsPayment()) může pokrýt také náklady na dopravu a platbu. Pokud je vypnuto, kredit se vztahuje pouze na položky objednávky. Výchozí hodnota: false. | Boolean | - | - |
| catalogSpecific | Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde. | - | - |
Zkopírovat odkaz na sekciallocations
Alokační pravidla, která zajistí automatizované přidělení kreditu na základě konkrétní události a naopak revertování původního přidělení kreditu na základě jiné události.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| fixedAdditions/addition | Seznam pravidel pro přidání fixní částky kreditu. | List: fixedAdditions/addition | - | - |
| percentageAdditions/addition | Seznam pravidel pro přidání procentuální částky kreditu. | - | - | |
| reverts/revert | Seznam pravidel pro zrušení přiděleného kreditu. | List: reverts/revert | - | - |
Zkopírovat odkaz na sekcifixedAdditions/addition
Seznam pravidel pro přidání fixní částky kreditu.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| code | Unikátní kód pravidla, který se používá k identifikaci pravidla v rámci systému. Tento kód se eviduje u přidaného kreditu v atributu type (). | String | - | - |
| events/event | Seznam událostí, na které reaguje toto pravidlo. V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje. Pravidlo vyžaduje alespoň jednu událost. | List: events/event | - | - |
Zkopírovat odkaz na sekcievents/event
Seznam událostí, na které reaguje toto pravidlo.
V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje.
Pravidlo vyžaduje alespoň jednu událost.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| allocationId | Výraz (SpEL - Spring Expression Language), který identifikuje zdroj na základě, kterého byly kredity přiděleny. Příkladem může být číslo objednávky. Na základě této hodnoty je pak možné provést např. zrušení přiděleného kreditu v případě storna objednávky. Toto id se eviduje u přidaného kreditu v atributu source (. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.number. Povinná hodnota. | String | - | - |
| amount | Výraz (SpEL - Spring Expression Language), který vrací fixní částku kreditu (java.math.BigDecimal), která se má zákazníkovi přidělit. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.creditAmount nebo 100. Povinná hodnota. | String | - | - |
| catalogCode | Výraz (SpEL - Spring Expression Language), který vyhodnocuje katalog, v rámci kterého bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| checkUnique | Výraz (SpEL - Spring Expression Language), který musí vracet true nebo false. Tato hodnota pak určuje, zda má probíhat kontrola duplicitního přidělení kreditu, tedy zda je možné přidělit kredit vícekrát pro stejné allocationId. Nepovinná hodnota. Pokud není uvedeno, kontrola se provádí. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu false. | String | - | - |
| constraint | Pravidlo schválí událost pokud vlastnosti této události splňují požadavky definované podmínky. Podmínka může obsahovat libovolný standardní operátor: and, or, not, eq, isTrue, isFalse atd. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: 1 and(2 eq(event.state.code,dispatched-order),3 isTrue(event.order.paid)4) Více na TOBEDONE #1948 odkaz na dokumentaci constraint. | String | - | - |
| currency | Výraz (SpEL - Spring Expression Language), který vyhodnocuje měnu, v rámci které bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| customer | Výraz (SpEL - Spring Expression Language), který vyhodnocuje zákazníka (jeho identifikátor), kterému bude kredit přidán/zrušen. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.user.login. Povinná hodnota. | String | - | - |
| eventName | Název aplikační události. Pokud název události odpovídá této hodnotě, aby mohla být podmínka splněna. Pokud není vyplněno, název události se nekontroluje. | String | - | - |
| expireAtEndOfDay | Výraz (SpEL - Spring Expression Language), který musí vracet true nebo false. Tato hodnota pak určuje, zda se má platnost kreditu (hodnota vypočtená v rámci výrazu validity) automaticky nastavit na konec dne. Nepovinná hodnota. Default hodnota je true. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu false. | String | - | - |
| expression | Výraz (SpEL - Spring Expression Language), který se pro danou událost vyhodnocuje. Podmínka je splněna pokud daný výraz vrací true. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: (event.state.code == 'dispatched-order') && (event.order.isPaid()). Nepovinný hodnota. | String | - | - |
| lang | Výraz (SpEL - Spring Expression Language), který vyhodnocuje jazyk v jakém se má nacházet případná zpráva. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.lang. Nepovinná hodnota. | String | - | - |
| message | Výraz (SpEL - Spring Expression Language), který vyhodnocuje zprávu pro zákazníka, která může být součástí notifikace. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Dále je možné pomocí klíčového slova texts přistupovat k metodám com.fg.mail.core.business.feature.applicator.processing.TextAccessor, který poskytuje lokalizované texty. Příklad výrazu texts.get('mail.credit.thanks', event.order.customer). Nepovinná hodnota. | String | - | - |
| validity | Výraz (SpEL - Spring Expression Language), který dobu platnosti. Výraz musí vracet string výraz, který dokáže vyhodnotit java.time.Duration#parse(CharSequence). V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu P365D (rok), PT15M (15minut) nebo P2DT3H4M (2dny,3hod a 4min). Nepovinná hodnota. Pokud není uvedeno aplikuje se default hodnota dle nastavení . | String | - | - |
Zkopírovat odkaz na sekcipercentageAdditions/addition
Seznam pravidel pro přidání procentuální částky kreditu.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| code | Unikátní kód pravidla, který se používá k identifikaci pravidla v rámci systému. Tento kód se eviduje u přidaného kreditu v atributu type (). | String | - | - |
| events/event | Seznam událostí, na které reaguje toto pravidlo. V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje. Pravidlo vyžaduje alespoň jednu událost. | List: events/event | - | - |
Zkopírovat odkaz na sekcievents/event
Seznam událostí, na které reaguje toto pravidlo.
V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje.
Pravidlo vyžaduje alespoň jednu událost.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| allocationId | Výraz (SpEL - Spring Expression Language), který identifikuje zdroj na základě, kterého byly kredity přiděleny. Příkladem může být číslo objednávky. Na základě této hodnoty je pak možné provést např. zrušení přiděleného kreditu v případě storna objednávky. Toto id se eviduje u přidaného kreditu v atributu source (. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.number. Povinná hodnota. | String | - | - |
| catalogCode | Výraz (SpEL - Spring Expression Language), který vyhodnocuje katalog, v rámci kterého bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| checkUnique | Výraz (SpEL - Spring Expression Language), který musí vracet true nebo false. Tato hodnota pak určuje, zda má probíhat kontrola duplicitního přidělení kreditu, tedy zda je možné přidělit kredit vícekrát pro stejné allocationId. Nepovinná hodnota. Pokud není uvedeno, kontrola se provádí. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu false. | String | - | - |
| constraint | Pravidlo schválí událost pokud vlastnosti této události splňují požadavky definované podmínky. Podmínka může obsahovat libovolný standardní operátor: and, or, not, eq, isTrue, isFalse atd. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: 1 and(2 eq(event.state.code,dispatched-order),3 isTrue(event.order.paid)4) Více na TOBEDONE #1948 odkaz na dokumentaci constraint. | String | - | - |
| currency | Výraz (SpEL - Spring Expression Language), který vyhodnocuje měnu, v rámci které bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| customer | Výraz (SpEL - Spring Expression Language), který vyhodnocuje zákazníka (jeho identifikátor), kterému bude kredit přidán/zrušen. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.user.login. Povinná hodnota. | String | - | - |
| eventName | Název aplikační události. Pokud název události odpovídá této hodnotě, aby mohla být podmínka splněna. Pokud není vyplněno, název události se nekontroluje. | String | - | - |
| expireAtEndOfDay | Výraz (SpEL - Spring Expression Language), který musí vracet true nebo false. Tato hodnota pak určuje, zda se má platnost kreditu (hodnota vypočtená v rámci výrazu validity) automaticky nastavit na konec dne. Nepovinná hodnota. Default hodnota je true. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu false. | String | - | - |
| expression | Výraz (SpEL - Spring Expression Language), který se pro danou událost vyhodnocuje. Podmínka je splněna pokud daný výraz vrací true. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: (event.state.code == 'dispatched-order') && (event.order.isPaid()). Nepovinný hodnota. | String | - | - |
| fromAmount | Výraz (SpEL - Spring Expression Language), který vrací částku, ze které se má vypočíst výše kreditu (java.math.BigDecimal), která se má zákazníkovi přidělit. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.totalPriceOfItemsToPay nebo 100. Povinná hodnota. | String | - | - |
| lang | Výraz (SpEL - Spring Expression Language), který vyhodnocuje jazyk v jakém se má nacházet případná zpráva. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.lang. Nepovinná hodnota. | String | - | - |
| message | Výraz (SpEL - Spring Expression Language), který vyhodnocuje zprávu pro zákazníka, která může být součástí notifikace. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Dále je možné pomocí klíčového slova texts přistupovat k metodám com.fg.mail.core.business.feature.applicator.processing.TextAccessor, který poskytuje lokalizované texty. Příklad výrazu texts.get('mail.credit.thanks', event.order.customer). Nepovinná hodnota. | String | - | - |
| percent | Výraz (SpEL - Spring Expression Language), který vrací procenta (java.math.BigDecimal) pro výpočet výše kreditu, která se má zákazníkovi přidělit. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu 10. Povinná hodnota. | String | - | - |
| rounding | Výraz (SpEL - Spring Expression Language), který vrací na kolik (int) desetinných míst se vypočtený kredit zaokrouhlit. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.rounding nebo 0. Nepovinná hodnota. Default je 0. | String | - | - |
| roundingMode | Výraz (SpEL - Spring Expression Language), který vrací způsob zaokrouhlení (přesněji jednu z hodnot java.math.RoundingMode). V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.roundingMode nebo T(java.math.RoundingMode).HALF_DOWN. Nepovinná hodnota. Default je java.math.RoundingMode#DOWN 'DOWN'. | String | - | - |
| validity | Výraz (SpEL - Spring Expression Language), který dobu platnosti. Výraz musí vracet string výraz, který dokáže vyhodnotit java.time.Duration#parse(CharSequence). V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu P365D (rok), PT15M (15minut) nebo P2DT3H4M (2dny,3hod a 4min). Nepovinná hodnota. Pokud není uvedeno aplikuje se default hodnota dle nastavení . | String | - | - |
Zkopírovat odkaz na sekcireverts/revert
Seznam pravidel pro zrušení přiděleného kreditu.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| code | Unikátní kód pravidla, který se používá k identifikaci pravidla v rámci systému. | String | - | - |
| events/event | Seznam událostí, na které reaguje toto pravidlo. V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje. Pravidlo vyžaduje alespoň jednu událost. | List: events/event | - | - |
Zkopírovat odkaz na sekcievents/event
Seznam událostí, na které reaguje toto pravidlo.
V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje.
Pravidlo vyžaduje alespoň jednu událost.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| allocationId | Výraz (SpEL - Spring Expression Language), který identifikuje zdroj na základě, kterého byly kredity přiděleny. Příkladem může být číslo objednávky. Na základě této hodnoty je pak možné provést např. zrušení přiděleného kreditu v případě storna objednávky. Toto id se eviduje u přidaného kreditu v atributu source (. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.number. Povinná hodnota. | String | - | - |
| catalogCode | Výraz (SpEL - Spring Expression Language), který vyhodnocuje katalog, v rámci kterého bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| constraint | Pravidlo schválí událost pokud vlastnosti této události splňují požadavky definované podmínky. Podmínka může obsahovat libovolný standardní operátor: and, or, not, eq, isTrue, isFalse atd. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: 1 and(2 eq(event.state.code,dispatched-order),3 isTrue(event.order.paid)4) Více na TOBEDONE #1948 odkaz na dokumentaci constraint. | String | - | - |
| currency | Výraz (SpEL - Spring Expression Language), který vyhodnocuje měnu, v rámci které bude s kredity manipulováno. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.order.catalogCode. Povinná hodnota. | String | - | - |
| customer | Výraz (SpEL - Spring Expression Language), který vyhodnocuje zákazníka (jeho identifikátor), kterému bude kredit přidán/zrušen. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu event.user.login. Povinná hodnota. | String | - | - |
| eventName | Název aplikační události. Pokud název události odpovídá této hodnotě, aby mohla být podmínka splněna. Pokud není vyplněno, název události se nekontroluje. | String | - | - |
| expression | Výraz (SpEL - Spring Expression Language), který se pro danou událost vyhodnocuje. Podmínka je splněna pokud daný výraz vrací true. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova event. Příklad výrazu pro událost, která poskytuje vlastnosti state a order, může vypadat následovně: (event.state.code == 'dispatched-order') && (event.order.isPaid()). Nepovinný hodnota. | String | - | - |
Zkopírovat odkaz na sekcicurrencies/currency
Specifická konfigurace pro konkrétní měny.
V případě, že je seznam prázdný, tak jsou kredity povoleny pro všechny měny. V opačném případě jsou kredity povoleny jen pro měny definované v tomto seznamu.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| code | Kód měny (ISO 4217 - 3 znaky), pro kterou má být tato konfigurace aplikována. Povinný atribut. | - | - | |
| minimalOrderAmount | Hodnota určuje minimální hodnota objednávky, pro kterou lze kredity uplatnit. V případě, že hodnota objednávky nižší, tak kredity nelze uplatnit. | BigDecimal | - | - |
Zkopírovat odkaz na sekciE-mail notifikace
V rámci tohoto rozšíření je možné odesílat notifikace o změně v kreditech.
Tyto notifikace se zapínají pomocí elementu <mailing>. Další nastavení mailingu je popsáno zde.
Příklad:
1 <credit>2 <mailing/>3</credit>