diff --git a/CHANGELOG.md b/CHANGELOG.md
index 86ecb860..90c7d8f0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,43 @@
+### v3.39.0 (2025-11-26)
+* * *
+
+### New Resources:
+* Einvoice has been added.
+* QuotedDeltaRamp has been added.
+
+### New Attributes:
+* line_items_next_offset has been added to CreditNote.
+* line_items_next_offset has been added to Invoice.
+* credit_lines has been added to SalesOrder.
+* billable_unit_price has been added to SalesOrder#LineItem.
+* billable_quantity has been added to SalesOrder#LineItem.
+* billable_amount has been added to SalesOrder#LineItem.
+
+### New Endpoint:
+* move has been added to ItemPrice.
+
+### New Parameters:
+* line_items_limit has been added to CreditNote#RetrieveRequest.
+* line_items_offset has been added to CreditNote#RetrieveRequest.
+* line_items_limit has been added to Invoice#RetrieveRequest.
+* line_items_offset has been added to Invoice#RetrieveRequest.
+* item_tiers has been added to Estimate#GiftSubscriptionForItemsRequest.
+* unit_price has been added to Estimate#SubscriptionItems#GiftSubscriptionForItemsRequest.
+* unit_price_in_decimal has been added to Estimate#SubscriptionItems#GiftSubscriptionForItemsRequest.
+* item_tiers has been added to Gift#CreateForItemsRequest.
+* meta_data has been added to Gift#CreateForItemsRequest.
+* unit_price has been added to Gift#SubscriptionItems#CreateForItemsRequest.
+* unit_price_in_decimal has been added to Gift#SubscriptionItems#CreateForItemsRequest.
+* item_tiers has been added to HostedPage#CheckoutGiftForItemsRequest.
+* unit_price has been added to HostedPage#SubscriptionItems#CheckoutGiftForItemsRequest.
+* unit_price_in_decimal has been added to HostedPage#SubscriptionItems#CheckoutGiftForItemsRequest.
+* auto_select_local_currency has been added to PricingPageSession#CreateForNewSubscriptionRequest.
+
+### New Enums:
+* EZIDEBIT has been added to GatewayEnum.
+* BUSINESS_RULE has been added to EntityTypeEnum.
+* RULESET has been added to EntityTypeEnum.
+
### v3.38.0 (2025-10-28)
* * *
diff --git a/pom.xml b/pom.xml
index fbae70c3..80c51303 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
com.chargebee
chargebee-java
- 3.38.0
+ 3.39.0
jar
diff --git a/src/main/java/com/chargebee/Environment.java b/src/main/java/com/chargebee/Environment.java
index 2e5dac1b..65357c65 100644
--- a/src/main/java/com/chargebee/Environment.java
+++ b/src/main/java/com/chargebee/Environment.java
@@ -38,7 +38,7 @@ public class Environment {
public static final String API_VERSION = "v2";
- public static final String LIBRARY_VERSION = "3.38.0";
+ public static final String LIBRARY_VERSION = "3.39.0";
private final String apiBaseUrl;
diff --git a/src/main/java/com/chargebee/internal/ResultBase.java b/src/main/java/com/chargebee/internal/ResultBase.java
index 3fe64305..182d957b 100644
--- a/src/main/java/com/chargebee/internal/ResultBase.java
+++ b/src/main/java/com/chargebee/internal/ResultBase.java
@@ -84,6 +84,10 @@ public PaymentSchedule paymentSchedule() {
return (PaymentSchedule)get("payment_schedule");
}
+ public Einvoice einvoice() {
+ return (Einvoice)get("einvoice");
+ }
+
public TaxWithheld taxWithheld() {
return (TaxWithheld)get("tax_withheld");
}
@@ -132,6 +136,10 @@ public QuotedRamp quotedRamp() {
return (QuotedRamp)get("quoted_ramp");
}
+ public QuotedDeltaRamp quotedDeltaRamp() {
+ return (QuotedDeltaRamp)get("quoted_delta_ramp");
+ }
+
public BillingConfiguration billingConfiguration() {
return (BillingConfiguration)get("billing_configuration");
}
diff --git a/src/main/java/com/chargebee/models/CreditNote.java b/src/main/java/com/chargebee/models/CreditNote.java
index 661649e6..89a781ef 100644
--- a/src/main/java/com/chargebee/models/CreditNote.java
+++ b/src/main/java/com/chargebee/models/CreditNote.java
@@ -806,6 +806,10 @@ public Channel channel() {
return optEnum("channel", Channel.class);
}
+ public String lineItemsNextOffset() {
+ return optString("line_items_next_offset");
+ }
+
public Long subTotal() {
return reqLong("sub_total");
}
@@ -1122,6 +1126,18 @@ public StringFilter lineItemCustomerId() {
}
+ public RetrieveRequest lineItemsLimit(Integer lineItemsLimit) {
+ params.addOpt("line_items_limit", lineItemsLimit);
+ return this;
+ }
+
+
+ public RetrieveRequest lineItemsOffset(String lineItemsOffset) {
+ params.addOpt("line_items_offset", lineItemsOffset);
+ return this;
+ }
+
+
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/Einvoice.java b/src/main/java/com/chargebee/models/Einvoice.java
new file mode 100644
index 00000000..f865dac3
--- /dev/null
+++ b/src/main/java/com/chargebee/models/Einvoice.java
@@ -0,0 +1,61 @@
+package com.chargebee.models;
+
+import com.chargebee.*;
+import com.chargebee.internal.*;
+import com.chargebee.filters.*;
+import com.chargebee.filters.enums.SortOrder;
+import com.chargebee.internal.HttpUtil.Method;
+import com.chargebee.models.enums.*;
+import org.json.*;
+import java.io.*;
+import java.sql.Timestamp;
+import java.util.*;
+
+public class Einvoice extends Resource {
+
+ public enum Status {
+ SCHEDULED,
+ SKIPPED,
+ IN_PROGRESS,
+ SUCCESS,
+ FAILED,
+ REGISTERED,
+ _UNKNOWN; /*Indicates unexpected value for this enum. You can get this when there is a
+ java-client version incompatibility. We suggest you to upgrade to the latest version */
+ }
+
+ //Constructors
+ //============
+
+ public Einvoice(String jsonStr) {
+ super(jsonStr);
+ }
+
+ public Einvoice(JSONObject jsonObj) {
+ super(jsonObj);
+ }
+
+ // Fields
+ //=======
+
+ public String id() {
+ return reqString("id");
+ }
+
+ public String referenceNumber() {
+ return optString("reference_number");
+ }
+
+ public Status status() {
+ return reqEnum("status", Status.class);
+ }
+
+ public String message() {
+ return optString("message");
+ }
+
+ // Operations
+ //===========
+
+
+}
diff --git a/src/main/java/com/chargebee/models/Estimate.java b/src/main/java/com/chargebee/models/Estimate.java
index 96059a3c..14c8490a 100644
--- a/src/main/java/com/chargebee/models/Estimate.java
+++ b/src/main/java/com/chargebee/models/Estimate.java
@@ -3126,6 +3126,42 @@ public GiftSubscriptionForItemsRequest subscriptionItemQuantityInDecimal(int ind
params.addOpt("subscription_items[quantity_in_decimal][" + index + "]", subscriptionItemQuantityInDecimal);
return this;
}
+ public GiftSubscriptionForItemsRequest subscriptionItemUnitPrice(int index, Long subscriptionItemUnitPrice) {
+ params.addOpt("subscription_items[unit_price][" + index + "]", subscriptionItemUnitPrice);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest subscriptionItemUnitPriceInDecimal(int index, String subscriptionItemUnitPriceInDecimal) {
+ params.addOpt("subscription_items[unit_price_in_decimal][" + index + "]", subscriptionItemUnitPriceInDecimal);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierItemPriceId(int index, String itemTierItemPriceId) {
+ params.addOpt("item_tiers[item_price_id][" + index + "]", itemTierItemPriceId);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierStartingUnit(int index, Integer itemTierStartingUnit) {
+ params.addOpt("item_tiers[starting_unit][" + index + "]", itemTierStartingUnit);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierEndingUnit(int index, Integer itemTierEndingUnit) {
+ params.addOpt("item_tiers[ending_unit][" + index + "]", itemTierEndingUnit);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierPrice(int index, Long itemTierPrice) {
+ params.addOpt("item_tiers[price][" + index + "]", itemTierPrice);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierStartingUnitInDecimal(int index, String itemTierStartingUnitInDecimal) {
+ params.addOpt("item_tiers[starting_unit_in_decimal][" + index + "]", itemTierStartingUnitInDecimal);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierEndingUnitInDecimal(int index, String itemTierEndingUnitInDecimal) {
+ params.addOpt("item_tiers[ending_unit_in_decimal][" + index + "]", itemTierEndingUnitInDecimal);
+ return this;
+ }
+ public GiftSubscriptionForItemsRequest itemTierPriceInDecimal(int index, String itemTierPriceInDecimal) {
+ params.addOpt("item_tiers[price_in_decimal][" + index + "]", itemTierPriceInDecimal);
+ return this;
+ }
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/Gift.java b/src/main/java/com/chargebee/models/Gift.java
index 38b0229b..0dc46716 100644
--- a/src/main/java/com/chargebee/models/Gift.java
+++ b/src/main/java/com/chargebee/models/Gift.java
@@ -447,6 +447,12 @@ public CreateForItemsRequest couponIds(String... couponIds) {
return this;
}
+ public CreateForItemsRequest metaData(JSONObject metaData) {
+ params.addOpt("meta_data", metaData);
+ return this;
+ }
+
+
public CreateForItemsRequest gifterCustomerId(String gifterCustomerId) {
params.add("gifter[customer_id]", gifterCustomerId);
return this;
@@ -605,6 +611,42 @@ public CreateForItemsRequest subscriptionItemQuantityInDecimal(int index, String
params.addOpt("subscription_items[quantity_in_decimal][" + index + "]", subscriptionItemQuantityInDecimal);
return this;
}
+ public CreateForItemsRequest subscriptionItemUnitPrice(int index, Long subscriptionItemUnitPrice) {
+ params.addOpt("subscription_items[unit_price][" + index + "]", subscriptionItemUnitPrice);
+ return this;
+ }
+ public CreateForItemsRequest subscriptionItemUnitPriceInDecimal(int index, String subscriptionItemUnitPriceInDecimal) {
+ params.addOpt("subscription_items[unit_price_in_decimal][" + index + "]", subscriptionItemUnitPriceInDecimal);
+ return this;
+ }
+ public CreateForItemsRequest itemTierItemPriceId(int index, String itemTierItemPriceId) {
+ params.addOpt("item_tiers[item_price_id][" + index + "]", itemTierItemPriceId);
+ return this;
+ }
+ public CreateForItemsRequest itemTierStartingUnit(int index, Integer itemTierStartingUnit) {
+ params.addOpt("item_tiers[starting_unit][" + index + "]", itemTierStartingUnit);
+ return this;
+ }
+ public CreateForItemsRequest itemTierEndingUnit(int index, Integer itemTierEndingUnit) {
+ params.addOpt("item_tiers[ending_unit][" + index + "]", itemTierEndingUnit);
+ return this;
+ }
+ public CreateForItemsRequest itemTierPrice(int index, Long itemTierPrice) {
+ params.addOpt("item_tiers[price][" + index + "]", itemTierPrice);
+ return this;
+ }
+ public CreateForItemsRequest itemTierStartingUnitInDecimal(int index, String itemTierStartingUnitInDecimal) {
+ params.addOpt("item_tiers[starting_unit_in_decimal][" + index + "]", itemTierStartingUnitInDecimal);
+ return this;
+ }
+ public CreateForItemsRequest itemTierEndingUnitInDecimal(int index, String itemTierEndingUnitInDecimal) {
+ params.addOpt("item_tiers[ending_unit_in_decimal][" + index + "]", itemTierEndingUnitInDecimal);
+ return this;
+ }
+ public CreateForItemsRequest itemTierPriceInDecimal(int index, String itemTierPriceInDecimal) {
+ params.addOpt("item_tiers[price_in_decimal][" + index + "]", itemTierPriceInDecimal);
+ return this;
+ }
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/HostedPage.java b/src/main/java/com/chargebee/models/HostedPage.java
index 5235c02d..df6c6f14 100644
--- a/src/main/java/com/chargebee/models/HostedPage.java
+++ b/src/main/java/com/chargebee/models/HostedPage.java
@@ -3053,6 +3053,42 @@ public CheckoutGiftForItemsRequest subscriptionItemQuantityInDecimal(int index,
params.addOpt("subscription_items[quantity_in_decimal][" + index + "]", subscriptionItemQuantityInDecimal);
return this;
}
+ public CheckoutGiftForItemsRequest subscriptionItemUnitPrice(int index, Long subscriptionItemUnitPrice) {
+ params.addOpt("subscription_items[unit_price][" + index + "]", subscriptionItemUnitPrice);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest subscriptionItemUnitPriceInDecimal(int index, String subscriptionItemUnitPriceInDecimal) {
+ params.addOpt("subscription_items[unit_price_in_decimal][" + index + "]", subscriptionItemUnitPriceInDecimal);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierItemPriceId(int index, String itemTierItemPriceId) {
+ params.addOpt("item_tiers[item_price_id][" + index + "]", itemTierItemPriceId);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierStartingUnit(int index, Integer itemTierStartingUnit) {
+ params.addOpt("item_tiers[starting_unit][" + index + "]", itemTierStartingUnit);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierEndingUnit(int index, Integer itemTierEndingUnit) {
+ params.addOpt("item_tiers[ending_unit][" + index + "]", itemTierEndingUnit);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierPrice(int index, Long itemTierPrice) {
+ params.addOpt("item_tiers[price][" + index + "]", itemTierPrice);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierStartingUnitInDecimal(int index, String itemTierStartingUnitInDecimal) {
+ params.addOpt("item_tiers[starting_unit_in_decimal][" + index + "]", itemTierStartingUnitInDecimal);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierEndingUnitInDecimal(int index, String itemTierEndingUnitInDecimal) {
+ params.addOpt("item_tiers[ending_unit_in_decimal][" + index + "]", itemTierEndingUnitInDecimal);
+ return this;
+ }
+ public CheckoutGiftForItemsRequest itemTierPriceInDecimal(int index, String itemTierPriceInDecimal) {
+ params.addOpt("item_tiers[price_in_decimal][" + index + "]", itemTierPriceInDecimal);
+ return this;
+ }
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/Invoice.java b/src/main/java/com/chargebee/models/Invoice.java
index 034b51b4..f683b00b 100644
--- a/src/main/java/com/chargebee/models/Invoice.java
+++ b/src/main/java/com/chargebee/models/Invoice.java
@@ -1086,6 +1086,10 @@ public Timestamp updatedAt() {
return optTimestamp("updated_at");
}
+ public String lineItemsNextOffset() {
+ return optString("line_items_next_offset");
+ }
+
public Boolean firstInvoice() {
return optBoolean("first_invoice");
}
@@ -3851,6 +3855,18 @@ public StringFilter lineItemCustomerId() {
}
+ public RetrieveRequest lineItemsLimit(Integer lineItemsLimit) {
+ params.addOpt("line_items_limit", lineItemsLimit);
+ return this;
+ }
+
+
+ public RetrieveRequest lineItemsOffset(String lineItemsOffset) {
+ params.addOpt("line_items_offset", lineItemsOffset);
+ return this;
+ }
+
+
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/ItemPrice.java b/src/main/java/com/chargebee/models/ItemPrice.java
index e6e85b44..3ceb4f10 100644
--- a/src/main/java/com/chargebee/models/ItemPrice.java
+++ b/src/main/java/com/chargebee/models/ItemPrice.java
@@ -418,6 +418,12 @@ public static ItemPriceFindApplicableItemPricesRequest findApplicableItemPrices(
return new ItemPriceFindApplicableItemPricesRequest(uri);
}
+ @Deprecated
+ public static MoveItemPriceRequest moveItemPrice(String id) {
+ String uri = uri("item_prices", nullCheck(id), "move");
+ return new MoveItemPriceRequest(Method.POST, uri);
+ }
+
// Operation Request Classes
//==========================
@@ -1151,6 +1157,24 @@ public ItemPriceFindApplicableItemPricesRequest sortByUpdatedAt(SortOrder order)
}
+ @Override
+ public Params params() {
+ return params;
+ }
+ }
+
+ public static class MoveItemPriceRequest extends Request {
+
+ private MoveItemPriceRequest(Method httpMeth, String uri) {
+ super(httpMeth, uri);
+ }
+
+ public MoveItemPriceRequest destinationItemId(String destinationItemId) {
+ params.add("destination_item_id", destinationItemId);
+ return this;
+ }
+
+
@Override
public Params params() {
return params;
diff --git a/src/main/java/com/chargebee/models/PricingPageSession.java b/src/main/java/com/chargebee/models/PricingPageSession.java
index 47219344..4194ecc0 100644
--- a/src/main/java/com/chargebee/models/PricingPageSession.java
+++ b/src/main/java/com/chargebee/models/PricingPageSession.java
@@ -78,6 +78,12 @@ public CreateForNewSubscriptionRequest businessEntityId(String businessEntityId)
}
+ public CreateForNewSubscriptionRequest autoSelectLocalCurrency(Boolean autoSelectLocalCurrency) {
+ params.addOpt("auto_select_local_currency", autoSelectLocalCurrency);
+ return this;
+ }
+
+
public CreateForNewSubscriptionRequest pricingPageId(String pricingPageId) {
params.add("pricing_page[id]", pricingPageId);
return this;
diff --git a/src/main/java/com/chargebee/models/QuotedDeltaRamp.java b/src/main/java/com/chargebee/models/QuotedDeltaRamp.java
new file mode 100644
index 00000000..1b0ffa37
--- /dev/null
+++ b/src/main/java/com/chargebee/models/QuotedDeltaRamp.java
@@ -0,0 +1,49 @@
+package com.chargebee.models;
+
+import com.chargebee.*;
+import com.chargebee.internal.*;
+import com.chargebee.filters.*;
+import com.chargebee.filters.enums.SortOrder;
+import com.chargebee.internal.HttpUtil.Method;
+import com.chargebee.models.enums.*;
+import org.json.*;
+import java.io.*;
+import java.sql.Timestamp;
+import java.util.*;
+
+public class QuotedDeltaRamp extends Resource {
+
+ public static class LineItem extends Resource {
+ public LineItem(JSONObject jsonObj) {
+ super(jsonObj);
+ }
+
+ public String itemLevelDiscountPerBillingCycleInDecimal() {
+ return optString("item_level_discount_per_billing_cycle_in_decimal");
+ }
+
+ }
+
+ //Constructors
+ //============
+
+ public QuotedDeltaRamp(String jsonStr) {
+ super(jsonStr);
+ }
+
+ public QuotedDeltaRamp(JSONObject jsonObj) {
+ super(jsonObj);
+ }
+
+ // Fields
+ //=======
+
+ public List lineItems() {
+ return optList("line_items", QuotedDeltaRamp.LineItem.class);
+ }
+
+ // Operations
+ //===========
+
+
+}
diff --git a/src/main/java/com/chargebee/models/enums/EntityType.java b/src/main/java/com/chargebee/models/enums/EntityType.java
index 70fa7446..437b3aa0 100644
--- a/src/main/java/com/chargebee/models/enums/EntityType.java
+++ b/src/main/java/com/chargebee/models/enums/EntityType.java
@@ -39,6 +39,8 @@ public enum EntityType {
OMNICHANNEL_ONE_TIME_ORDER,
OMNICHANNEL_ONE_TIME_ORDER_ITEM,
USAGE_FILE,
+ BUSINESS_RULE,
+ RULESET,
_UNKNOWN; /*Indicates unexpected value for this enum. You can get this when there is a
java-client version incompatibility. We suggest you to upgrade to the latest version */
}
\ No newline at end of file
diff --git a/src/main/java/com/chargebee/models/enums/Gateway.java b/src/main/java/com/chargebee/models/enums/Gateway.java
index 68ddcb42..b78fd66f 100644
--- a/src/main/java/com/chargebee/models/enums/Gateway.java
+++ b/src/main/java/com/chargebee/models/enums/Gateway.java
@@ -55,6 +55,7 @@ public enum Gateway {
PAYSTACK,
JP_MORGAN,
DEUTSCHE_BANK,
+ EZIDEBIT,
GOCARDLESS,
NOT_APPLICABLE,
_UNKNOWN; /*Indicates unexpected value for this enum. You can get this when there is a