Initial commit

This commit is contained in:
Yaser
2026-08-13 19:50:53 +03:30
commit 38084458fe
879 changed files with 95198 additions and 0 deletions

View File

@@ -0,0 +1,88 @@
# encoding: UTF-8
# frozen_string_literal: true
module API
module V2
module Entities
class Beneficiary < Base
expose(
:id,
documentation: {
desc: 'Beneficiary Identifier in Database',
type: Integer
}
)
expose(
:currency_id,
as: :currency,
documentation: {
desc: 'Beneficiary currency code.',
type: String
}
)
expose(
:uid,
documentation: {
desc: 'Beneficiary owner',
type: String
}
) { |b| b.member.uid }
expose(
:name,
documentation: {
desc: 'Human rememberable name which refer beneficiary.',
type: String
}
)
expose(
:description,
documentation: {
desc: 'Human rememberable description of beneficiary.',
type: String
}
)
# expose(
# :data,
# documentation: {
# desc: 'Bank Account details for fiat Beneficiary in JSON format.'\
# 'For crypto it\'s blockchain address.',
# type: JSON
# }
# ) do |beneficiary|
# beneficiary.currency.fiat? ? beneficiary.masked_data : beneficiary.data
# end
expose(
:data,
documentation: {
desc: 'Bank Account details for fiat Beneficiary in JSON format.'\
'For crypto it\'s blockchain address.',
type: JSON
}
)
expose(
:state,
documentation: {
desc: 'Defines either beneficiary active - user can use it to withdraw money'\
'or pending - requires beneficiary activation with pin.',
type: String
}
)
expose(
:sent_at,
format_with: :iso8601,
documentation: {
desc: 'Time when last pin was sent',
type: String
}
)
end
end
end
end