diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 0f2cebec..2b2164bc 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -12,9 +12,9 @@ jobs: jdk: ['8', '11', '17'] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up JDK ${{ matrix.jdk }} - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: ${{ matrix.jdk }} diff --git a/CHANGELOG.md b/CHANGELOG.md index d58a5341..dbd46941 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,59 @@ +### v3.36.0 (2025-08-19) +* * * + +### New Resources: +* WebhookEndpoints has been added. +* OmnichannelOneTimeOrder has been added. +* OmnichannelOneTimeOrderItem has been added. + +### New Attributes: +* business_entity_id has been added to Comment. +* business_entity_id has been added to PromotionalCredit. +* quantity has been added to Discount. +* business_entity_id has been added to PromotionalCredit. +* coupon_applicability_mappings[] has been added to QuotedCharge. +* linked_omnichannel_one_time_orders[] has been added to RecordedPurchase. +* quantity has been added to Subscripiton#Discount. + +### New Input Parameters: +* transaction[id] has been added to Customer#RecordExcessPaymentRequest. +* discounts[quantity][] has been added to Estimate#CreateSubItemEstimateRequest. +* consolidate_entitlements has been added to CustomerEntitlement#EntitlementsForCustomer. +* discounts[quantity][] has been added to Estimate#CreateSubItemEstimateRequest. +* discounts[quantity][] has been added to Estimate#CreateSubItemForCustomerEstimateRequest. +* discounts[quantity][] has been added to Estimate#UpdateSubscriptionForItemsRequest. +* discounts[quantity][] has been added to Estimate#CreateInvoiceForItemsRequest. +* discounts[quantity][] has been added to HostedPage#CheckoutOneTimeForItemsRequest. +* discounts[quantity][] has been added to HostedPage#CheckoutNewForItemsRequest. +* discounts[quantity][] has been added to HostedPage#CheckoutExistingForItemsRequest. +* discounts[quantity][] has been added to PricingPageSession#CreateForNewSubscriptionRequest. +* discounts[quantity][] has been added to PricingPageSession#CreateForExistingSubscriptionRequest. +* discounts[quantity][] has been added to Purchase#CreateRequest. +* discounts[quantity][] has been added to Purchase#EstimateRequest. +* discounts[quantity][] has been added to Quote#CreateSubItemsForCustomerQuoteRequest. +* discounts[quantity][] has been added to Quote#EditCreateSubCustomerQuoteForItemsRequest. +* discounts[quantity][] has been added to Quote#UpdateSubscriptionQuoteForItemsRequest. +* discounts[quantity][] has been added to Quote#EditUpdateSubscriptionQuoteForItemsRequest. +* discounts[quantity][] has been added to Quote#CreateForChargeItemsAndChargesRequest. +* discounts[quantity][] has been added to Quote#EditForChargeItemsAndChargesRequest. +* discounts[quantity][] has been added to Subscription#CreateWithItemsRequest. +* discounts[quantity][] has been added to Subscription#UpdateForItemsRequest. +* discounts[quantity][] has been added to Subscription#ImportForItemsRequest. +* google_play_store[product_id] has been added to RecordedPurchase#CreateRequest. +* google_play_store[order_id] has been added to RecordedPurchase#CreateRequest. + +### New Enums +* PAUSE has been added to OmnichannelSubscriptionItemScheduledChange#ChangeType. +* OFFER_QUANTITY has been added to Discount#Type. +* OFFER_QUANTITY has been added to Subscription#Discount#Type. +* OMNICHANNEL_ONE_TIME_ORDER has been added to EntityType. +* OMNICHANNEL_ONE_TIME_ORDER_ITEM has been added to EntityType. +* USAGE_FILE has been added to EntityType. +* OMNICHANNEL_ONE_TIME_ORDER_CREATED has been added to EventType. +* OMNICHANNEL_ONE_TIME_ORDER_ITEM_CANCELLED has been added to EventType. +* USAGE_FILE_INGESTED has been added to EventType. +* OMNICHANNEL_SUBSCRIPTION_ITEM_PAUSE_SCHEDULED has been added to EventType. + ### v3.35.0 (2025-07-18) * * * diff --git a/pom.xml b/pom.xml index f94212bb..3f9f677b 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.chargebee chargebee-java - 3.35.0 + 3.36.0 jar diff --git a/src/main/java/com/chargebee/Environment.java b/src/main/java/com/chargebee/Environment.java index 7940c7ff..8e17092b 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.35.0"; + public static final String LIBRARY_VERSION = "3.36.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 ebf7c59d..a2fabeda 100644 --- a/src/main/java/com/chargebee/internal/ResultBase.java +++ b/src/main/java/com/chargebee/internal/ResultBase.java @@ -328,6 +328,14 @@ public RecordedPurchase recordedPurchase() { return (RecordedPurchase)get("recorded_purchase"); } + public OmnichannelOneTimeOrder omnichannelOneTimeOrder() { + return (OmnichannelOneTimeOrder)get("omnichannel_one_time_order"); + } + + public OmnichannelOneTimeOrderItem omnichannelOneTimeOrderItem() { + return (OmnichannelOneTimeOrderItem)get("omnichannel_one_time_order_item"); + } + public Rule rule() { return (Rule)get("rule"); } @@ -348,6 +356,22 @@ public Brand brand() { return (Brand)get("brand"); } + public WebhookEndpoint webhookEndpoint() { + return (WebhookEndpoint)get("webhook_endpoint"); + } + + public ImpactedCustomer impactedCustomer() { + return (ImpactedCustomer)get("impacted_customer"); + } + + public SubscriptionEntitlementsUpdatedDetail subscriptionEntitlementsUpdatedDetail() { + return (SubscriptionEntitlementsUpdatedDetail)get("subscription_entitlements_updated_detail"); + } + + public SubscriptionEntitlementsCreatedDetail subscriptionEntitlementsCreatedDetail() { + return (SubscriptionEntitlementsCreatedDetail)get("subscription_entitlements_created_detail"); + } + public List advanceInvoiceSchedules() { return (List) getList("advance_invoice_schedules", "advance_invoice_schedule"); } diff --git a/src/main/java/com/chargebee/models/Comment.java b/src/main/java/com/chargebee/models/Comment.java index 74a82fa8..2d3a67fc 100644 --- a/src/main/java/com/chargebee/models/Comment.java +++ b/src/main/java/com/chargebee/models/Comment.java @@ -62,6 +62,10 @@ public String entityId() { return reqString("entity_id"); } + public String businessEntityId() { + return optString("business_entity_id"); + } + // Operations //=========== diff --git a/src/main/java/com/chargebee/models/CreditNote.java b/src/main/java/com/chargebee/models/CreditNote.java index cca30e1a..39e40e85 100644 --- a/src/main/java/com/chargebee/models/CreditNote.java +++ b/src/main/java/com/chargebee/models/CreditNote.java @@ -48,35 +48,6 @@ public enum Status { java-client version incompatibility. We suggest you to upgrade to the latest version */ } - public static 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 */ - } - - public Einvoice(JSONObject jsonObj) { - super(jsonObj); - } - - 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"); - } - - } - public static class LineItem extends Resource { public enum EntityType { ADHOC,PLAN_ITEM_PRICE,ADDON_ITEM_PRICE,CHARGE_ITEM_PRICE,PLAN_SETUP,PLAN,ADDON, @@ -190,82 +161,6 @@ public String customerId() { } - public static class Discount extends Resource { - public enum EntityType { - ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, - _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 */ - } - - public enum DiscountType { - FIXED_AMOUNT,PERCENTAGE, - _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 */ - } - - public Discount(JSONObject jsonObj) { - super(jsonObj); - } - - public Long amount() { - return reqLong("amount"); - } - - public String description() { - return optString("description"); - } - - public EntityType entityType() { - return reqEnum("entity_type", EntityType.class); - } - - public DiscountType discountType() { - return optEnum("discount_type", DiscountType.class); - } - - public String entityId() { - return optString("entity_id"); - } - - public String couponSetCode() { - return optString("coupon_set_code"); - } - - } - - public static class LineItemDiscount extends Resource { - public enum DiscountType { - ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, - _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 */ - } - - public LineItemDiscount(JSONObject jsonObj) { - super(jsonObj); - } - - public String lineItemId() { - return reqString("line_item_id"); - } - - public DiscountType discountType() { - return reqEnum("discount_type", DiscountType.class); - } - - public String couponId() { - return optString("coupon_id"); - } - - public String entityId() { - return optString("entity_id"); - } - - public Long discountAmount() { - return reqLong("discount_amount"); - } - - } - public static class LineItemTier extends Resource { public enum PricingType { PER_UNIT,FLAT_FEE,PACKAGE, @@ -323,21 +218,35 @@ public Integer packageSize() { } - public static class Tax extends Resource { - public Tax(JSONObject jsonObj) { + public static class LineItemDiscount extends Resource { + public enum DiscountType { + ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, + _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 */ + } + + public LineItemDiscount(JSONObject jsonObj) { super(jsonObj); } - public String name() { - return reqString("name"); + public String lineItemId() { + return reqString("line_item_id"); } - public Long amount() { - return reqLong("amount"); + public DiscountType discountType() { + return reqEnum("discount_type", DiscountType.class); } - public String description() { - return optString("description"); + public String couponId() { + return optString("coupon_id"); + } + + public String entityId() { + return optString("entity_id"); + } + + public Long discountAmount() { + return reqLong("discount_amount"); } } @@ -409,6 +318,150 @@ public String localCurrencyCode() { } + public static class LineItemAddress extends Resource { + public LineItemAddress(JSONObject jsonObj) { + super(jsonObj); + } + + public String lineItemId() { + return optString("line_item_id"); + } + + public String firstName() { + return optString("first_name"); + } + + public String lastName() { + return optString("last_name"); + } + + public String email() { + return optString("email"); + } + + public String company() { + return optString("company"); + } + + public String phone() { + return optString("phone"); + } + + public String line1() { + return optString("line1"); + } + + public String line2() { + return optString("line2"); + } + + public String line3() { + return optString("line3"); + } + + public String city() { + return optString("city"); + } + + public String stateCode() { + return optString("state_code"); + } + + public String state() { + return optString("state"); + } + + public String country() { + return optString("country"); + } + + public String zip() { + return optString("zip"); + } + + public ValidationStatus validationStatus() { + return optEnum("validation_status", ValidationStatus.class); + } + + } + + public static class Discount extends Resource { + public enum EntityType { + ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, + _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 */ + } + + public enum DiscountType { + FIXED_AMOUNT,PERCENTAGE, + _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 */ + } + + public Discount(JSONObject jsonObj) { + super(jsonObj); + } + + public Long amount() { + return reqLong("amount"); + } + + public String description() { + return optString("description"); + } + + public EntityType entityType() { + return reqEnum("entity_type", EntityType.class); + } + + public DiscountType discountType() { + return optEnum("discount_type", DiscountType.class); + } + + public String entityId() { + return optString("entity_id"); + } + + public String couponSetCode() { + return optString("coupon_set_code"); + } + + } + + public static class Tax extends Resource { + public Tax(JSONObject jsonObj) { + super(jsonObj); + } + + public String name() { + return reqString("name"); + } + + public Long amount() { + return reqLong("amount"); + } + + public String description() { + return optString("description"); + } + + } + + public static class TaxOrigin extends Resource { + public TaxOrigin(JSONObject jsonObj) { + super(jsonObj); + } + + public String country() { + return optString("country"); + } + + public String registrationNumber() { + return optString("registration_number"); + } + + } + public static class LinkedRefund extends Resource { public LinkedRefund(JSONObject jsonObj) { super(jsonObj); @@ -611,99 +664,46 @@ public ValidationStatus validationStatus() { } - public static class SiteDetailsAtCreation extends Resource { - public SiteDetailsAtCreation(JSONObject jsonObj) { - super(jsonObj); + public static 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 */ } - public String timezone() { - return optString("timezone"); + public Einvoice(JSONObject jsonObj) { + super(jsonObj); } - public JSONObject organizationAddress() { - return optJSONObject("organization_address"); + public String id() { + return reqString("id"); } - } - - public static class TaxOrigin extends Resource { - public TaxOrigin(JSONObject jsonObj) { - super(jsonObj); + public String referenceNumber() { + return optString("reference_number"); } - public String country() { - return optString("country"); + public Status status() { + return reqEnum("status", Status.class); } - public String registrationNumber() { - return optString("registration_number"); + public String message() { + return optString("message"); } } - public static class LineItemAddress extends Resource { - public LineItemAddress(JSONObject jsonObj) { + public static class SiteDetailsAtCreation extends Resource { + public SiteDetailsAtCreation(JSONObject jsonObj) { super(jsonObj); } - public String lineItemId() { - return optString("line_item_id"); - } - - public String firstName() { - return optString("first_name"); - } - - public String lastName() { - return optString("last_name"); - } - - public String email() { - return optString("email"); - } - - public String company() { - return optString("company"); - } - - public String phone() { - return optString("phone"); - } - - public String line1() { - return optString("line1"); - } - - public String line2() { - return optString("line2"); - } - - public String line3() { - return optString("line3"); - } - - public String city() { - return optString("city"); - } - - public String stateCode() { - return optString("state_code"); - } - - public String state() { - return optString("state"); - } - - public String country() { - return optString("country"); - } - - public String zip() { - return optString("zip"); + public String timezone() { + return optString("timezone"); } - public ValidationStatus validationStatus() { - return optEnum("validation_status", ValidationStatus.class); + public JSONObject organizationAddress() { + return optJSONObject("organization_address"); } } @@ -806,10 +806,6 @@ public Channel channel() { return optEnum("channel", Channel.class); } - public CreditNote.Einvoice einvoice() { - return optSubResource("einvoice", CreditNote.Einvoice.class); - } - public Long subTotal() { return reqLong("sub_total"); } @@ -838,24 +834,32 @@ public List lineItems() { return optList("line_items", CreditNote.LineItem.class); } - public List discounts() { - return optList("discounts", CreditNote.Discount.class); + public List lineItemTiers() { + return optList("line_item_tiers", CreditNote.LineItemTier.class); } public List lineItemDiscounts() { return optList("line_item_discounts", CreditNote.LineItemDiscount.class); } - public List lineItemTiers() { - return optList("line_item_tiers", CreditNote.LineItemTier.class); + public List lineItemTaxes() { + return optList("line_item_taxes", CreditNote.LineItemTax.class); + } + + public List lineItemAddresses() { + return optList("line_item_addresses", CreditNote.LineItemAddress.class); + } + + public List discounts() { + return optList("discounts", CreditNote.Discount.class); } public List taxes() { return optList("taxes", CreditNote.Tax.class); } - public List lineItemTaxes() { - return optList("line_item_taxes", CreditNote.LineItemTax.class); + public CreditNote.TaxOrigin taxOrigin() { + return optSubResource("tax_origin", CreditNote.TaxOrigin.class); } public List linkedRefunds() { @@ -898,16 +902,12 @@ public CreditNote.BillingAddress billingAddress() { return optSubResource("billing_address", CreditNote.BillingAddress.class); } - public CreditNote.SiteDetailsAtCreation siteDetailsAtCreation() { - return optSubResource("site_details_at_creation", CreditNote.SiteDetailsAtCreation.class); - } - - public CreditNote.TaxOrigin taxOrigin() { - return optSubResource("tax_origin", CreditNote.TaxOrigin.class); + public CreditNote.Einvoice einvoice() { + return optSubResource("einvoice", CreditNote.Einvoice.class); } - public List lineItemAddresses() { - return optList("line_item_addresses", CreditNote.LineItemAddress.class); + public CreditNote.SiteDetailsAtCreation siteDetailsAtCreation() { + return optSubResource("site_details_at_creation", CreditNote.SiteDetailsAtCreation.class); } // Operations @@ -1194,6 +1194,11 @@ public RecordRefundRequest comment(String comment) { } + public RecordRefundRequest transactionId(String transactionId) { + params.addOpt("transaction[id]", transactionId); + return this; + } + public RecordRefundRequest transactionAmount(Long transactionAmount) { params.addOpt("transaction[amount]", transactionAmount); return this; @@ -1748,6 +1753,10 @@ public ImportCreditNoteRequest allocationAllocatedAt(int index, Timestamp alloca params.add("allocations[allocated_at][" + index + "]", allocationAllocatedAt); return this; } + public ImportCreditNoteRequest linkedRefundId(int index, String linkedRefundId) { + params.addOpt("linked_refunds[id][" + index + "]", linkedRefundId); + return this; + } public ImportCreditNoteRequest linkedRefundAmount(int index, Long linkedRefundAmount) { params.add("linked_refunds[amount][" + index + "]", linkedRefundAmount); return this; diff --git a/src/main/java/com/chargebee/models/Customer.java b/src/main/java/com/chargebee/models/Customer.java index 8f6fea30..755fb027 100644 --- a/src/main/java/com/chargebee/models/Customer.java +++ b/src/main/java/com/chargebee/models/Customer.java @@ -2184,6 +2184,11 @@ public RecordExcessPaymentRequest comment(String comment) { } + public RecordExcessPaymentRequest transactionId(String transactionId) { + params.addOpt("transaction[id]", transactionId); + return this; + } + public RecordExcessPaymentRequest transactionAmount(Long transactionAmount) { params.add("transaction[amount]", transactionAmount); return this; diff --git a/src/main/java/com/chargebee/models/CustomerEntitlement.java b/src/main/java/com/chargebee/models/CustomerEntitlement.java index 1d376c87..359207a6 100644 --- a/src/main/java/com/chargebee/models/CustomerEntitlement.java +++ b/src/main/java/com/chargebee/models/CustomerEntitlement.java @@ -54,10 +54,31 @@ public Boolean isEnabled() { // Operations //=========== - public static ListRequest entitlementsForCustomer(String id) { + public static CustomerEntitlementEntitlementsForCustomerRequest entitlementsForCustomer(String id) { String uri = uri("customers", nullCheck(id), "customer_entitlements"); - return new ListRequest(uri); + return new CustomerEntitlementEntitlementsForCustomerRequest(uri); } + // Operation Request Classes + //========================== + + public static class CustomerEntitlementEntitlementsForCustomerRequest extends ListRequest { + + private CustomerEntitlementEntitlementsForCustomerRequest(String uri) { + super(uri); + } + + public CustomerEntitlementEntitlementsForCustomerRequest consolidateEntitlements(Boolean consolidateEntitlements) { + params.addOpt("consolidate_entitlements", consolidateEntitlements); + return this; + } + + + @Override + public Params params() { + return params; + } + } + } diff --git a/src/main/java/com/chargebee/models/Discount.java b/src/main/java/com/chargebee/models/Discount.java index d1cefd59..7702baf5 100644 --- a/src/main/java/com/chargebee/models/Discount.java +++ b/src/main/java/com/chargebee/models/Discount.java @@ -16,6 +16,7 @@ public class Discount extends Resource { public enum Type { FIXED_AMOUNT, PERCENTAGE, + OFFER_QUANTITY, _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 */ } @@ -54,6 +55,10 @@ public Long amount() { return optLong("amount"); } + public Integer quantity() { + return optInteger("quantity"); + } + public String currencyCode() { return optString("currency_code"); } diff --git a/src/main/java/com/chargebee/models/Estimate.java b/src/main/java/com/chargebee/models/Estimate.java index 62935900..9e4fdea8 100644 --- a/src/main/java/com/chargebee/models/Estimate.java +++ b/src/main/java/com/chargebee/models/Estimate.java @@ -842,6 +842,10 @@ public CreateSubItemEstimateRequest discountItemPriceId(int index, String discou params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public CreateSubItemEstimateRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CreateSubItemEstimateRequest subscriptionItemChargeOnOption(int index, com.chargebee.models.enums.ChargeOnOption subscriptionItemChargeOnOption) { params.addOpt("subscription_items[charge_on_option][" + index + "]", subscriptionItemChargeOnOption); return this; @@ -1438,6 +1442,10 @@ public CreateSubItemForCustomerEstimateRequest discountItemPriceId(int index, St params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public CreateSubItemForCustomerEstimateRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CreateSubItemForCustomerEstimateRequest subscriptionItemChargeOnOption(int index, com.chargebee.models.enums.ChargeOnOption subscriptionItemChargeOnOption) { params.addOpt("subscription_items[charge_on_option][" + index + "]", subscriptionItemChargeOnOption); return this; @@ -2229,6 +2237,10 @@ public UpdateSubscriptionForItemsRequest discountItemPriceId(int index, String d params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public UpdateSubscriptionForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public UpdateSubscriptionForItemsRequest discountOperationType(int index, com.chargebee.models.enums.OperationType discountOperationType) { params.add("discounts[operation_type][" + index + "]", discountOperationType); return this; @@ -3688,6 +3700,10 @@ public CreateInvoiceForItemsRequest discountAmount(int index, Long discountAmoun params.addOpt("discounts[amount][" + index + "]", discountAmount); return this; } + public CreateInvoiceForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CreateInvoiceForItemsRequest discountApplyOn(int index, com.chargebee.models.enums.ApplyOn discountApplyOn) { params.add("discounts[apply_on][" + index + "]", discountApplyOn); return this; diff --git a/src/main/java/com/chargebee/models/HostedPage.java b/src/main/java/com/chargebee/models/HostedPage.java index f990b643..a6ce21e5 100644 --- a/src/main/java/com/chargebee/models/HostedPage.java +++ b/src/main/java/com/chargebee/models/HostedPage.java @@ -1468,6 +1468,10 @@ public CheckoutOneTimeForItemsRequest discountAmount(int index, Long discountAmo params.addOpt("discounts[amount][" + index + "]", discountAmount); return this; } + public CheckoutOneTimeForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CheckoutOneTimeForItemsRequest discountApplyOn(int index, com.chargebee.models.enums.ApplyOn discountApplyOn) { params.add("discounts[apply_on][" + index + "]", discountApplyOn); return this; @@ -1936,6 +1940,10 @@ public CheckoutNewForItemsRequest discountItemPriceId(int index, String discount params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public CheckoutNewForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CheckoutNewForItemsRequest subscriptionItemChargeOnOption(int index, com.chargebee.models.enums.ChargeOnOption subscriptionItemChargeOnOption) { params.addOpt("subscription_items[charge_on_option][" + index + "]", subscriptionItemChargeOnOption); return this; @@ -2582,6 +2590,10 @@ public CheckoutExistingForItemsRequest discountItemPriceId(int index, String dis params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public CheckoutExistingForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CheckoutExistingForItemsRequest discountOperationType(int index, com.chargebee.models.enums.OperationType discountOperationType) { params.add("discounts[operation_type][" + index + "]", discountOperationType); return this; diff --git a/src/main/java/com/chargebee/models/ImpactedCustomer.java b/src/main/java/com/chargebee/models/ImpactedCustomer.java new file mode 100644 index 00000000..3b8c80ce --- /dev/null +++ b/src/main/java/com/chargebee/models/ImpactedCustomer.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 ImpactedCustomer extends Resource { + + public static class Download extends Resource { + public Download(JSONObject jsonObj) { + super(jsonObj); + } + + public String downloadUrl() { + return reqString("download_url"); + } + + public Timestamp validTill() { + return reqTimestamp("valid_till"); + } + + public String mimeType() { + return optString("mime_type"); + } + + } + + //Constructors + //============ + + public ImpactedCustomer(String jsonStr) { + super(jsonStr); + } + + public ImpactedCustomer(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String actionType() { + return optString("action_type"); + } + + public ImpactedCustomer.Download download() { + return optSubResource("download", ImpactedCustomer.Download.class); + } + + // Operations + //=========== + + +} diff --git a/src/main/java/com/chargebee/models/Invoice.java b/src/main/java/com/chargebee/models/Invoice.java index a08b1489..9b768123 100644 --- a/src/main/java/com/chargebee/models/Invoice.java +++ b/src/main/java/com/chargebee/models/Invoice.java @@ -147,45 +147,59 @@ public String customerId() { } - public static class Discount extends Resource { - public enum EntityType { - ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, + public static class LineItemTier extends Resource { + public enum PricingType { + PER_UNIT,FLAT_FEE,PACKAGE, _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 */ } - public enum DiscountType { - FIXED_AMOUNT,PERCENTAGE, - _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 */ + public LineItemTier(JSONObject jsonObj) { + super(jsonObj); } - public Discount(JSONObject jsonObj) { - super(jsonObj); + public String lineItemId() { + return optString("line_item_id"); } - public Long amount() { - return reqLong("amount"); + public Integer startingUnit() { + return reqInteger("starting_unit"); } - public String description() { - return optString("description"); + public Integer endingUnit() { + return optInteger("ending_unit"); } - public EntityType entityType() { - return reqEnum("entity_type", EntityType.class); + public Integer quantityUsed() { + return reqInteger("quantity_used"); } - public DiscountType discountType() { - return optEnum("discount_type", DiscountType.class); + public Long unitAmount() { + return reqLong("unit_amount"); } - public String entityId() { - return optString("entity_id"); + public String startingUnitInDecimal() { + return optString("starting_unit_in_decimal"); } - public String couponSetCode() { - return optString("coupon_set_code"); + public String endingUnitInDecimal() { + return optString("ending_unit_in_decimal"); + } + + public String quantityUsedInDecimal() { + return optString("quantity_used_in_decimal"); + } + + public String unitAmountInDecimal() { + return optString("unit_amount_in_decimal"); + } + + public PricingType pricingType() { + return optEnum("pricing_type", PricingType.class); + } + + public Integer packageSize() { + return optInteger("package_size"); } } @@ -223,25 +237,6 @@ public Long discountAmount() { } - public static class Tax extends Resource { - public Tax(JSONObject jsonObj) { - super(jsonObj); - } - - public String name() { - return reqString("name"); - } - - public Long amount() { - return reqLong("amount"); - } - - public String description() { - return optString("description"); - } - - } - public static class LineItemTax extends Resource { public LineItemTax(JSONObject jsonObj) { super(jsonObj); @@ -328,59 +323,146 @@ public String lineItemId() { } - public static class LineItemTier extends Resource { - public enum PricingType { - PER_UNIT,FLAT_FEE,PACKAGE, + public static class LineItemAddress extends Resource { + public LineItemAddress(JSONObject jsonObj) { + super(jsonObj); + } + + public String lineItemId() { + return optString("line_item_id"); + } + + public String firstName() { + return optString("first_name"); + } + + public String lastName() { + return optString("last_name"); + } + + public String email() { + return optString("email"); + } + + public String company() { + return optString("company"); + } + + public String phone() { + return optString("phone"); + } + + public String line1() { + return optString("line1"); + } + + public String line2() { + return optString("line2"); + } + + public String line3() { + return optString("line3"); + } + + public String city() { + return optString("city"); + } + + public String stateCode() { + return optString("state_code"); + } + + public String state() { + return optString("state"); + } + + public String country() { + return optString("country"); + } + + public String zip() { + return optString("zip"); + } + + public ValidationStatus validationStatus() { + return optEnum("validation_status", ValidationStatus.class); + } + + } + + public static class Discount extends Resource { + public enum EntityType { + ITEM_LEVEL_COUPON,DOCUMENT_LEVEL_COUPON,PROMOTIONAL_CREDITS,PRORATED_CREDITS,ITEM_LEVEL_DISCOUNT,DOCUMENT_LEVEL_DISCOUNT, _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 */ } - public LineItemTier(JSONObject jsonObj) { + public enum DiscountType { + FIXED_AMOUNT,PERCENTAGE, + _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 */ + } + + public Discount(JSONObject jsonObj) { super(jsonObj); } - public String lineItemId() { - return optString("line_item_id"); + public Long amount() { + return reqLong("amount"); } - public Integer startingUnit() { - return reqInteger("starting_unit"); + public String description() { + return optString("description"); } - public Integer endingUnit() { - return optInteger("ending_unit"); + public EntityType entityType() { + return reqEnum("entity_type", EntityType.class); } - public Integer quantityUsed() { - return reqInteger("quantity_used"); + public DiscountType discountType() { + return optEnum("discount_type", DiscountType.class); } - public Long unitAmount() { - return reqLong("unit_amount"); + public String entityId() { + return optString("entity_id"); } - public String startingUnitInDecimal() { - return optString("starting_unit_in_decimal"); + public String couponSetCode() { + return optString("coupon_set_code"); } - public String endingUnitInDecimal() { - return optString("ending_unit_in_decimal"); + } + + public static class Tax extends Resource { + public Tax(JSONObject jsonObj) { + super(jsonObj); } - public String quantityUsedInDecimal() { - return optString("quantity_used_in_decimal"); + public String name() { + return reqString("name"); } - public String unitAmountInDecimal() { - return optString("unit_amount_in_decimal"); + public Long amount() { + return reqLong("amount"); } - public PricingType pricingType() { - return optEnum("pricing_type", PricingType.class); + public String description() { + return optString("description"); } - public Integer packageSize() { - return optInteger("package_size"); + } + + public static class TaxOrigin extends Resource { + public TaxOrigin(JSONObject jsonObj) { + super(jsonObj); + } + + public String country() { + return optString("country"); + } + + public String registrationNumber() { + return optString("registration_number"); } } @@ -697,21 +779,6 @@ public Integer index() { } - public static class StatementDescriptor extends Resource { - public StatementDescriptor(JSONObject jsonObj) { - super(jsonObj); - } - - public String id() { - return reqString("id"); - } - - public String descriptor() { - return optString("descriptor"); - } - - } - public static class BillingAddress extends Resource { public BillingAddress(JSONObject jsonObj) { super(jsonObj); @@ -775,6 +842,21 @@ public ValidationStatus validationStatus() { } + public static class StatementDescriptor extends Resource { + public StatementDescriptor(JSONObject jsonObj) { + super(jsonObj); + } + + public String id() { + return reqString("id"); + } + + public String descriptor() { + return optString("descriptor"); + } + + } + public static class Einvoice extends Resource { public enum Status { SCHEDULED,SKIPPED,IN_PROGRESS,SUCCESS,FAILED,REGISTERED, @@ -819,88 +901,6 @@ public JSONObject organizationAddress() { } - public static class TaxOrigin extends Resource { - public TaxOrigin(JSONObject jsonObj) { - super(jsonObj); - } - - public String country() { - return optString("country"); - } - - public String registrationNumber() { - return optString("registration_number"); - } - - } - - public static class LineItemAddress extends Resource { - public LineItemAddress(JSONObject jsonObj) { - super(jsonObj); - } - - public String lineItemId() { - return optString("line_item_id"); - } - - public String firstName() { - return optString("first_name"); - } - - public String lastName() { - return optString("last_name"); - } - - public String email() { - return optString("email"); - } - - public String company() { - return optString("company"); - } - - public String phone() { - return optString("phone"); - } - - public String line1() { - return optString("line1"); - } - - public String line2() { - return optString("line2"); - } - - public String line3() { - return optString("line3"); - } - - public String city() { - return optString("city"); - } - - public String stateCode() { - return optString("state_code"); - } - - public String state() { - return optString("state"); - } - - public String country() { - return optString("country"); - } - - public String zip() { - return optString("zip"); - } - - public ValidationStatus validationStatus() { - return optEnum("validation_status", ValidationStatus.class); - } - - } - //Constructors //============ @@ -919,14 +919,14 @@ public String id() { return reqString("id"); } - public String poNumber() { - return optString("po_number"); - } - public String customerId() { return reqString("customer_id"); } + public String paymentOwner() { + return optString("payment_owner"); + } + public String subscriptionId() { return optString("subscription_id"); } @@ -939,14 +939,6 @@ public Status status() { return reqEnum("status", Status.class); } - public String vatNumber() { - return optString("vat_number"); - } - - public PriceType priceType() { - return reqEnum("price_type", PriceType.class); - } - public Timestamp date() { return optTimestamp("date"); } @@ -959,42 +951,78 @@ public Integer netTermDays() { return optInteger("net_term_days"); } + public String poNumber() { + return optString("po_number"); + } + + public String vatNumber() { + return optString("vat_number"); + } + + public PriceType priceType() { + return reqEnum("price_type", PriceType.class); + } + public BigDecimal exchangeRate() { return optBigDecimal("exchange_rate"); } + public BigDecimal localCurrencyExchangeRate() { + return optBigDecimal("local_currency_exchange_rate"); + } + public String currencyCode() { return reqString("currency_code"); } - public Long total() { - return optLong("total"); + public String localCurrencyCode() { + return optString("local_currency_code"); } - public Long amountPaid() { - return optLong("amount_paid"); + public Long tax() { + return reqLong("tax"); } - public Long amountAdjusted() { - return optLong("amount_adjusted"); + public Long subTotal() { + return reqLong("sub_total"); } - public Long writeOffAmount() { - return optLong("write_off_amount"); + public Long subTotalInLocalCurrency() { + return optLong("sub_total_in_local_currency"); } - public Long creditsApplied() { - return optLong("credits_applied"); + public Long total() { + return optLong("total"); + } + + public Long totalInLocalCurrency() { + return optLong("total_in_local_currency"); } public Long amountDue() { return optLong("amount_due"); } + public Long amountAdjusted() { + return optLong("amount_adjusted"); + } + + public Long amountPaid() { + return optLong("amount_paid"); + } + public Timestamp paidAt() { return optTimestamp("paid_at"); } + public Long writeOffAmount() { + return optLong("write_off_amount"); + } + + public Long creditsApplied() { + return optLong("credits_applied"); + } + public DunningStatus dunningStatus() { return optEnum("dunning_status", DunningStatus.class); } @@ -1015,30 +1043,6 @@ public Timestamp updatedAt() { return optTimestamp("updated_at"); } - public Long subTotal() { - return reqLong("sub_total"); - } - - public Long subTotalInLocalCurrency() { - return optLong("sub_total_in_local_currency"); - } - - public Long totalInLocalCurrency() { - return optLong("total_in_local_currency"); - } - - public String localCurrencyCode() { - return optString("local_currency_code"); - } - - public Long tax() { - return reqLong("tax"); - } - - public BigDecimal localCurrencyExchangeRate() { - return optBigDecimal("local_currency_exchange_rate"); - } - public Boolean firstInvoice() { return optBoolean("first_invoice"); } @@ -1079,18 +1083,14 @@ public List lineItems() { return optList("line_items", Invoice.LineItem.class); } - public List discounts() { - return optList("discounts", Invoice.Discount.class); + public List lineItemTiers() { + return optList("line_item_tiers", Invoice.LineItemTier.class); } public List lineItemDiscounts() { return optList("line_item_discounts", Invoice.LineItemDiscount.class); } - public List taxes() { - return optList("taxes", Invoice.Tax.class); - } - public List lineItemTaxes() { return optList("line_item_taxes", Invoice.LineItemTax.class); } @@ -1099,8 +1099,20 @@ public List lineItemCredits() { return optList("line_item_credits", Invoice.LineItemCredit.class); } - public List lineItemTiers() { - return optList("line_item_tiers", Invoice.LineItemTier.class); + public List lineItemAddresses() { + return optList("line_item_addresses", Invoice.LineItemAddress.class); + } + + public List discounts() { + return optList("discounts", Invoice.Discount.class); + } + + public List taxes() { + return optList("taxes", Invoice.Tax.class); + } + + public Invoice.TaxOrigin taxOrigin() { + return optSubResource("tax_origin", Invoice.TaxOrigin.class); } public List linkedPayments() { @@ -1135,20 +1147,16 @@ public Invoice.ShippingAddress shippingAddress() { return optSubResource("shipping_address", Invoice.ShippingAddress.class); } - public Invoice.StatementDescriptor statementDescriptor() { - return optSubResource("statement_descriptor", Invoice.StatementDescriptor.class); - } - public Invoice.BillingAddress billingAddress() { return optSubResource("billing_address", Invoice.BillingAddress.class); } - public Invoice.Einvoice einvoice() { - return optSubResource("einvoice", Invoice.Einvoice.class); + public Invoice.StatementDescriptor statementDescriptor() { + return optSubResource("statement_descriptor", Invoice.StatementDescriptor.class); } - public String paymentOwner() { - return optString("payment_owner"); + public Invoice.Einvoice einvoice() { + return optSubResource("einvoice", Invoice.Einvoice.class); } public String voidReasonCode() { @@ -1179,14 +1187,6 @@ public Invoice.SiteDetailsAtCreation siteDetailsAtCreation() { return optSubResource("site_details_at_creation", Invoice.SiteDetailsAtCreation.class); } - public Invoice.TaxOrigin taxOrigin() { - return optSubResource("tax_origin", Invoice.TaxOrigin.class); - } - - public List lineItemAddresses() { - return optList("line_item_addresses", Invoice.LineItemAddress.class); - } - // Operations //=========== @@ -2521,6 +2521,10 @@ public CreateForChargeItemsAndChargesRequest discountAmount(int index, Long disc params.addOpt("discounts[amount][" + index + "]", discountAmount); return this; } + public CreateForChargeItemsAndChargesRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CreateForChargeItemsAndChargesRequest discountApplyOn(int index, com.chargebee.models.enums.ApplyOn discountApplyOn) { params.add("discounts[apply_on][" + index + "]", discountApplyOn); return this; @@ -3481,6 +3485,10 @@ public ImportInvoiceRequest taxJurisCode(int index, String taxJurisCode) { params.addOpt("taxes[juris_code][" + index + "]", taxJurisCode); return this; } + public ImportInvoiceRequest paymentId(int index, String paymentId) { + params.addOpt("payments[id][" + index + "]", paymentId); + return this; + } public ImportInvoiceRequest paymentAmount(int index, Long paymentAmount) { params.add("payments[amount][" + index + "]", paymentAmount); return this; diff --git a/src/main/java/com/chargebee/models/OmnichannelOneTimeOrder.java b/src/main/java/com/chargebee/models/OmnichannelOneTimeOrder.java new file mode 100644 index 00000000..3e14f42b --- /dev/null +++ b/src/main/java/com/chargebee/models/OmnichannelOneTimeOrder.java @@ -0,0 +1,169 @@ +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 OmnichannelOneTimeOrder extends Resource { + + public enum Source { + APPLE_APP_STORE, + GOOGLE_PLAY_STORE, + _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 */ + } + + public static class OmnichannelTransaction extends Resource { + public enum Type { + PURCHASE,RENEWAL, + _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 */ + } + + public OmnichannelTransaction(JSONObject jsonObj) { + super(jsonObj); + } + + public String id() { + return reqString("id"); + } + + public String idAtSource() { + return reqString("id_at_source"); + } + + public String appId() { + return reqString("app_id"); + } + + public String priceCurrency() { + return optString("price_currency"); + } + + public Long priceUnits() { + return optLong("price_units"); + } + + public Long priceNanos() { + return optLong("price_nanos"); + } + + public Type type() { + return reqEnum("type", Type.class); + } + + public Timestamp transactedAt() { + return optTimestamp("transacted_at"); + } + + public Timestamp createdAt() { + return reqTimestamp("created_at"); + } + + public Long resourceVersion() { + return optLong("resource_version"); + } + + } + + //Constructors + //============ + + public OmnichannelOneTimeOrder(String jsonStr) { + super(jsonStr); + } + + public OmnichannelOneTimeOrder(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String id() { + return reqString("id"); + } + + public String appId() { + return reqString("app_id"); + } + + public String customerId() { + return optString("customer_id"); + } + + public String idAtSource() { + return reqString("id_at_source"); + } + + public String origin() { + return optString("origin"); + } + + public Source source() { + return reqEnum("source", Source.class); + } + + public Timestamp createdAt() { + return reqTimestamp("created_at"); + } + + public Long resourceVersion() { + return optLong("resource_version"); + } + + public List omnichannelOneTimeOrderItems() { + return reqList("omnichannel_one_time_order_items", OmnichannelOneTimeOrderItem.class); + } + + public OmnichannelOneTimeOrder.OmnichannelTransaction purchaseTransaction() { + return optSubResource("purchase_transaction", OmnichannelOneTimeOrder.OmnichannelTransaction.class); + } + + // Operations + //=========== + + public static Request retrieve(String id) { + String uri = uri("omnichannel_one_time_orders", nullCheck(id)); + return new Request(Method.GET, uri); + } + + public static OmnichannelOneTimeOrderListRequest list() { + String uri = uri("omnichannel_one_time_orders"); + return new OmnichannelOneTimeOrderListRequest(uri); + } + + + // Operation Request Classes + //========================== + + public static class OmnichannelOneTimeOrderListRequest extends ListRequest { + + private OmnichannelOneTimeOrderListRequest(String uri) { + super(uri); + } + + public EnumFilter source() { + return new EnumFilter("source",this); + } + + + public StringFilter customerId() { + return new StringFilter("customer_id",this); + } + + + @Override + public Params params() { + return params; + } + } + +} diff --git a/src/main/java/com/chargebee/models/OmnichannelOneTimeOrderItem.java b/src/main/java/com/chargebee/models/OmnichannelOneTimeOrderItem.java new file mode 100644 index 00000000..721b03c6 --- /dev/null +++ b/src/main/java/com/chargebee/models/OmnichannelOneTimeOrderItem.java @@ -0,0 +1,76 @@ +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 OmnichannelOneTimeOrderItem extends Resource { + + public enum CancellationReason { + CUSTOMER_CANCELLED, + CUSTOMER_DID_NOT_CONSENT_TO_PRICE_INCREASE, + REFUNDED_DUE_TO_APP_ISSUE, + REFUNDED_FOR_OTHER_REASON, + MERCHANT_REVOKED, + _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 OmnichannelOneTimeOrderItem(String jsonStr) { + super(jsonStr); + } + + public OmnichannelOneTimeOrderItem(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String id() { + return reqString("id"); + } + + public String itemIdAtSource() { + return reqString("item_id_at_source"); + } + + public String itemTypeAtSource() { + return optString("item_type_at_source"); + } + + public Integer quantity() { + return optInteger("quantity"); + } + + public Timestamp cancelledAt() { + return optTimestamp("cancelled_at"); + } + + public CancellationReason cancellationReason() { + return optEnum("cancellation_reason", CancellationReason.class); + } + + public Timestamp createdAt() { + return reqTimestamp("created_at"); + } + + public Long resourceVersion() { + return optLong("resource_version"); + } + + // Operations + //=========== + + +} diff --git a/src/main/java/com/chargebee/models/OmnichannelSubscriptionItemScheduledChange.java b/src/main/java/com/chargebee/models/OmnichannelSubscriptionItemScheduledChange.java index c2923e4b..31250888 100644 --- a/src/main/java/com/chargebee/models/OmnichannelSubscriptionItemScheduledChange.java +++ b/src/main/java/com/chargebee/models/OmnichannelSubscriptionItemScheduledChange.java @@ -15,6 +15,7 @@ public class OmnichannelSubscriptionItemScheduledChange extends Resource { + public CouponApplicabilityMapping(JSONObject jsonObj) { + super(jsonObj); + } + + public String couponId() { + return optString("coupon_id"); + } + + public List applicableItemPriceIds() { + return optList("applicable_item_price_ids", String.class); + } + + } + //Constructors //============ @@ -212,6 +227,10 @@ public List coupons() { return optList("coupons", QuotedCharge.Coupon.class); } + public List couponApplicabilityMappings() { + return optList("coupon_applicability_mappings", QuotedCharge.CouponApplicabilityMapping.class); + } + // Operations //=========== diff --git a/src/main/java/com/chargebee/models/RecordedPurchase.java b/src/main/java/com/chargebee/models/RecordedPurchase.java index 1f4b35b3..a1c002cf 100644 --- a/src/main/java/com/chargebee/models/RecordedPurchase.java +++ b/src/main/java/com/chargebee/models/RecordedPurchase.java @@ -40,6 +40,17 @@ public String omnichannelSubscriptionId() { } + public static class LinkedOmnichannelOneTimeOrder extends Resource { + public LinkedOmnichannelOneTimeOrder(JSONObject jsonObj) { + super(jsonObj); + } + + public String omnichannelOneTimeOrderId() { + return optString("omnichannel_one_time_order_id"); + } + + } + public static class ErrorDetail extends Resource { public ErrorDetail(JSONObject jsonObj) { super(jsonObj); @@ -101,6 +112,10 @@ public List linkedOmnichannelSub return optList("linked_omnichannel_subscriptions", RecordedPurchase.LinkedOmnichannelSubscription.class); } + public List linkedOmnichannelOneTimeOrders() { + return optList("linked_omnichannel_one_time_orders", RecordedPurchase.LinkedOmnichannelOneTimeOrder.class); + } + public RecordedPurchase.ErrorDetail errorDetail() { return optSubResource("error_detail", RecordedPurchase.ErrorDetail.class); } @@ -159,6 +174,16 @@ public CreateRequest googlePlayStorePurchaseToken(String googlePlayStorePurchase return this; } + public CreateRequest googlePlayStoreProductId(String googlePlayStoreProductId) { + params.addOpt("google_play_store[product_id]", googlePlayStoreProductId); + return this; + } + + public CreateRequest googlePlayStoreOrderId(String googlePlayStoreOrderId) { + params.addOpt("google_play_store[order_id]", googlePlayStoreOrderId); + return this; + } + public CreateRequest omnichannelSubscriptionId(String omnichannelSubscriptionId) { params.addOpt("omnichannel_subscription[id]", omnichannelSubscriptionId); return this; diff --git a/src/main/java/com/chargebee/models/Subscription.java b/src/main/java/com/chargebee/models/Subscription.java index 7c5b798d..c1feae90 100644 --- a/src/main/java/com/chargebee/models/Subscription.java +++ b/src/main/java/com/chargebee/models/Subscription.java @@ -587,7 +587,7 @@ public Integer remainingBillingCycles() { public static class Discount extends Resource { public enum Type { - FIXED_AMOUNT,PERCENTAGE, + FIXED_AMOUNT,PERCENTAGE,OFFER_QUANTITY, _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 */ } @@ -628,6 +628,10 @@ public Long amount() { return optLong("amount"); } + public Integer quantity() { + return optInteger("quantity"); + } + public String currencyCode() { return optString("currency_code"); } @@ -2853,6 +2857,10 @@ public CreateWithItemsRequest discountItemPriceId(int index, String discountItem params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public CreateWithItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public CreateWithItemsRequest subscriptionItemChargeOnOption(int index, com.chargebee.models.enums.ChargeOnOption subscriptionItemChargeOnOption) { params.addOpt("subscription_items[charge_on_option][" + index + "]", subscriptionItemChargeOnOption); return this; @@ -4489,6 +4497,10 @@ public UpdateForItemsRequest discountItemPriceId(int index, String discountItemP params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public UpdateForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public UpdateForItemsRequest discountOperationType(int index, com.chargebee.models.enums.OperationType discountOperationType) { params.add("discounts[operation_type][" + index + "]", discountOperationType); return this; @@ -6629,6 +6641,10 @@ public ImportForItemsRequest discountItemPriceId(int index, String discountItemP params.addOpt("discounts[item_price_id][" + index + "]", discountItemPriceId); return this; } + public ImportForItemsRequest discountQuantity(int index, Integer discountQuantity) { + params.addOpt("discounts[quantity][" + index + "]", discountQuantity); + return this; + } public ImportForItemsRequest chargedItemItemPriceId(int index, String chargedItemItemPriceId) { params.addOpt("charged_items[item_price_id][" + index + "]", chargedItemItemPriceId); return this; diff --git a/src/main/java/com/chargebee/models/SubscriptionEntitlementsCreatedDetail.java b/src/main/java/com/chargebee/models/SubscriptionEntitlementsCreatedDetail.java new file mode 100644 index 00000000..48e13a35 --- /dev/null +++ b/src/main/java/com/chargebee/models/SubscriptionEntitlementsCreatedDetail.java @@ -0,0 +1,42 @@ +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 SubscriptionEntitlementsCreatedDetail extends Resource { + + //Constructors + //============ + + public SubscriptionEntitlementsCreatedDetail(String jsonStr) { + super(jsonStr); + } + + public SubscriptionEntitlementsCreatedDetail(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String subscriptionId() { + return optString("subscription_id"); + } + + public Boolean hasNext() { + return reqBoolean("has_next"); + } + + // Operations + //=========== + + +} diff --git a/src/main/java/com/chargebee/models/SubscriptionEntitlementsUpdatedDetail.java b/src/main/java/com/chargebee/models/SubscriptionEntitlementsUpdatedDetail.java new file mode 100644 index 00000000..e9b88b6f --- /dev/null +++ b/src/main/java/com/chargebee/models/SubscriptionEntitlementsUpdatedDetail.java @@ -0,0 +1,42 @@ +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 SubscriptionEntitlementsUpdatedDetail extends Resource { + + //Constructors + //============ + + public SubscriptionEntitlementsUpdatedDetail(String jsonStr) { + super(jsonStr); + } + + public SubscriptionEntitlementsUpdatedDetail(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String subscriptionId() { + return optString("subscription_id"); + } + + public Boolean hasNext() { + return reqBoolean("has_next"); + } + + // Operations + //=========== + + +} diff --git a/src/main/java/com/chargebee/models/UsageFile.java b/src/main/java/com/chargebee/models/UsageFile.java index 264a94c5..c59a7ec8 100644 --- a/src/main/java/com/chargebee/models/UsageFile.java +++ b/src/main/java/com/chargebee/models/UsageFile.java @@ -115,13 +115,13 @@ public UsageFile.UploadDetail uploadDetails() { // Operations //=========== - public static UploadRequest upload() { - String uri = uri("usage_files", "upload"); - return new UploadRequest(Method.POST, uri).setIdempotency(false); + public static UploadUrlRequest uploadUrl() { + String uri = uri("usage_files", "upload_url"); + return new UploadUrlRequest(Method.POST, uri).setIdempotency(false); } - public static Request status(String id) { - String uri = uri("usage_files", nullCheck(id), "status"); + public static Request processingStatus(String id) { + String uri = uri("usage_files", nullCheck(id), "processing_status"); return new Request(Method.GET, uri); } @@ -129,19 +129,19 @@ public static Request status(String id) { // Operation Request Classes //========================== - public static class UploadRequest extends Request { + public static class UploadUrlRequest extends Request { - private UploadRequest(Method httpMeth, String uri) { + private UploadUrlRequest(Method httpMeth, String uri) { super(httpMeth, uri, null, "file-ingest"); } - public UploadRequest fileName(String fileName) { + public UploadUrlRequest fileName(String fileName) { params.add("file_name", fileName); return this; } - public UploadRequest mimeType(String mimeType) { + public UploadUrlRequest mimeType(String mimeType) { params.add("mime_type", mimeType); return this; } diff --git a/src/main/java/com/chargebee/models/WebhookEndpoint.java b/src/main/java/com/chargebee/models/WebhookEndpoint.java new file mode 100644 index 00000000..8c96d9a4 --- /dev/null +++ b/src/main/java/com/chargebee/models/WebhookEndpoint.java @@ -0,0 +1,243 @@ +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 WebhookEndpoint extends Resource { + + public enum ApiVersion { + V1, + V2, + _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 WebhookEndpoint(String jsonStr) { + super(jsonStr); + } + + public WebhookEndpoint(JSONObject jsonObj) { + super(jsonObj); + } + + // Fields + //======= + + public String id() { + return reqString("id"); + } + + public String name() { + return reqString("name"); + } + + public String url() { + return reqString("url"); + } + + public Boolean sendCardResource() { + return optBoolean("send_card_resource"); + } + + public Boolean disabled() { + return reqBoolean("disabled"); + } + + public Boolean primaryUrl() { + return reqBoolean("primary_url"); + } + + public ApiVersion apiVersion() { + return reqEnum("api_version", ApiVersion.class); + } + + public ChargebeeResponseSchemaType chargebeeResponseSchemaType() { + return optEnum("chargebee_response_schema_type", ChargebeeResponseSchemaType.class); + } + + public List enabledEvents() { + return optList("enabled_events", com.chargebee.models.enums.EventType.class); + } + + // Operations + //=========== + + public static CreateRequest create() { + String uri = uri("webhook_endpoints"); + return new CreateRequest(Method.POST, uri); + } + + public static UpdateRequest update(String id) { + String uri = uri("webhook_endpoints", nullCheck(id)); + return new UpdateRequest(Method.POST, uri); + } + + public static Request retrieve(String id) { + String uri = uri("webhook_endpoints", nullCheck(id)); + return new Request(Method.GET, uri); + } + + public static Request delete(String id) { + String uri = uri("webhook_endpoints", nullCheck(id), "delete"); + return new Request(Method.POST, uri); + } + + public static ListRequest list() { + String uri = uri("webhook_endpoints"); + return new ListRequest(uri); + } + + + // Operation Request Classes + //========================== + + public static class CreateRequest extends Request { + + private CreateRequest(Method httpMeth, String uri) { + super(httpMeth, uri); + } + + public CreateRequest name(String name) { + params.add("name", name); + return this; + } + + + public CreateRequest apiVersion(WebhookEndpoint.ApiVersion apiVersion) { + params.addOpt("api_version", apiVersion); + return this; + } + + + public CreateRequest url(String url) { + params.add("url", url); + return this; + } + + + public CreateRequest primaryUrl(Boolean primaryUrl) { + params.addOpt("primary_url", primaryUrl); + return this; + } + + + public CreateRequest disabled(Boolean disabled) { + params.addOpt("disabled", disabled); + return this; + } + + + public CreateRequest basicAuthPassword(String basicAuthPassword) { + params.addOpt("basic_auth_password", basicAuthPassword); + return this; + } + + + public CreateRequest basicAuthUsername(String basicAuthUsername) { + params.addOpt("basic_auth_username", basicAuthUsername); + return this; + } + + + public CreateRequest sendCardResource(Boolean sendCardResource) { + params.addOpt("send_card_resource", sendCardResource); + return this; + } + + + public CreateRequest chargebeeResponseSchemaType(com.chargebee.models.enums.ChargebeeResponseSchemaType chargebeeResponseSchemaType) { + params.addOpt("chargebee_response_schema_type", chargebeeResponseSchemaType); + return this; + } + + + public CreateRequest enabledEvents(List enabledEvents) { + params.addOpt("enabled_events", enabledEvents); + return this; + } + + + @Override + public Params params() { + return params; + } + } + + public static class UpdateRequest extends Request { + + private UpdateRequest(Method httpMeth, String uri) { + super(httpMeth, uri); + } + + public UpdateRequest name(String name) { + params.addOpt("name", name); + return this; + } + + + public UpdateRequest apiVersion(WebhookEndpoint.ApiVersion apiVersion) { + params.addOpt("api_version", apiVersion); + return this; + } + + + public UpdateRequest url(String url) { + params.addOpt("url", url); + return this; + } + + + public UpdateRequest primaryUrl(Boolean primaryUrl) { + params.addOpt("primary_url", primaryUrl); + return this; + } + + + public UpdateRequest sendCardResource(Boolean sendCardResource) { + params.addOpt("send_card_resource", sendCardResource); + return this; + } + + + public UpdateRequest basicAuthPassword(String basicAuthPassword) { + params.addOpt("basic_auth_password", basicAuthPassword); + return this; + } + + + public UpdateRequest basicAuthUsername(String basicAuthUsername) { + params.addOpt("basic_auth_username", basicAuthUsername); + return this; + } + + + public UpdateRequest disabled(Boolean disabled) { + params.addOpt("disabled", disabled); + return this; + } + + + public UpdateRequest enabledEvents(List enabledEvents) { + params.addOpt("enabled_events", enabledEvents); + return this; + } + + + @Override + public Params params() { + return params; + } + } + +} diff --git a/src/main/java/com/chargebee/models/enums/EntityType.java b/src/main/java/com/chargebee/models/enums/EntityType.java index 9a5d464e..70fa7446 100644 --- a/src/main/java/com/chargebee/models/enums/EntityType.java +++ b/src/main/java/com/chargebee/models/enums/EntityType.java @@ -36,6 +36,9 @@ public enum EntityType { RECORDED_PURCHASE, OMNICHANNEL_SUBSCRIPTION_ITEM_SCHEDULED_CHANGE, SALES_ORDER, + OMNICHANNEL_ONE_TIME_ORDER, + OMNICHANNEL_ONE_TIME_ORDER_ITEM, + USAGE_FILE, _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/EventType.java b/src/main/java/com/chargebee/models/enums/EventType.java index ef780aa4..8ab6f116 100644 --- a/src/main/java/com/chargebee/models/enums/EventType.java +++ b/src/main/java/com/chargebee/models/enums/EventType.java @@ -221,6 +221,10 @@ public enum EventType { OMNICHANNEL_SUBSCRIPTION_ITEM_CHANGED, OMNICHANNEL_SUBSCRIPTION_ITEM_PAUSED, OMNICHANNEL_SUBSCRIPTION_ITEM_RESUMED, + OMNICHANNEL_ONE_TIME_ORDER_CREATED, + OMNICHANNEL_ONE_TIME_ORDER_ITEM_CANCELLED, + USAGE_FILE_INGESTED, + OMNICHANNEL_SUBSCRIPTION_ITEM_PAUSE_SCHEDULED, PLAN_CREATED, PLAN_UPDATED, PLAN_DELETED,