Class: Bitex::UsdDeposit

Inherits:
Object
  • Object
show all
Defined in:
lib/bitex/usd_deposit.rb

Overview

A deposit of USD to your bitex.la balance.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#amountBigDecimal

Returns Final amount credited to your bitex USD balance.

Returns:

  • (BigDecimal)

    Final amount credited to your bitex USD balance.



19
20
21
# File 'lib/bitex/usd_deposit.rb', line 19

def amount
  @amount
end

#astropay_response_bodyObject

Response from astropay if selected as the deposit method. The ‘url’ field should be the astropay payment url for this deposit.



62
63
64
# File 'lib/bitex/usd_deposit.rb', line 62

def astropay_response_body
  @astropay_response_body
end

#countryObject

Country of origin for this deposit.



45
46
47
# File 'lib/bitex/usd_deposit.rb', line 45

def country
  @country
end

#created_atTime

Returns Time when this deposit was announced by you.

Returns:

  • (Time)

    Time when this deposit was announced by you.



11
12
13
# File 'lib/bitex/usd_deposit.rb', line 11

def created_at
  @created_at
end

#currencyObject

Local currency for the country.



49
50
51
# File 'lib/bitex/usd_deposit.rb', line 49

def currency
  @currency
end

#deposit_methodObject

The method used for this deposit

  • :astropay

  • :other



25
26
27
# File 'lib/bitex/usd_deposit.rb', line 25

def deposit_method
  @deposit_method
end

#idInteger

Returns This UsdDeposit’s unique ID.

Returns:

  • (Integer)

    This UsdDeposit’s unique ID.



7
8
9
# File 'lib/bitex/usd_deposit.rb', line 7

def id
  @id
end

#kyc_profile_idObject

KYC profile on whose behalf this deposit is being created.



53
54
55
# File 'lib/bitex/usd_deposit.rb', line 53

def kyc_profile_id
  @kyc_profile_id
end

#reasonObject

The reason for cancellation of this deposit, if any.

  • :not_cancelled.

  • :did_not_credit funds never arrived to our end.

  • :sender_unknown we could not accept these funds because you’re not the sender.

  • :other we’ll contact you regarding this deposit.

  • :user_cancelled We cancelled this deposit per your request.



41
42
43
# File 'lib/bitex/usd_deposit.rb', line 41

def reason
  @reason
end

#request_detailsObject

Details for our account officers about this deposit.



57
58
59
# File 'lib/bitex/usd_deposit.rb', line 57

def request_details
  @request_details
end

#requested_amountBigDecimal

Returns For pre-announced deposits, this is the amount you requested to deposit.

Returns:

  • (BigDecimal)

    For pre-announced deposits, this is the amount you requested to deposit.



15
16
17
# File 'lib/bitex/usd_deposit.rb', line 15

def requested_amount
  @requested_amount
end

#statusObject

The status of this deposit.

  • :pending your deposit notice was received, we’re waiting for the funds to credit.

  • :done your deposit credited correctly, the funds are available in your balance.

  • :cancelled your deposit did not credit, check the ‘reason’ field.



32
33
34
# File 'lib/bitex/usd_deposit.rb', line 32

def status
  @status
end

#third_party_referenceObject

This deposit’s id as issued by the third party payment processor, if any.



66
67
68
# File 'lib/bitex/usd_deposit.rb', line 66

def third_party_reference
  @third_party_reference
end

Class Method Details

.allObject



111
112
113
# File 'lib/bitex/usd_deposit.rb', line 111

def self.all
  Api.private(:get, '/private/usd/deposits').map { |d| from_json(d) }
end

.create!(country, amount, currency, method, details, profile = nil) ⇒ Object

rubocop:enable Metrics/AbcSize



87
88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/bitex/usd_deposit.rb', line 87

def self.create!(country, amount, currency, method, details, profile = nil)
  from_json(
    Api.private(
      :post,
      '/private/usd/deposits',
      country: country,
      amount: amount,
      currency: currency,
      deposit_method: method,
      request_details: details,
      kyc_profile_id: profile
    )
  )
end

.deposit_methodsObject



115
116
117
# File 'lib/bitex/usd_deposit.rb', line 115

def self.deposit_methods
  { 1 => :astropay, 2 => :other }
end

.find(id) ⇒ Object



102
103
104
# File 'lib/bitex/usd_deposit.rb', line 102

def self.find(id)
  from_json(Api.private(:get, "/private/usd/deposits/#{id}"))
end

.reasonsObject



123
124
125
# File 'lib/bitex/usd_deposit.rb', line 123

def self.reasons
  { 0 => :not_cancelled, 1 => :did_not_credit, 2 => :sender_unknown, 3 => :other, 4 => :user_cancelled }
end

.statusesObject



119
120
121
# File 'lib/bitex/usd_deposit.rb', line 119

def self.statuses
  { 1 => :pending, 2 => :done, 3 => :cancelled }
end

Instance Method Details

#cancel!Object



106
107
108
109
# File 'lib/bitex/usd_deposit.rb', line 106

def cancel!
  path = "/private/usd/deposits/#{id}/cancel"
  self.class.from_json(Api.private(:post, path), self)
end