Class: Stripe::Climate::Order

Inherits:
APIResource show all
Extended by:
APIOperations::Create, APIOperations::List
Includes:
APIOperations::Save
Defined in:
lib/stripe/resources/climate/order.rb

Overview

Orders represent your intent to purchase a particular Climate product. When you create an order, the payment is deducted from your merchant balance.

Defined Under Namespace

Classes: Beneficiary, DeliveryDetail

Constant Summary collapse

OBJECT_NAME =
"climate.order"

Constants inherited from StripeObject

StripeObject::RESERVED_FIELD_NAMES

Instance Attribute Summary collapse

Attributes inherited from APIResource

#save_with_parent

Attributes inherited from StripeObject

#last_response

Class Method Summary collapse

Instance Method Summary collapse

Methods included from APIOperations::Create

create

Methods included from APIOperations::List

list

Methods included from APIOperations::Save

included, #save

Methods inherited from APIResource

class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource

Methods included from APIOperations::Request

included

Methods inherited from StripeObject

#==, #[], #[]=, #_get_inner_class_type, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values

Constructor Details

This class inherits a constructor from Stripe::StripeObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject

Instance Attribute Details

#amount_feesObject (readonly)

Total amount of [Frontier](frontierclimate.com/)‘s service fees in the currency’s smallest unit.



72
73
74
# File 'lib/stripe/resources/climate/order.rb', line 72

def amount_fees
  @amount_fees
end

#amount_subtotalObject (readonly)

Total amount of the carbon removal in the currency’s smallest unit.



74
75
76
# File 'lib/stripe/resources/climate/order.rb', line 74

def amount_subtotal
  @amount_subtotal
end

#amount_totalObject (readonly)

Total amount of the order including fees in the currency’s smallest unit.



76
77
78
# File 'lib/stripe/resources/climate/order.rb', line 76

def amount_total
  @amount_total
end

#beneficiaryObject (readonly)

Attribute for field beneficiary



78
79
80
# File 'lib/stripe/resources/climate/order.rb', line 78

def beneficiary
  @beneficiary
end

#canceled_atObject (readonly)

Time at which the order was canceled. Measured in seconds since the Unix epoch.



80
81
82
# File 'lib/stripe/resources/climate/order.rb', line 80

def canceled_at
  @canceled_at
end

#cancellation_reasonObject (readonly)

Reason for the cancellation of this order.



82
83
84
# File 'lib/stripe/resources/climate/order.rb', line 82

def cancellation_reason
  @cancellation_reason
end

#certificateObject (readonly)

For delivered orders, a URL to a delivery certificate for the order.



84
85
86
# File 'lib/stripe/resources/climate/order.rb', line 84

def certificate
  @certificate
end

#confirmed_atObject (readonly)

Time at which the order was confirmed. Measured in seconds since the Unix epoch.



86
87
88
# File 'lib/stripe/resources/climate/order.rb', line 86

def confirmed_at
  @confirmed_at
end

#createdObject (readonly)

Time at which the object was created. Measured in seconds since the Unix epoch.



88
89
90
# File 'lib/stripe/resources/climate/order.rb', line 88

def created
  @created
end

#currencyObject (readonly)

Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase, representing the currency for this order.



90
91
92
# File 'lib/stripe/resources/climate/order.rb', line 90

def currency
  @currency
end

#delayed_atObject (readonly)

Time at which the order’s expected_delivery_year was delayed. Measured in seconds since the Unix epoch.



92
93
94
# File 'lib/stripe/resources/climate/order.rb', line 92

def delayed_at
  @delayed_at
end

#delivered_atObject (readonly)

Time at which the order was delivered. Measured in seconds since the Unix epoch.



94
95
96
# File 'lib/stripe/resources/climate/order.rb', line 94

def delivered_at
  @delivered_at
end

#delivery_detailsObject (readonly)

Details about the delivery of carbon removal for this order.



96
97
98
# File 'lib/stripe/resources/climate/order.rb', line 96

def delivery_details
  @delivery_details
end

#expected_delivery_yearObject (readonly)

The year this order is expected to be delivered.



98
99
100
# File 'lib/stripe/resources/climate/order.rb', line 98

def expected_delivery_year
  @expected_delivery_year
end

#idObject (readonly)

Unique identifier for the object.



100
101
102
# File 'lib/stripe/resources/climate/order.rb', line 100

def id
  @id
end

#livemodeObject (readonly)

Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.



102
103
104
# File 'lib/stripe/resources/climate/order.rb', line 102

def livemode
  @livemode
end

#metadataObject (readonly)

Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.



104
105
106
# File 'lib/stripe/resources/climate/order.rb', line 104

def 
  @metadata
end

#metric_tonsObject (readonly)

Quantity of carbon removal that is included in this order.



106
107
108
# File 'lib/stripe/resources/climate/order.rb', line 106

def metric_tons
  @metric_tons
end

#objectObject (readonly)

String representing the object’s type. Objects of the same type share the same value.



108
109
110
# File 'lib/stripe/resources/climate/order.rb', line 108

def object
  @object
end

#productObject (readonly)

Unique ID for the Climate ‘Product` this order is purchasing.



110
111
112
# File 'lib/stripe/resources/climate/order.rb', line 110

def product
  @product
end

#product_substituted_atObject (readonly)

Time at which the order’s product was substituted for a different product. Measured in seconds since the Unix epoch.



112
113
114
# File 'lib/stripe/resources/climate/order.rb', line 112

def product_substituted_at
  @product_substituted_at
end

#statusObject (readonly)

The current status of this order.



114
115
116
# File 'lib/stripe/resources/climate/order.rb', line 114

def status
  @status
end

Class Method Details

.cancel(order, params = {}, opts = {}) ⇒ Object

Cancels a Climate order. You can cancel an order within 24 hours of creation. Stripe refunds the reservation amount_subtotal, but not the amount_fees for user-triggered cancellations. Frontier might cancel reservations if suppliers fail to deliver. If Frontier cancels the reservation, Stripe provides 90 days advance notice and refunds the amount_total.



133
134
135
136
137
138
139
140
# File 'lib/stripe/resources/climate/order.rb', line 133

def self.cancel(order, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/climate/orders/%<order>s/cancel", { order: CGI.escape(order) }),
    params: params,
    opts: opts
  )
end

.create(params = {}, opts = {}) ⇒ Object

Creates a Climate order object for a given Climate product. The order will be processed immediately after creation and payment will be deducted your Stripe balance.



144
145
146
# File 'lib/stripe/resources/climate/order.rb', line 144

def self.create(params = {}, opts = {})
  request_stripe_object(method: :post, path: "/v1/climate/orders", params: params, opts: opts)
end

.field_remappingsObject



168
169
170
# File 'lib/stripe/resources/climate/order.rb', line 168

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



164
165
166
# File 'lib/stripe/resources/climate/order.rb', line 164

def self.inner_class_types
  @inner_class_types = { beneficiary: Beneficiary, delivery_details: DeliveryDetail }
end

.list(params = {}, opts = {}) ⇒ Object

Lists all Climate order objects. The orders are returned sorted by creation date, with the most recently created orders appearing first.



150
151
152
# File 'lib/stripe/resources/climate/order.rb', line 150

def self.list(params = {}, opts = {})
  request_stripe_object(method: :get, path: "/v1/climate/orders", params: params, opts: opts)
end

.object_nameObject



14
15
16
# File 'lib/stripe/resources/climate/order.rb', line 14

def self.object_name
  "climate.order"
end

.update(order, params = {}, opts = {}) ⇒ Object

Updates the specified order by setting the values of the parameters passed.



155
156
157
158
159
160
161
162
# File 'lib/stripe/resources/climate/order.rb', line 155

def self.update(order, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/climate/orders/%<order>s", { order: CGI.escape(order) }),
    params: params,
    opts: opts
  )
end

Instance Method Details

#cancel(params = {}, opts = {}) ⇒ Object

Cancels a Climate order. You can cancel an order within 24 hours of creation. Stripe refunds the reservation amount_subtotal, but not the amount_fees for user-triggered cancellations. Frontier might cancel reservations if suppliers fail to deliver. If Frontier cancels the reservation, Stripe provides 90 days advance notice and refunds the amount_total.



120
121
122
123
124
125
126
127
# File 'lib/stripe/resources/climate/order.rb', line 120

def cancel(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/climate/orders/%<order>s/cancel", { order: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end