Class: Unit::Customer::ArchiveCustomerRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/unit/models/customer/archive_customer_request.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(customer_id, reason = nil) ⇒ ArchiveCustomerRequest

Returns a new instance of ArchiveCustomerRequest.

Parameters:

  • customer_id (String)

    The id of customer

  • optional

    reason [String] The reason for archiving the customer

  • reason (Hash) (defaults to: nil)

    a customizable set of options

Options Hash (reason):

  • Need (String)

    to be one of the following: Inactive, FraudACHActivity, FraudCardActivity, FraudCheckActivity, FraudApplicationHistory, FraudAccountActivity, FraudClientIdentified, FraudLinkedToFraudulentCustomer.



13
14
15
16
# File 'lib/unit/models/customer/archive_customer_request.rb', line 13

def initialize(customer_id, reason = nil)
  @customer_id = customer_id
  @reason = reason
end

Instance Attribute Details

#customer_idObject (readonly)

Returns the value of attribute customer_id.



8
9
10
# File 'lib/unit/models/customer/archive_customer_request.rb', line 8

def customer_id
  @customer_id
end

#reasonObject (readonly)

Returns the value of attribute reason.



8
9
10
# File 'lib/unit/models/customer/archive_customer_request.rb', line 8

def reason
  @reason
end

Instance Method Details

#to_json_apiObject



18
19
20
21
22
23
24
25
26
27
# File 'lib/unit/models/customer/archive_customer_request.rb', line 18

def to_json_api
  payload = {
    data: {
      type: "archiveCustomer",
      attributes: { reason: reason }
    }
  }
  payload[:data][:attributes].compact!
  payload.to_json
end