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,73 @@
<% if ENV['ACCOUNTS_CONFIG'] %>
<%= File.read(ENV['ACCOUNTS_CONFIG']) %>
<% else %>
- code: 101
type: asset
kind: main
currency_type: fiat
description: Main Fiat Assets Account
scope: platform
- code: 102
type: asset
kind: main
currency_type: coin
description: Main Crypto Assets Account
scope: platform
- code: 201
type: liability
kind: main
currency_type: fiat
description: Main Fiat Liabilities Account
scope: member
- code: 202
type: liability
kind: main
currency_type: coin
description: Main Crypto Liabilities Account
scope: member
- code: 211
type: liability
kind: locked
currency_type: fiat
description: Locked Fiat Liabilities Account
scope: member
- code: 212
type: liability
kind: locked
currency_type: coin
description: Locked Crypto Liabilities Account
scope: member
- code: 301
type: revenue
kind: main
currency_type: fiat
description: Main Fiat Revenues Account
scope: platform
- code: 302
type: revenue
kind: main
currency_type: coin
description: Main Crypto Revenues Account
scope: platform
- code: 401
type: expense
kind: main
currency_type: fiat
description: Main Fiat Expenses Account
scope: platform
- code: 402
type: expense
kind: main
currency_type: coin
description: Main Crypto Expenses Account
scope: platform
<% end %>

View File

@@ -0,0 +1,47 @@
<% if ENV['BLOCKCHAINS_CONFIG'] %>
<%= File.read(ENV['BLOCKCHAINS_CONFIG']) %>
<% else %>
- key: prt-kovan
name: Ethereum Kovan
client: parity # API client name.
server: http://127.0.0.1:8545 # Public Ethereum node endpoint. IMPORTANT: full syncmode.
height: 2500000 # Initial block number from which sync will be started.
min_confirmations: 6 # Minimal confirmations needed for withdraw and deposit confirmation.
explorer:
address: https://kovan.etherscan.io/address/#{address}
transaction: https://kovan.etherscan.io/tx/#{txid}
status: disabled
- key: eth-rinkeby
name: Ethereum Rinkeby
client: geth # API client name.
server: http://127.0.0.1:8545 # Public Ethereum node endpoint. IMPORTANT: full syncmode.
height: 4000000 # Initial block number from which sync will be started.
min_confirmations: 6 # Minimal confirmations needed for withdraw and deposit confirmation.
explorer:
address: https://rinkeby.etherscan.io/address/#{address}
transaction: https://rinkeby.etherscan.io/tx/#{txid}
status: active
- key: eth-mainet
name: Ethereum Mainet
client: geth # API client name.
server: http://127.0.0.1:8545 # Public Ethereum node endpoint. IMPORTANT: full syncmode.
height: 7500000 # Initial block number from which sync will be started.
min_confirmations: 6 # Minimal confirmations needed for withdraw and deposit confirmation.
explorer:
address: https://etherscan.io/address/#{address}
transaction: https://etherscan.io/tx/#{txid}
status: disabled
- key: btc-testnet
name: Bitcoin Testnet
client: bitcoin # API client name.
server: http://user:password@127.0.0.1:18332 # Public Bitcoin node endpoint.
height: 1500000 # Initial block number from which sync will be started.
min_confirmations: 6 # Minimal confirmations needed for withdraw and deposit confirmation.
explorer:
address: https://testnet.blockchain.info/address/#{address}
transaction: https://testnet.blockchain.info/tx/#{txid}
status: active
<% end %>

View File

@@ -0,0 +1,99 @@
<% if ENV['CURRENCIES_CONFIG'] %>
<%= File.read(ENV['CURRENCIES_CONFIG']) %>
<% else %>
- id: usd
name: US Dollar
type: fiat
precision: 2
base_factor: 1
visible: true
deposit_enabled: true
withdrawal_enabled: true
min_deposit_amount: 0
min_collection_amount: 0
withdraw_limit_24h: 100
withdraw_limit_72h: 200
deposit_fee: 0
withdraw_fee: 0
position: 1
options: {}
- id: btc
name: Bitcoin
blockchain_key: btc-testnet
type: coin
precision: 8
base_factor: 100_000_000
visible: true
deposit_enabled: true
withdrawal_enabled: true
# Deposits with less amount are skipped during blockchain synchronization.
# We advise to set value 10 times bigger than the network fee to prevent losses.
min_deposit_amount: 0.0000356
min_collection_amount: 0.0000356
withdraw_limit_24h: 0.1
withdraw_limit_72h: 0.2
deposit_fee: 0
withdraw_fee: 0
position: 2
options: {}
- id: eth
name: Ethereum
blockchain_key: eth-rinkeby
type: coin
precision: 8
base_factor: 1_000_000_000_000_000_000
visible: true
deposit_enabled: true
withdrawal_enabled: true
# Deposits with less amount are skipped during blockchain synchronization.
# We advise to set value 10 times bigger than the network fee to prevent losses.
min_deposit_amount: 0.00021
min_collection_amount: 0.00021
withdraw_limit_24h: 0.2
withdraw_limit_72h: 0.5
deposit_fee: 0
withdraw_fee: 0
position: 3
options:
# ETH tx fees configurations.
#
# Maximum amount of gas you're willing to spend on a particular transaction.
gas_limit: 21_000
# Internal price that is paid for running a transaction on the Ethereum network.
gas_price: 1_000_000_000
- id: trst
name: WeTrust
blockchain_key: eth-rinkeby
parent_id: eth
type: coin
precision: 8
base_factor: 1_000_000 # IMPORTANT: Don't forget to update this variable according
# to your ERC20-based currency requirements
# (usually can be found on the official website).
visible: true
deposit_enabled: true
withdrawal_enabled: true
# Deposits with less amount are skipped during blockchain synchronization.
# We advise to set value 10 times bigger than the network fee to prevent losses.
# NOTE: Network fee is paid in ETH but min_deposit_amount is in TRST.
min_deposit_amount: 2
min_collection_amount: 2
withdraw_limit_24h: 300
withdraw_limit_72h: 600
deposit_fee: 0
withdraw_fee: 0
position: 4
options:
# ERC20 tx fees configurations.
#
# Maximum amount of gas you're willing to spend on a particular transaction.
gas_limit: 90_000
# Internal price that is paid for running a contract on the Ethereum network.
gas_price: 1_000_000_000
#
# ERC20 configuration.
erc20_contract_address: '0x0000000000000000000000000000000000000000' # Always wrap this value in quotes!
<% end %>

View File

@@ -0,0 +1,4 @@
- id: 1
kind: 'fiat'
kyc_level: 1
limit_24_hour: 500000000

View File

@@ -0,0 +1,28 @@
<% if ENV['ENGINES_CONFIG'] %>
<%= File.read(ENV['ENGINES_CONFIG']) %>
<% else %>
- name: peatio-default-engine
driver: peatio
state: online
- name: local-finex-spot-engine
driver: finex-spot
state: online
- name: opendax-finex-spote-engine
driver: opendax
uid: U123456789
url: https://www.opendax.io/api/v2/finex
key: ""
secret: ""
data: {}
# The data field for store some special engines metadata
# Can be used in upstream worker
# Example for upstream:
# {
# "rest"=>"https://url",
# "websocket"=>"wss://url",
# "trade_proxy"=>true,
# "orderbook_proxy"=>"true"
# }
# }
state: online
<% end %>

View File

@@ -0,0 +1,81 @@
<% if ENV['MARKETS_CONFIG'] %>
<%= File.read(ENV['MARKETS_CONFIG']) %>
<% else %>
- id: btcusd
base_unit: btc
quote_unit: usd
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 100
state: enabled
data: {}
- id: ethusd
base_unit: eth
quote_unit: usd
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 101
state: enabled
data: {}
- id: trstusd
base_unit: trst
quote_unit: usd
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 102
state: enabled
data: {}
- id: ethbtc
base_unit: eth
quote_unit: btc
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 103
state: enabled
data: {}
- id: trstbtc
base_unit: trst
quote_unit: btc
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 104
state: enabled
data: {}
- id: trsteth
base_unit: trst
quote_unit: eth
engine_name: peatio-default-engine
amount_precision: 4
price_precision: 4
min_price: 0.0001
max_price: 0.0
min_amount: 0.0001
position: 105
state: enabled
data: {}
<% end %>

View File

@@ -0,0 +1,28 @@
- id: 1
uid: '1'
email: 'test1@test.com'
level: 2
role: 'admin'
group: 'vip-3'
state: 'active'
- id: 2
uid: '2'
email: 'test2@test.com'
level: 2
role: 'admin'
group: 'vip-3'
state: 'active'
- id: 3
uid: '3'
email: 'test3@test.com'
level: 2
role: 'admin'
group: 'vip-3'
state: 'active'

View File

@@ -0,0 +1,29 @@
<% if ENV['TRADING_FEES_CONFIG'] %>
<%= File.read(ENV['TRADING_FEES_CONFIG']) %>
<% else %>
- market_id: any
group: any
maker: 0.002
taker: 0.002
- market_id: any
group: vip-0
maker: 0.001
taker: 0.002
- market_id: any
group: vip-1
maker: 0.0008
taker: 0.0018
- market_id: any
group: vip-2
maker: 0.0006
taker: 0.0016
- market_id: any
group: vip-3
maker: 0.0
taker: 0.0014
<% end %>

View File

@@ -0,0 +1,108 @@
<% if ENV['WALLETS_CONFIG'] %>
<%= File.read(ENV['WALLETS_CONFIG']) %>
<% else %>
- name: Ethereum Deposit Wallet
blockchain_key: eth-rinkeby
currency_ids: eth,trst
# Address where deposits will be collected to.
address: '0x2b9fBC10EbAeEc28a8Fc10069C0BC29E45eBEB9C' # IMPORTANT: Always wrap this value in quotes!
kind: deposit # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 0.0
status: active
gateway: geth # Gateway client name.
settings:
#
# Geth gateway client settings.
uri: http://127.0.0.1:8545
secret: 'changeme'
- name: Ethereum Hot Wallet
blockchain_key: eth-rinkeby
currency_ids: eth,trst
# Address where deposits will be collected to.
address: '0x270704935783087a01c7a28d8f2d8f01670c8050' # IMPORTANT: Always wrap this value in quotes!
kind: hot # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 100.0
status: active
gateway: geth # Gateway client name.
settings:
#
# Geth gateway client settings.
uri: http://127.0.0.1:8545
secret: 'test'
- name: Ethereum Warm Wallet
blockchain_key: eth-rinkeby
currency_ids: eth,trst
# Address where deposits will be collected to.
address: '0x2b9fBC10EbAeEc28a8Fc10069C0BC29E45eBEB9C' # IMPORTANT: Always wrap this value in quotes!
kind: warm # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 1000.0
status: active
gateway: geth # Gateway client name.
settings:
#
# Geth gateway client settings.
uri: http://127.0.0.1:8545
secret: 'test'
- name: Ethereum Wallet for paying ERC20 fees
blockchain_key: eth-rinkeby
currency_ids: eth
# Address where deposits will be collected to.
address: '0x270704935783087a01c7a28d8f2d8f01670c8050' # IMPORTANT: Always wrap this value in quotes!
kind: fee # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 100.0
status: active
gateway: geth # Gateway client name.
settings:
#
# Geth gateway client settings.
uri: http://127.0.0.1:8545
secret: 'test'
- name: Bitcoin Deposit Wallet
blockchain_key: btc-testnet
currency_ids: btc
# Address where deposits will be collected to.
address: '2N4qYjye5yENLEkz4UkLFxzPaxJatF3kRwf' # IMPORTANT: Always wrap this value in quotes!
kind: deposit # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 0.0
status: active
gateway: bitcoind # Gateway client name.
settings:
#
# Bitcoind gateway client settings.
uri: http://user:password@127.0.0.1:18332
- name: Bitcoin Hot Wallet
blockchain_key: btc-testnet
currency_ids: btc
# Address where deposits will be collected to.
address: '2N4qYjye5yENLEkz4UkLFxzPaxJatF3kRwf' # IMPORTANT: Always wrap this value in quotes!
kind: hot # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 0.0
status: active
gateway: bitcoind # Gateway client name.
settings:
#
# Bitcoind gateway client settings.
uri: http://user:password@127.0.0.1:18332
# skip_deposit_collection - defines if deposit will be collected to
# this wallet. Supported values: true | false. By default `false`.
skip_deposit_collection: true
- name: Bitcoin Warm Wallet
blockchain_key: btc-testnet
currency_ids: btc
# Address where deposits will be collected to.
address: '2N4qYjye5yENLEkz4UkLFxzPaxJatF3kRwf' # IMPORTANT: Always wrap this value in quotes!
kind: warm # Wallet kind (deposit, hot, warm, cold or fee).
max_balance: 0.0
status: active
gateway: bitcoind # Gateway client name.
settings:
#
# Bitcoind gateway client settings.
uri: http://user:password@127.0.0.1:18332
<% end %>

View File

@@ -0,0 +1,21 @@
<% if ENV['WHITELISTED_CONTRACTS'] %>
<%= File.read(ENV['WHITELISTED_CONTRACTS']) %>
<% else %>
- blockchain_key: eth-mainet
address: '0x6c0b51971650d28821ce30b15b02b9826a20b129'
state: active
- blockchain_key: eth-mainet
address: '0x1522900b6dafac587d499a862861c0869be6e428'
state: active
- blockchain_key: eth-rinkeby
address: '0xbbd602bb278edff65cbc967b9b62095ad5be23a3'
state: active
- blockchain_key: eth-rinkeby
address: '0xe3cb6897d83691a8eb8458140a1941ce1d6e6dac'
state: active
<% end %>

View File

@@ -0,0 +1,9 @@
<% if ENV['WITHDRAW_LIMITS_CONFIG'] %>
<%= File.read(ENV['WITHDRAW_LIMITS_CONFIG']) %>
<% else %>
- kyc_level: any
group: any
# limits in USD
limit_24_hour: 100
limit_1_month: 1000
<% end %>