Class: Inttegro::Order

Inherits:
T::Struct
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/inttegro/order/order.rb,
lib/inttegro/order/base.rb,
lib/inttegro/order/page.rb,
lib/inttegro/order/status.rb,
lib/inttegro/order/address.rb,
lib/inttegro/order/invoice.rb,
lib/inttegro/order/customer.rb,
lib/inttegro/order/discount.rb,
lib/inttegro/order/envelope.rb,
lib/inttegro/order/line_item.rb,
lib/inttegro/order/questions.rb,
lib/inttegro/order/pay_request.rb,
lib/inttegro/order/created_from.rb,
lib/inttegro/order/page_request.rb,
lib/inttegro/order/document_kind.rb,
lib/inttegro/order/fee_line_item.rb,
lib/inttegro/order/page_envelope.rb,
lib/inttegro/order/cancel_request.rb,
lib/inttegro/order/invoice_format.rb,
lib/inttegro/order/lookup_request.rb,
lib/inttegro/order/update_request.rb,
lib/inttegro/order/document_format.rb,
lib/inttegro/order/line_item_group.rb,
lib/inttegro/order/complete_request.rb,
lib/inttegro/order/finalize_request.rb,
lib/inttegro/order/checkout_settings.rb,
lib/inttegro/order/complete_envelope.rb,
lib/inttegro/order/document_delivery.rb,
lib/inttegro/order/fee_line_item_fee.rb,
lib/inttegro/order/finalize_envelope.rb,
lib/inttegro/order/product_line_item.rb,
lib/inttegro/order/discount_line_item.rb,
lib/inttegro/order/fee_line_item_type.rb,
lib/inttegro/order/shipping_line_item.rb,
lib/inttegro/order/create_new_customer.rb,
lib/inttegro/order/product_line_item_type.rb,
lib/inttegro/order/discount_line_item_type.rb,
lib/inttegro/order/payout_settings_request.rb,
lib/inttegro/order/receipt_document_format.rb,
lib/inttegro/order/shipping_line_item_type.rb,
lib/inttegro/order/create_existing_customer.rb,
lib/inttegro/order/document_delivery_result.rb,
lib/inttegro/order/document_delivery_attempt.rb,
lib/inttegro/order/document_delivery_failure.rb,
lib/inttegro/order/document_delivery_request.rb,
lib/inttegro/order/document_delivery_summary.rb,
lib/inttegro/order/product_line_item_product.rb,
lib/inttegro/order/created_from_resource_type.rb,
lib/inttegro/order/shipping_line_item_shipping.rb,
lib/inttegro/order/create_new_customer_request_meta.rb,
lib/inttegro/order/document_delivery_channel_summary.rb,
lib/inttegro/order/document_delivery_summary_channels.rb,
lib/inttegro/order/update_request_payment_method_data.rb,
lib/inttegro/order/payout_settings_request_destination.rb,
lib/inttegro/order/create_existing_customer_request_meta.rb,
lib/inttegro/order/create_new_customer_checkout_settings.rb,
lib/inttegro/order/update_request_payment_method_data_type.rb,
lib/inttegro/order/create_existing_customer_checkout_settings.rb

Overview

Complete order record with line items, customer details, payment state, and fulfillment information

This generated model is immutable. Construct it with .new, or decode a string-keyed API payload with .from_hash. #serialize produces a string-keyed hash using the original wire field names and serialized enum values.

Defined Under Namespace

Classes: Address, CancelRequest, CheckoutSettings, CompleteEnvelope, CompleteRequest, CreateExistingCustomer, CreateExistingCustomerCheckoutSettings, CreateExistingCustomerRequestMeta, CreateNewCustomer, CreateNewCustomerCheckoutSettings, CreateNewCustomerRequestMeta, CreatedFrom, CreatedFromResourceType, Customer, Discount, DiscountLineItem, DiscountLineItemType, DocumentDelivery, DocumentDeliveryAttempt, DocumentDeliveryChannelSummary, DocumentDeliveryFailure, DocumentDeliveryRequest, DocumentDeliveryResult, DocumentDeliverySummary, DocumentDeliverySummaryChannels, DocumentFormat, DocumentKind, Envelope, FeeLineItem, FeeLineItemFee, FeeLineItemType, FinalizeEnvelope, FinalizeRequest, Invoice, InvoiceFormat, LineItemGroup, LookupRequest, Page, PageEnvelope, PageRequest, PayRequest, PayoutSettingsRequest, PayoutSettingsRequestDestination, ProductLineItem, ProductLineItemProduct, ProductLineItemType, ReceiptDocumentFormat, ShippingLineItem, ShippingLineItemShipping, ShippingLineItemType, Status, UpdateRequest, UpdateRequestPaymentMethodData, UpdateRequestPaymentMethodDataType

Constant Summary collapse

LineItem =

Typed representation of the line item object in the Inttegro API.

T.type_alias { T.any(Inttegro::Order::ProductLineItem, Inttegro::Order::FeeLineItem, Inttegro::Order::ShippingLineItem, Inttegro::Order::DiscountLineItem) }

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#canceled_at ⇒ Time? (readonly)

When the order was canceled. Omitted otherwise.

Optional in the API payload; omitted values default to nil. Wire name: canceled_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#checkout_settings ⇒ Inttegro::Order::CheckoutSettings? (readonly)

Checkout and payment flow configuration for this order

Optional in the API payload; omitted values default to nil. Wire name: checkout_settings.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#completed_at ⇒ Time? (readonly)

When the order was completed. Omitted otherwise.

Optional in the API payload; omitted values default to nil. Wire name: completed_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#created_from ⇒ Inttegro::Order::CreatedFrom? (readonly)

Attribution for the public resource that created this order, when available.

Optional in the API payload; omitted values default to nil. Wire name: created_from.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#custom_data ⇒ Inttegro::CustomData? (readonly)

Merchant-defined string values attached to a resource. SDKs expose this as a semantic collection rather than a raw map.

Optional in the API payload; omitted values default to nil. Wire name: custom_data.

Returns:



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#customer ⇒ Inttegro::Order::Customer (readonly)

Value of the customer field in the Inttegro API payload.

Required in the API payload. Wire name: customer.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#expires_at ⇒ Time? (readonly)

When the order expires. Omitted when no expiry is set.

Optional in the API payload; omitted values default to nil. Wire name: expires_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#id ⇒ String (readonly)

Unique identifier for this order

Required in the API payload. Wire name: id.

Returns:

  • (String)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#initiated_at ⇒ Time (readonly)

When order processing began

Required in the API payload. Wire name: initiated_at.

Returns:

  • (Time)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#invoice ⇒ Inttegro::Order::Invoice? (readonly)

Value of the invoice field in the Inttegro API payload.

Optional in the API payload; omitted values default to nil. Wire name: invoice.

Returns:



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#invoice_settings ⇒ Inttegro::Shared::InvoiceSettings? (readonly)

Order-level invoice rendering data. Pages uses this data when rendering invoice web and download views.

Optional in the API payload; omitted values default to nil. Wire name: invoice_settings.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#line_item_group ⇒ Inttegro::Order::LineItemGroup? (readonly)

Cart contents and totals

Optional in the API payload; omitted values default to nil. Wire name: line_item_group.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#number ⇒ String? (readonly)

Human-readable order number

Optional in the API payload; omitted values default to nil. Wire name: number.

Returns:

  • (String, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

When the order became paid

Optional in the API payload; omitted values default to nil. Wire name: paid_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#payment ⇒ Inttegro::Payment? (readonly)

Payment intent tied to this order

Optional in the API payload; omitted values default to nil. Wire name: payment.

Returns:



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#payment_due_at ⇒ Time? (readonly)

When the order payment becomes overdue

Optional in the API payload; omitted values default to nil. Wire name: payment_due_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#receipt_number ⇒ String? (readonly)

Merchant-provided receipt number, when set

Optional in the API payload; omitted values default to nil. Wire name: receipt_number.

Returns:

  • (String, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#reference ⇒ String? (readonly)

External order reference when present

Optional in the API payload; omitted values default to nil. Wire name: reference.

Returns:

  • (String, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#refunds ⇒ Array<Inttegro::Refund>? (readonly)

All refunds issued for this order, newest first. Omitted when no refunds exist.

Optional in the API payload; omitted values default to nil. Wire name: refunds.

Returns:



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#sealed_at ⇒ Time? (readonly)

When the order was finalized and became immutable—ready for payment or fulfillment

Optional in the API payload; omitted values default to nil. Wire name: sealed_at.

Returns:

  • (Time, nil)


155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

#status ⇒ Inttegro::Order::Status (readonly)

Current lifecycle state of the order

Required in the API payload. Wire name: status.



155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/inttegro/order/order.rb', line 155

class Order
  const :canceled_at, T.nilable(Time), default: nil
  const :checkout_settings, T.nilable(Inttegro::Order::CheckoutSettings), default: nil
  const :completed_at, T.nilable(Time), default: nil
  const :created_from, T.nilable(Inttegro::Order::CreatedFrom), default: nil
  const :custom_data, T.nilable(Inttegro::CustomData), default: nil
  const :customer, Inttegro::Order::Customer
  const :expires_at, T.nilable(Time), default: nil
  const :id, String
  const :initiated_at, Time
  const :invoice, T.nilable(Inttegro::Order::Invoice), default: nil
  const :number, T.nilable(String), default: nil
  const :receipt_number, T.nilable(String), default: nil
  const :refunds, T.nilable(T::Array[Inttegro::Refund]), default: nil
  const :invoice_settings, T.nilable(Inttegro::Shared::InvoiceSettings), default: nil
  const :status, Inttegro::Order::Status
  const :sealed_at, T.nilable(Time), default: nil
  const :line_item_group, T.nilable(Inttegro::Order::LineItemGroup), default: nil
  const :payment, T.nilable(Inttegro::Payment), default: nil
  const :paid_at, T.nilable(Time), default: nil
  const :payment_due_at, T.nilable(Time), default: nil
  const :reference, T.nilable(String), default: nil
end

Instance Method Details

#paid? ⇒ Boolean

Determine whether this order is recorded as paid.

An order is considered paid when its status is Status::PAID or the API supplied #paid_at. This is a convenience query over the current object and performs no network call.

Returns:

  • (Boolean) —

    whether payment is recorded on the order



15
16
17
# File 'lib/inttegro/order/questions.rb', line 15

def paid?
  status == Inttegro::Order::Status::PAID || !paid_at.nil?
end

#required_payment_action ⇒ Inttegro::Payment::NextAction?

Return the action a customer must complete for the current payment, if any.

The result is delegated to Payment#required_action; orders without a payment, payments outside requires_action, and payments without action data return nil.

Returns:



49
50
51
# File 'lib/inttegro/order/questions.rb', line 49

def required_payment_action
  payment&.required_action
end

#requires_payment? ⇒ Boolean

Determine whether the order currently requires payment.

Returns:

  • (Boolean) —

    whether #status is Status::REQUIRES_PAYMENT



23
24
25
# File 'lib/inttegro/order/questions.rb', line 23

def requires_payment?
  status == Inttegro::Order::Status::REQUIRES_PAYMENT
end

#terminal? ⇒ Boolean

Determine whether the order has reached an end state.

Paid, completed, canceled, and expired orders are terminal according to this local predicate.

Returns:

  • (Boolean) —

    whether the current status is terminal



33
34
35
36
37
38
39
40
# File 'lib/inttegro/order/questions.rb', line 33

def terminal?
  [
    Inttegro::Order::Status::PAID,
    Inttegro::Order::Status::COMPLETED,
    Inttegro::Order::Status::CANCELED,
    Inttegro::Order::Status::EXPIRED
  ].include?(status)
end