commit 2180124d9d1531b07d169a6e9a2a40cfc4d57638
parent 9caae42ac4cd9f54653947daacd74c405ce3060f
Author: Florian Dold <florian@dold.me>
Date: Sun, 9 Aug 2026 16:23:23 +0200
prices_are_net is optional
Diffstat:
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/packages/taler-util/src/types-taler-merchant.ts b/packages/taler-util/src/types-taler-merchant.ts
@@ -4294,7 +4294,7 @@ export interface ProductSold {
prices?: AmountString[];
// Whether prices are net prices. Since protocol **vTAXES**.
- prices_are_net: boolean;
+ prices_are_net?: boolean;
// An optional base64-encoded product image.
image?: ImageDataUrl;
@@ -5141,7 +5141,7 @@ export const codecForProductSold = (): Codec<ProductSold> =>
.property("unit", codecOptional(codecForString()))
.property("price", codecOptional(codecForAmountString()))
.property("prices", codecOptional(codecForList(codecForAmountString())))
- .property("prices_are_net", codecForBoolean())
+ .property("prices_are_net", codecOptional(codecForBoolean()))
.property("image", codecOptional(codecForString()))
.property("taxes", codecOptional(codecForList(codecForTax())))
.property("delivery_date", codecOptional(codecForTimestamp))
diff --git a/packages/taler-util/src/types.test.ts b/packages/taler-util/src/types.test.ts
@@ -44,7 +44,6 @@ test("contract terms validation", (t) => {
unit_quantity: "0.25",
unit: "kg",
prices: ["EUR:2.5", "USD:3"],
- prices_are_net: false,
},
],
refund_deadline: { t_s: 42 },
@@ -56,7 +55,6 @@ test("contract terms validation", (t) => {
const decoded = codecForMerchantContractTerms().decode(c);
assert.strictEqual(decoded.products?.[0]?.unit_quantity, "0.25");
assert.deepStrictEqual(decoded.products?.[0]?.prices, ["EUR:2.5", "USD:3"]);
- assert.strictEqual(decoded.products?.[0]?.prices_are_net, false);
const c1 = JSON.parse(JSON.stringify(c));
c1.pay_deadline = "foo";