moneta-api 1.0.4 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/lib/moneta/api/data_mapper.rb +9 -3
- data/lib/moneta/api/key_value_serializer.rb +16 -0
- data/lib/moneta/api/requests/create_bank_account_request.rb +28 -0
- data/lib/moneta/api/requests/create_profile_request.rb +29 -0
- data/lib/moneta/api/requests/edit_bank_account_request.rb +20 -0
- data/lib/moneta/api/requests/edit_profile_request.rb +25 -0
- data/lib/moneta/api/requests/profile/create_client_profile_request.rb +26 -0
- data/lib/moneta/api/requests/profile/create_organization_profile_request.rb +26 -0
- data/lib/moneta/api/requests/profile/edit_client_profile_request.rb +16 -0
- data/lib/moneta/api/requests/profile/edit_organization_profile_request.rb +16 -0
- data/lib/moneta/api/requests/refund_request.rb +1 -1
- data/lib/moneta/api/requests/verify_transaction_request.rb +1 -1
- data/lib/moneta/api/responses/authorise_transaction_batch_response.rb +1 -1
- data/lib/moneta/api/responses/cancel_transaction_batch_response.rb +1 -1
- data/lib/moneta/api/responses/confirm_transaction_batch_response.rb +1 -1
- data/lib/moneta/api/responses/create_bank_account_response.rb +13 -0
- data/lib/moneta/api/responses/create_profile_response.rb +18 -0
- data/lib/moneta/api/responses/edit_bank_account_response.rb +18 -0
- data/lib/moneta/api/responses/edit_profile_response.rb +18 -0
- data/lib/moneta/api/responses/find_account_by_alias_response.rb +1 -1
- data/lib/moneta/api/responses/find_account_by_id_response.rb +1 -1
- data/lib/moneta/api/responses/find_accounts_list_response.rb +1 -1
- data/lib/moneta/api/responses/get_operation_details_by_id_response.rb +1 -1
- data/lib/moneta/api/responses/invoice_batch_response.rb +1 -1
- data/lib/moneta/api/service_methods.rb +25 -0
- data/lib/moneta/api/types/account_info.rb +1 -1
- data/lib/moneta/api/types/bank_account_type.rb +62 -0
- data/lib/moneta/api/types/cancel_transaction_batch_response_type.rb +1 -1
- data/lib/moneta/api/types/hash_entity.rb +14 -0
- data/lib/moneta/api/types/key_value_entity.rb +13 -0
- data/lib/moneta/api/types/operation_info.rb +1 -1
- data/lib/moneta/api/types/operation_info_batch_response_type.rb +1 -1
- data/lib/moneta/api/types/operation_info_list.rb +1 -1
- data/lib/moneta/api/types/payment_request_type.rb +1 -1
- data/lib/moneta/api/types/profile/client.rb +69 -0
- data/lib/moneta/api/types/profile/organization.rb +252 -0
- data/lib/moneta/api/types/transaction_batch_response_type.rb +1 -1
- data/lib/moneta/api/types/transaction_request_type.rb +1 -1
- data/lib/moneta/api/types/verify_transfer_response_type.rb +1 -1
- data/lib/moneta/api/version.rb +1 -1
- data/lib/moneta/api.rb +18 -1
- data/moneta-api.gemspec +2 -2
- data/spec/lib/moneta/api/requests/create_bank_account_request_spec.rb +20 -0
- data/spec/lib/moneta/api/requests/edit_bank_account_request_spec.rb +23 -0
- data/spec/lib/moneta/api/requests/profile/create_client_profile_request_spec.rb +29 -0
- data/spec/lib/moneta/api/requests/profile/create_organization_profile_request_spec.rb +29 -0
- data/spec/lib/moneta/api/requests/profile/edit_client_profile_request_spec.rb +22 -0
- data/spec/lib/moneta/api/requests/profile/edit_organization_profile_request_spec.rb +22 -0
- data/spec/lib/moneta/api/types/profile/client_spec.rb +19 -0
- data/spec/spec_helper.rb +10 -0
- data/spec/support/matchers.rb +7 -1
- data/spec/vcr/moneta_api_requests_createbankaccountrequest/id_.yml +13707 -0
- data/spec/vcr/moneta_api_requests_editbankaccountrequest/success_.yml +13708 -0
- data/spec/vcr/moneta_api_requests_profile_createclientprofilerequest/response_.yml +13711 -0
- data/spec/vcr/moneta_api_requests_profile_createclientprofilerequest/response_profile_id_.yml +13707 -0
- data/spec/vcr/moneta_api_requests_profile_createorganizationprofilerequest/response_profile_id_.yml +13709 -0
- data/spec/vcr/moneta_api_requests_profile_editclientprofilerequest/_with_real_connection_true_.yml +13725 -0
- data/spec/vcr/moneta_api_requests_profile_editclientprofilerequest/success_.yml +13707 -0
- data/spec/vcr/moneta_api_requests_profile_editorganizationprofilerequest/success_.yml +13709 -0
- metadata +52 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6af4476441703fca93af4bf5f1e5d36459150144
|
4
|
+
data.tar.gz: e94ffe9d99272fcf29ae6df357af4999bad1c2f8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 537387b573b5f96846b2d1c1439de4620c8efc7a6866eadbaa715eaf666b585037803214001ed57f2b57135d15829ff78ad13d73d9c814d44ea5b31c5706a2f6
|
7
|
+
data.tar.gz: 700216e219143634cc3a67d078731c08bef9af092725cf4a803971d351e244d1291dffda5e7ce9e07da4ddd094009ed4f9ed9ae89b49cc383db80a7b3c96369c
|
data/.gitignore
CHANGED
@@ -47,13 +47,14 @@ module Moneta
|
|
47
47
|
end
|
48
48
|
|
49
49
|
module ClassMethods
|
50
|
-
|
51
|
-
|
50
|
+
|
51
|
+
def property(name, type: nil, read_only: false)
|
52
|
+
generate_accessors(name, read_only)
|
52
53
|
|
53
54
|
# Сохраняем свойста и перезаписываем instance метод
|
54
55
|
current_properties = instance_variable_get('@properties') || {}
|
55
56
|
properties = instance_variable_set('@properties',
|
56
|
-
current_properties.merge(name =>
|
57
|
+
current_properties.merge(parents_properties).merge(name => type)
|
57
58
|
)
|
58
59
|
|
59
60
|
send(:define_method, :properties) { properties }
|
@@ -74,6 +75,11 @@ module Moneta
|
|
74
75
|
end
|
75
76
|
)
|
76
77
|
end
|
78
|
+
|
79
|
+
def generate_accessors(name, read_only)
|
80
|
+
attr_reader(name)
|
81
|
+
attr_writer(name) unless read_only
|
82
|
+
end
|
77
83
|
end
|
78
84
|
end
|
79
85
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
class KeyValueSerializer
|
4
|
+
def self.serialize(entity)
|
5
|
+
attributes = entity.properties
|
6
|
+
|
7
|
+
attributes.collect do |property, _|
|
8
|
+
value = entity.public_send(property)
|
9
|
+
key = property.to_s.swapcase
|
10
|
+
|
11
|
+
{ 'key' => key, 'value' => value } unless value.nil?
|
12
|
+
end.compact
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
|
5
|
+
# Запрос на создание банковских реквизитов.
|
6
|
+
# Request for adding information about your bank account to your MONETA.RU profile.
|
7
|
+
class CreateBankAccountRequest
|
8
|
+
include Moneta::Api::DataMapper
|
9
|
+
|
10
|
+
# @return [Integer] ID банковских реквизитов.
|
11
|
+
# / Bank account ID.
|
12
|
+
property :id
|
13
|
+
|
14
|
+
# @return [Integer] Пользователь, которому будут принадлежать банковские реквизиты.
|
15
|
+
# / Если это поле не задано, то банковские реквизиты создаются для текущего пользователя.
|
16
|
+
# / The unique identifier of the user who will own the bank account.
|
17
|
+
# / If you omit this element, MONETA.RU uses the ID of the user who sends the request.
|
18
|
+
property :unit_id
|
19
|
+
|
20
|
+
property :profile_id
|
21
|
+
|
22
|
+
# @return [Moneta::Api::Types::BankAccountType] Расширенные атрибуты.
|
23
|
+
# / Specifies extended attributes.
|
24
|
+
property :attribute, type: Moneta::Api::Types::BankAccountType
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
# Запрос на создание пользователя в системе МОНЕТА.РУ.
|
5
|
+
# Request for creating a MONETA.RU account.
|
6
|
+
class CreateProfileRequest
|
7
|
+
include Moneta::Api::DataMapper
|
8
|
+
|
9
|
+
# @return [Integer] ID родительского пользователя в системе МОНЕТА.РУ, к которому будет принадлежать создаваемый пользователь.
|
10
|
+
# / Если поле не задано, то пользователь будет принадлежать тому пользователю, от имени которого работает web service.
|
11
|
+
# / Unique identifier of the parent MONETA.RU account that will own the new account.
|
12
|
+
# / If you ommit this element, the new account will belong to the the user who sends this request.
|
13
|
+
property :unit_id
|
14
|
+
|
15
|
+
property :profile_id
|
16
|
+
|
17
|
+
# @return [String] Тип пользователя. Возможные значения: [client, organization]
|
18
|
+
# / Profile type. Valid values are: [client, organization]
|
19
|
+
property :profile_type
|
20
|
+
|
21
|
+
# @return [HashEntity] Данные создаваемого пользователя. Данные представлены в виде "ключ-значение".
|
22
|
+
# / Ключи данных зависят от типа пользователя (ProfileType).
|
23
|
+
# / User profile information in the list of key-value pairs.
|
24
|
+
# / The list of supported keys depends on ProfileType.
|
25
|
+
property :profile
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
|
5
|
+
# Запрос на изменение банковских реквизитов.
|
6
|
+
# Request for editing information about your bank account in your MONETA.RU profile.
|
7
|
+
class EditBankAccountRequest
|
8
|
+
include Moneta::Api::DataMapper
|
9
|
+
|
10
|
+
# @return [Integer] ID банковских реквизитов.
|
11
|
+
# / Bank account ID.
|
12
|
+
property :id
|
13
|
+
|
14
|
+
# @return [Moneta::Api::Types::BankAccountType] Расширенные атрибуты.
|
15
|
+
# / Specifies extended attributes.
|
16
|
+
property :attribute, type: Moneta::Api::Types::BankAccountType
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class EditProfileRequest
|
2
|
+
end
|
3
|
+
|
4
|
+
module Moneta
|
5
|
+
module Api
|
6
|
+
module Requests
|
7
|
+
# Запрос на редактирование пользователя в системе МОНЕТА.РУ.
|
8
|
+
# Request for editing a MONETA.RU user profile.
|
9
|
+
class EditProfileRequest
|
10
|
+
include Moneta::Api::DataMapper
|
11
|
+
|
12
|
+
# @return [Integer] ID пользователя в системе МОНЕТА.РУ, данные которого надо отредактировать.
|
13
|
+
# The unique identifier of the MONETA.RU user that you want to edit.
|
14
|
+
property :unit_id
|
15
|
+
|
16
|
+
property :profile_id
|
17
|
+
|
18
|
+
# @return [HashEntity] Данные редактируемого пользователя. Данные представлены в виде "ключ-значение".
|
19
|
+
# / Ключи данных зависят от типа редактируемого пользователя (client или organization).
|
20
|
+
# / User profile information in the list of key-value pairs. The list of supported keys depends on ProfileType.
|
21
|
+
property :profile
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module Profile
|
5
|
+
# Запрос на создание пользователя с типом "клиент" в системе МОНЕТА.РУ.
|
6
|
+
# Request for creating a MONETA.RU client account.
|
7
|
+
class CreateClientProfileRequest < CreateProfileRequest
|
8
|
+
|
9
|
+
# @return [String] Тип пользователя. Возможные значения: [client, organization]
|
10
|
+
# / Profile type. Valid values are: [client, organization]
|
11
|
+
property :profile_type, read_only: true
|
12
|
+
|
13
|
+
# @return [Moneta::Api::Types::Profile::Client] Данные создаваемого пользователя. Данные представлены в виде "ключ-значение".
|
14
|
+
# / Ключи данных зависят от типа пользователя (ProfileType).
|
15
|
+
# / User profile information in the list of key-value pairs.
|
16
|
+
# / The list of supported keys depends on ProfileType.
|
17
|
+
property :profile, type: Moneta::Api::Types::Profile::Client
|
18
|
+
|
19
|
+
def initialize
|
20
|
+
@profile_type = 'client'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module Profile
|
5
|
+
# Запрос на создание пользователя с типом "организация" в системе МОНЕТА.РУ.
|
6
|
+
# Request for creating a MONETA.RU organization account.
|
7
|
+
class CreateOrganizationProfileRequest < CreateProfileRequest
|
8
|
+
|
9
|
+
# @return [String] Тип пользователя. Возможные значения: [client, organization]
|
10
|
+
# / Profile type. Valid values are: [client, organization]
|
11
|
+
property :profile_type, read_only: true
|
12
|
+
|
13
|
+
# @return [Moneta::Api::Types::Profile::Organization] Данные создаваемого пользователя. Данные представлены в виде "ключ-значение".
|
14
|
+
# / Ключи данных зависят от типа пользователя (ProfileType).
|
15
|
+
# / User profile information in the list of key-value pairs.
|
16
|
+
# / The list of supported keys depends on ProfileType.
|
17
|
+
property :profile, type: Moneta::Api::Types::Profile::Organization
|
18
|
+
|
19
|
+
def initialize
|
20
|
+
@profile_type = 'organization'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module Profile
|
5
|
+
# Запрос на редактирование пользователя с типом "клиент" в системе МОНЕТА.РУ.
|
6
|
+
# Request for editing a MONETA.RU client account.
|
7
|
+
class EditClientProfileRequest < EditProfileRequest
|
8
|
+
|
9
|
+
# @return [Moneta::Api::Types::Profile::Client] Данные редактируемого пользователя. Данные представлены в виде "ключ-значение".
|
10
|
+
# / User profile information in the list of key-value pairs.
|
11
|
+
property :profile, type: Moneta::Api::Types::Profile::Client
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module Profile
|
5
|
+
# Запрос на редактирование пользователя с типом "организация" в системе МОНЕТА.РУ.
|
6
|
+
# Request for editing a MONETA.RU organization account.
|
7
|
+
class EditOrganizationProfileRequest < EditProfileRequest
|
8
|
+
|
9
|
+
# @return [Moneta::Api::Types::Profile::Organization] Данные редактируемого пользователя. Данные представлены в виде "ключ-значение".
|
10
|
+
# / User profile information in the list of key-value pairs.
|
11
|
+
property :profile, type: Moneta::Api::Types::Profile::Organization
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -31,7 +31,7 @@ module Moneta
|
|
31
31
|
|
32
32
|
# @return [Moneta::Api::Types::OperationInfo] Набор полей, которые необходимо сохранить в качестве атрибутов операции. Значения дат в формате dd.MM.yyyy HH:mm:ss
|
33
33
|
# / Key-value pairs that will be saved as a transaction attributes. Use format dd.MM.yyyy HH:mm:ss for date values
|
34
|
-
property :operation_info, Types::OperationInfo
|
34
|
+
property :operation_info, type: Types::OperationInfo
|
35
35
|
|
36
36
|
# @return [String] Запрос для платежного пароля
|
37
37
|
# / Payment password challenge
|
@@ -32,7 +32,7 @@ module Moneta
|
|
32
32
|
|
33
33
|
# @return [Moneta::Api::Types::OperationInfo] Набор полей, которые необходимо использовать в качестве атрибутов операции. Значения дат в формате dd.MM.yyyy HH:mm:ss
|
34
34
|
# / Key-value pairs that will be used as a transaction attributes. Use format dd.MM.yyyy HH:mm:ss for date values
|
35
|
-
property :operation_info, Moneta::Api::Types::OperationInfo
|
35
|
+
property :operation_info, type: Moneta::Api::Types::OperationInfo
|
36
36
|
|
37
37
|
# @return [String] Платежный пароль счета плательщика
|
38
38
|
# / Payment password for payer account
|
@@ -10,7 +10,7 @@ module Moneta
|
|
10
10
|
# @return [Array[Moneta::Api::Types::OperationInfoBatchResponseType]] Детали проведенных операций, либо описание ошибок, если операция не проведена.
|
11
11
|
# Порядок соответствует набору операций, переданных в AuthoriseTransactionBatchRequest.
|
12
12
|
# / Either transaction details or error description in order of appearance in corresponding request.
|
13
|
-
property :transaction, Moneta::Api::Types::OperationInfoBatchResponseType
|
13
|
+
property :transaction, type: Moneta::Api::Types::OperationInfoBatchResponseType
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -10,7 +10,7 @@ module Moneta
|
|
10
10
|
# @return [Array[Moneta::Api::Types::CancelTransactionBatchResponseType]] Детали проведенных операций, либо описание ошибок, если операция не проведена.
|
11
11
|
# Порядок соответствует набору операций, переданных в CancelTransactionBatchRequest.
|
12
12
|
# / Either transaction details or error description in order of appearance in corresponding request.
|
13
|
-
property :transaction, Types::CancelTransactionBatchResponseType
|
13
|
+
property :transaction, type: Types::CancelTransactionBatchResponseType
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -10,7 +10,7 @@ module Moneta
|
|
10
10
|
# @return [Moneta::Api::Types::OperationInfoBatchResponseType] Детали проведенных операций, либо описание ошибок, если операция не проведена.
|
11
11
|
# Порядок соответствует набору операций, переданных в ConfirmTransactionBatchRequest.
|
12
12
|
# / Either transaction details or error description in order of appearance in corresponding request.
|
13
|
-
property :transaction, Types::OperationInfoBatchResponseType
|
13
|
+
property :transaction, type: Types::OperationInfoBatchResponseType
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Responses
|
4
|
+
class CreateBankAccountResponse
|
5
|
+
include Moneta::Api::DataMapper
|
6
|
+
|
7
|
+
# @return [String] Идентификатор банковских реквизитов в системе МОНЕТА.РУ
|
8
|
+
# / Bank account id.
|
9
|
+
property :id
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Responses
|
4
|
+
class CreateProfileResponse
|
5
|
+
include Moneta::Api::DataMapper
|
6
|
+
|
7
|
+
# @return [String] Идентификатор профайла в системе МОНЕТА.РУ
|
8
|
+
# Profile id
|
9
|
+
property :profile_id
|
10
|
+
|
11
|
+
def fill(response)
|
12
|
+
@profile_id = response
|
13
|
+
self
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Responses
|
4
|
+
class EditBankAccountResponse
|
5
|
+
include Moneta::Api::DataMapper
|
6
|
+
|
7
|
+
# @return [Boolean] Статус операции, всегда true
|
8
|
+
# / Operation status. Always is true.
|
9
|
+
property :success, read_only: true
|
10
|
+
|
11
|
+
def fill(_)
|
12
|
+
@success = true
|
13
|
+
self
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Responses
|
4
|
+
class EditProfileResponse
|
5
|
+
include Moneta::Api::DataMapper
|
6
|
+
|
7
|
+
# @return [Boolean] Статус операции, всегда true
|
8
|
+
# / Operation status. Always is true.
|
9
|
+
property :success, read_only: true
|
10
|
+
|
11
|
+
def fill(_)
|
12
|
+
@success = true
|
13
|
+
self
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -10,7 +10,7 @@ module Moneta
|
|
10
10
|
# @return [Moneta::Api::Types::TransactionBatchResponseType] Детали проведенных операций, либо описание ошибок, если операция не проведена.
|
11
11
|
# Порядок соответствует набору операций, переданных в InvoiceBatchRequest.
|
12
12
|
# / Either transaction details or error description in order of appearance in corresponding request.
|
13
|
-
property :transaction, Types::TransactionBatchResponseType
|
13
|
+
property :transaction, type: Types::TransactionBatchResponseType
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -139,6 +139,30 @@ module Moneta
|
|
139
139
|
call(__method__, request)
|
140
140
|
end
|
141
141
|
|
142
|
+
# @param [Moneta::Api::Requests::CreateProfileRequest]
|
143
|
+
# @return [Moneta::Api::Responses::CreateProfileResponse]
|
144
|
+
def create_profile(request)
|
145
|
+
call(__method__, request)
|
146
|
+
end
|
147
|
+
|
148
|
+
# @param [Moneta::Api::Requests::EditProfileRequest]
|
149
|
+
# @return [Moneta::Api::Responses::EditProfileResponse]
|
150
|
+
def edit_profile(request)
|
151
|
+
call(__method__, request)
|
152
|
+
end
|
153
|
+
|
154
|
+
# @param [Moneta::Api::Requests::CreateBankAccountRequest]
|
155
|
+
# @return [Moneta::Api::Responses::CreateBankAccountResponse]
|
156
|
+
def create_bank_account(request)
|
157
|
+
call(__method__, request)
|
158
|
+
end
|
159
|
+
|
160
|
+
# @param [Moneta::Api::Requests::EditBankAccountRequest]
|
161
|
+
# @return [Moneta::Api::Responses::EditBankAccountResponse]
|
162
|
+
def edit_bank_account(request)
|
163
|
+
call(__method__, request)
|
164
|
+
end
|
165
|
+
|
142
166
|
private
|
143
167
|
|
144
168
|
def call(method, request)
|
@@ -147,6 +171,7 @@ module Moneta
|
|
147
171
|
response = client.call(method, {
|
148
172
|
message: request.respond_to?(:to_hash) ? request.to_hash : request
|
149
173
|
})
|
174
|
+
|
150
175
|
ResponseFactory.build(response)
|
151
176
|
end
|
152
177
|
|
@@ -53,7 +53,7 @@ module Moneta
|
|
53
53
|
|
54
54
|
# @return [AccountAccessInfo] Информация о доступе к счету. Информация отдается, если счет является делегированным. Необязательное поле.
|
55
55
|
# / Account access information. Available if the account is delegated, otherwise omitted. Optional.
|
56
|
-
property :account_access, Moneta::Api::Types::AccountAccessInfo
|
56
|
+
property :account_access, type: Moneta::Api::Types::AccountAccessInfo
|
57
57
|
|
58
58
|
# @return [Integer] Счет-прототип с которого берутся свойства "по умолчанию". Необязательное поле.
|
59
59
|
# / Prototype account for default properties values. Optional.
|
@@ -0,0 +1,62 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Types
|
4
|
+
|
5
|
+
# Банковские реквизиты.
|
6
|
+
# Bank account.
|
7
|
+
class BankAccountType < KeyValueEntity
|
8
|
+
# @return [String] Банк.
|
9
|
+
# / Bank.
|
10
|
+
property :bank
|
11
|
+
|
12
|
+
# @return [String] БИК.
|
13
|
+
# / BIC.
|
14
|
+
property :bik
|
15
|
+
|
16
|
+
# @return [String] Расчетный счет.
|
17
|
+
# / Checking account.
|
18
|
+
property :account
|
19
|
+
|
20
|
+
# @return [String] Корреспондентский банк.
|
21
|
+
# / Corresponding bank.
|
22
|
+
property :corr_bank
|
23
|
+
|
24
|
+
# @return [String] Корреспондентский счет.
|
25
|
+
# / Corresponding account.
|
26
|
+
property :corr_account
|
27
|
+
|
28
|
+
# @return [String] Страна.
|
29
|
+
# / Country.
|
30
|
+
property :country
|
31
|
+
|
32
|
+
# @return [String] Регион/республика.
|
33
|
+
# / State or region.
|
34
|
+
property :state
|
35
|
+
|
36
|
+
# @return [String] Город.
|
37
|
+
# / City.
|
38
|
+
property :city
|
39
|
+
|
40
|
+
# @return [String] КБК.
|
41
|
+
# / Budgetary classification code.
|
42
|
+
property :kbk
|
43
|
+
|
44
|
+
# @return [String] Общероссийский классификатор территорий муниципальных образований.
|
45
|
+
# / Russian Classification of Territories of Municipal Formations.
|
46
|
+
property :oktmo
|
47
|
+
|
48
|
+
# @return [String] КПП.
|
49
|
+
# / Industrial Enterprises Classifier.
|
50
|
+
property :kpp
|
51
|
+
|
52
|
+
# @return [String] Наименование получателя
|
53
|
+
# / Beneficiary Customer-Name.
|
54
|
+
property :username
|
55
|
+
|
56
|
+
# @return [Boolean] Международные банковские реквизиты
|
57
|
+
# / International bank details.
|
58
|
+
property :is_international
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -16,7 +16,7 @@ module Moneta
|
|
16
16
|
property :error
|
17
17
|
|
18
18
|
# @return [Moneta::Api::Types::CancelTransactionResponseType]
|
19
|
-
property :transaction, Moneta::Api::Types::CancelTransactionResponseType
|
19
|
+
property :transaction, type: Moneta::Api::Types::CancelTransactionResponseType
|
20
20
|
|
21
21
|
# @return [String] Поле содержит код ошибки. Поле заполнено только тогда, когда есть описание ошибки в поле error.
|
22
22
|
# Для получения этого поля в запросе необходимо выставлять атрибут version равный или больше VERSION_2.
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Moneta
|
2
|
+
module Api
|
3
|
+
module Types
|
4
|
+
class HashEntity
|
5
|
+
include Moneta::Api::DataMapper
|
6
|
+
|
7
|
+
def to_hash
|
8
|
+
attributes = Moneta::Api::KeyValueSerializer.serialize(self)
|
9
|
+
{ 'attribute' => attributes } if attributes.any?
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -71,7 +71,7 @@ module Moneta
|
|
71
71
|
# The transaction may contain several attributes with different keys.
|
72
72
|
# The full attribute's key consists of prefix ("customfield:") and tag (32 characters).
|
73
73
|
# For example, "customfield:name".
|
74
|
-
property :attribute, Moneta::Api::Types::KeyValueAttribute
|
74
|
+
property :attribute, type: Moneta::Api::Types::KeyValueAttribute
|
75
75
|
|
76
76
|
# @param [Moneta::Api::Types::KeyValueAttribute]
|
77
77
|
# @return item
|
@@ -14,7 +14,7 @@ module Moneta
|
|
14
14
|
property :error
|
15
15
|
|
16
16
|
# @return [Moneta::Api::Types::OperationInfo]
|
17
|
-
property :transaction, Moneta::Api::Types::OperationInfo
|
17
|
+
property :transaction, type: Moneta::Api::Types::OperationInfo
|
18
18
|
|
19
19
|
# @return [String] Поле содержит код ошибки. Поле заполнено только тогда, когда есть описание ошибки в поле error.
|
20
20
|
# Для получения этого поля в запросе необходимо выставлять атрибут version равный или больше VERSION_2.
|
@@ -47,7 +47,7 @@ module Moneta
|
|
47
47
|
|
48
48
|
# @return [OperationInfo] Набор полей, которые необходимо сохранить в качестве атрибутов операции. Значения дат в формате dd.MM.yyyy HH:mm:ss
|
49
49
|
# / Key-value pairs that will be saved as a transaction attributes. Use format dd.MM.yyyy HH:mm:ss for date values
|
50
|
-
property :operation_info, Moneta::Api::Types::OperationInfo
|
50
|
+
property :operation_info, type: Moneta::Api::Types::OperationInfo
|
51
51
|
|
52
52
|
# @return [String] Запрос для платежного пароля
|
53
53
|
# / Payment password challenge
|