Class: Unit::Application::CreateSoleProprietorApplicationRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/unit/models/application/create_sole_proprietor_application_request.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nationality, full_name, date_of_birth, address, phone, email, ssn = nil, passport = nil, ein = nil, dba = nil, power_of_attorney_agent = nil, evaluation_params = nil, annual_revenue = nil, number_of_employees = nil, business_vertical = nil, website = nil, ip = nil, tags = nil, idempotency_key = nil, device_fingerprints = nil, jwt_subject = nil, sole_proprietorship: true) ⇒ CreateSoleProprietorApplicationRequest

Returns a new instance of CreateSoleProprietorApplicationRequest.

Parameters:

  • nationality (String)
  • full_name (FullName)
  • date_of_birth (Date)
  • address (Address)
  • phone (Phone)
  • email (String)
  • sole_proprietorship (Boolean) (defaults to: true)
  • ssn (String) (defaults to: nil)
    • optional

  • passport (String) (defaults to: nil)
    • optional

  • ein (String) (defaults to: nil)
    • optional

  • dba (String) (defaults to: nil)
    • optional

  • power_of_attorney_agent (PowerOfAttorneyAgent) (defaults to: nil)
    • optional

  • evaluation_params (EvaluationParams) (defaults to: nil)
    • optional

  • annual_revenue (String) (defaults to: nil)
    • optional

  • number_of_employees (String) (defaults to: nil)
    • optional

  • business_vertical (String) (defaults to: nil)
    • optional

  • website (String) (defaults to: nil)
    • optional

  • ip (String) (defaults to: nil)
    • optional

  • tags (Hash) (defaults to: nil)
    • optional

  • idempotency_key (String) (defaults to: nil)
    • optional

  • device_fingerprints (Array<DeviceFingerprint>) (defaults to: nil)
    • optional

  • jwt_subject (String) (defaults to: nil)
    • optional



37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 37

def initialize(nationality, full_name, date_of_birth, address, phone,
               email, ssn = nil, passport = nil, ein = nil, dba = nil, power_of_attorney_agent = nil, evaluation_params = nil,
               annual_revenue = nil, number_of_employees = nil, business_vertical = nil, website = nil, ip = nil, tags = nil,
               idempotency_key = nil, device_fingerprints = nil, jwt_subject = nil, sole_proprietorship: true)
  @ssn = ssn
  @passport = passport
  @nationality = nationality
  @full_name = full_name
  @date_of_birth = date_of_birth
  @address = address
  @phone = phone
  @email = email
  @sole_proprietorship = sole_proprietorship
  @ein = ein
  @dba = dba
  @power_of_attorney_agent = power_of_attorney_agent
  @evaluation_params = evaluation_params
  @annual_revenue = annual_revenue
  @number_of_employees = number_of_employees
  @business_vertical = business_vertical
  @website = website
  @ip = ip
  @tags = tags
  @idempotency_key = idempotency_key
  @device_fingerprints = device_fingerprints
  @jwt_subject = jwt_subject
end

Instance Attribute Details

#addressObject (readonly)

Returns the value of attribute address.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def address
  @address
end

#annual_revenueObject (readonly)

Returns the value of attribute annual_revenue.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def annual_revenue
  @annual_revenue
end

#business_verticalObject (readonly)

Returns the value of attribute business_vertical.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def business_vertical
  @business_vertical
end

#date_of_birthObject (readonly)

Returns the value of attribute date_of_birth.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def date_of_birth
  @date_of_birth
end

#dbaObject (readonly)

Returns the value of attribute dba.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def dba
  @dba
end

#device_fingerprintsObject (readonly)

Returns the value of attribute device_fingerprints.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def device_fingerprints
  @device_fingerprints
end

#einObject (readonly)

Returns the value of attribute ein.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def ein
  @ein
end

#emailObject (readonly)

Returns the value of attribute email.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def email
  @email
end

#evaluation_paramsObject (readonly)

Returns the value of attribute evaluation_params.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def evaluation_params
  @evaluation_params
end

#full_nameObject (readonly)

Returns the value of attribute full_name.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def full_name
  @full_name
end

#idempotency_keyObject (readonly)

Returns the value of attribute idempotency_key.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def idempotency_key
  @idempotency_key
end

#ipObject (readonly)

Returns the value of attribute ip.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def ip
  @ip
end

#jwt_subjectObject (readonly)

Returns the value of attribute jwt_subject.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def jwt_subject
  @jwt_subject
end

#nationalityObject (readonly)

Returns the value of attribute nationality.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def nationality
  @nationality
end

#number_of_employeesObject (readonly)

Returns the value of attribute number_of_employees.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def number_of_employees
  @number_of_employees
end

#passportObject (readonly)

Returns the value of attribute passport.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def passport
  @passport
end

#phoneObject (readonly)

Returns the value of attribute phone.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def phone
  @phone
end

#power_of_attorney_agentObject (readonly)

Returns the value of attribute power_of_attorney_agent.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def power_of_attorney_agent
  @power_of_attorney_agent
end

#sole_proprietorshipObject (readonly)

Returns the value of attribute sole_proprietorship.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def sole_proprietorship
  @sole_proprietorship
end

#ssnObject (readonly)

Returns the value of attribute ssn.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def ssn
  @ssn
end

#tagsObject (readonly)

Returns the value of attribute tags.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def tags
  @tags
end

#websiteObject (readonly)

Returns the value of attribute website.



8
9
10
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 8

def website
  @website
end

Instance Method Details

#to_json_apiObject



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'lib/unit/models/application/create_sole_proprietor_application_request.rb', line 65

def to_json_api
  payload = {
    data: {
      type: "individualApplication",
      attributes: {
        ssn: ssn,
        passport: passport,
        nationality: nationality,
        fullName: full_name.represent,
        dateOfBirth: date_of_birth,
        address: address.represent,
        phone: phone&.represent,
        email: email,
        soleProprietorship: sole_proprietorship,
        ein: ein,
        dba: dba,
        powerOfAttorneyAgent: power_of_attorney_agent&.represent,
        evaluationParams: evaluation_params&.represent,
        annualRevenue: annual_revenue,
        numberOfEmployees: number_of_employees,
        businessVertical: business_vertical,
        website: website,
        ip: ip,
        tags: tags,
        idempotencyKey: idempotency_key,
        deviceFingerprints: device_fingerprints&.map(&:represent),
        jwtSubject: jwt_subject
      }
    }
  }
  payload[:data][:attributes].compact!
  payload.to_json
end