Class CustomerUpdateParams.Builder

  • Enclosing class:
    CustomerUpdateParams

    public static class CustomerUpdateParams.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • build

        public CustomerUpdateParams build()
        Finalize and obtain parameter instance from this builder.
      • setBalance

        public CustomerUpdateParams.Builder setBalance​(java.lang.Long balance)
        An integer amount in %s that represents the customer's current balance, which affect the customer's future invoices. A negative amount represents a credit that decreases the amount due on an invoice; a positive amount increases the amount due on an invoice.
      • setDefaultSource

        public CustomerUpdateParams.Builder setDefaultSource​(java.lang.String defaultSource)
        If you are using payment methods created via the PaymentMethods API, see the invoice_settings.default_payment_method parameter.

        Provide the ID of a payment source already attached to this customer to make it this customer's default payment source.

        If you want to add a new payment source and make it the default, see the source property.

      • setDefaultSource

        public CustomerUpdateParams.Builder setDefaultSource​(EmptyParam defaultSource)
        If you are using payment methods created via the PaymentMethods API, see the invoice_settings.default_payment_method parameter.

        Provide the ID of a payment source already attached to this customer to make it this customer's default payment source.

        If you want to add a new payment source and make it the default, see the source property.

      • setDescription

        public CustomerUpdateParams.Builder setDescription​(java.lang.String description)
        An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard.
      • setDescription

        public CustomerUpdateParams.Builder setDescription​(EmptyParam description)
        An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard.
      • setEmail

        public CustomerUpdateParams.Builder setEmail​(java.lang.String email)
        Customer's email address. It's displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to 512 characters.
      • setEmail

        public CustomerUpdateParams.Builder setEmail​(EmptyParam email)
        Customer's email address. It's displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to 512 characters.
      • addExpand

        public CustomerUpdateParams.Builder addExpand​(java.lang.String element)
        Add an element to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. See CustomerUpdateParams.expand for the field documentation.
      • addAllExpand

        public CustomerUpdateParams.Builder addAllExpand​(java.util.List<java.lang.String> elements)
        Add all elements to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. See CustomerUpdateParams.expand for the field documentation.
      • putExtraParam

        public CustomerUpdateParams.Builder putExtraParam​(java.lang.String key,
                                                          java.lang.Object value)
        Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. See CustomerUpdateParams.extraParams for the field documentation.
      • putAllExtraParam

        public CustomerUpdateParams.Builder putAllExtraParam​(java.util.Map<java.lang.String,​java.lang.Object> map)
        Add all map key/value pairs to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. See CustomerUpdateParams.extraParams for the field documentation.
      • setInvoicePrefix

        public CustomerUpdateParams.Builder setInvoicePrefix​(java.lang.String invoicePrefix)
        The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers.
      • setInvoicePrefix

        public CustomerUpdateParams.Builder setInvoicePrefix​(EmptyParam invoicePrefix)
        The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers.
      • putMetadata

        public CustomerUpdateParams.Builder putMetadata​(java.lang.String key,
                                                        java.lang.String value)
        Add a key/value pair to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. See CustomerUpdateParams.metadata for the field documentation.
      • putAllMetadata

        public CustomerUpdateParams.Builder putAllMetadata​(java.util.Map<java.lang.String,​java.lang.String> map)
        Add all map key/value pairs to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. See CustomerUpdateParams.metadata for the field documentation.
      • setMetadata

        public CustomerUpdateParams.Builder setMetadata​(EmptyParam metadata)
        Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.
      • setMetadata

        public CustomerUpdateParams.Builder setMetadata​(java.util.Map<java.lang.String,​java.lang.String> metadata)
        Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.
      • setNextInvoiceSequence

        public CustomerUpdateParams.Builder setNextInvoiceSequence​(java.lang.Long nextInvoiceSequence)
        The sequence to be used on the customer's next invoice. Defaults to 1.
      • addPreferredLocale

        public CustomerUpdateParams.Builder addPreferredLocale​(java.lang.String element)
        Add an element to `preferredLocales` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. See CustomerUpdateParams.preferredLocales for the field documentation.
      • addAllPreferredLocale

        public CustomerUpdateParams.Builder addAllPreferredLocale​(java.util.List<java.lang.String> elements)
        Add all elements to `preferredLocales` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. See CustomerUpdateParams.preferredLocales for the field documentation.
      • setPromotionCode

        public CustomerUpdateParams.Builder setPromotionCode​(java.lang.String promotionCode)
        The API ID of a promotion code to apply to the customer. The customer will have a discount applied on all recurring payments. Charges you create through the API will not have the discount.
      • setPromotionCode

        public CustomerUpdateParams.Builder setPromotionCode​(EmptyParam promotionCode)
        The API ID of a promotion code to apply to the customer. The customer will have a discount applied on all recurring payments. Charges you create through the API will not have the discount.
      • setTrialEnd

        public CustomerUpdateParams.Builder setTrialEnd​(CustomerUpdateParams.TrialEnd trialEnd)
        Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. This will always overwrite any trials that might apply via a subscribed plan. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value now can be provided to end the customer's trial immediately. Can be at most two years from billing_cycle_anchor.
      • setTrialEnd

        public CustomerUpdateParams.Builder setTrialEnd​(java.lang.Long trialEnd)
        Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. This will always overwrite any trials that might apply via a subscribed plan. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value now can be provided to end the customer's trial immediately. Can be at most two years from billing_cycle_anchor.