config split

This commit is contained in:
Stephan D
2026-03-17 15:30:21 +01:00
parent 231347431e
commit b350f655d9
67 changed files with 1299 additions and 67 deletions

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50061"
advertise_host: "dev-billing-documents"
advertise_host: "sendico_billing_documents"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,48 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50061"
advertise_host: "dev-billing-documents"
enable_reflection: true
enable_health: true
metrics:
address: ":9409"
database:
driver: mongodb
settings:
host_env: DOCUMENTS_MONGO_HOST
port_env: DOCUMENTS_MONGO_PORT
database_env: DOCUMENTS_MONGO_DATABASE
user_env: DOCUMENTS_MONGO_USER
password_env: DOCUMENTS_MONGO_PASSWORD
auth_source_env: DOCUMENTS_MONGO_AUTH_SOURCE
replica_set_env: DOCUMENTS_MONGO_REPLICA_SET
documents:
issuer:
logo_path: "assets/logo.png"
templates:
acceptance_path: "templates/acceptance.tpl"
protection:
owner_password: "sendico-documents"
storage:
driver: local_fs
local:
root_path: "tmp/documents"
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Billing Documents Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50060"
advertise_host: "dev-billing-fees"
advertise_host: "sendico_billing_fees"
enable_reflection: true
enable_health: true
@@ -36,7 +36,7 @@ messaging:
buffer_size: 1024
oracle:
address: "dev-fx-oracle:50051"
address: "sendico_fx_oracle:50051"
dial_timeout_seconds: 5
call_timeout_seconds: 3
insecure: true

View File

@@ -0,0 +1,42 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50060"
advertise_host: "dev-billing-fees"
enable_reflection: true
enable_health: true
metrics:
address: ":9402"
database:
driver: mongodb
settings:
host_env: FEES_MONGO_HOST
port_env: FEES_MONGO_PORT
database_env: FEES_MONGO_DATABASE
user_env: FEES_MONGO_USER
password_env: FEES_MONGO_PASSWORD
auth_source_env: FEES_MONGO_AUTH_SOURCE
replica_set_env: FEES_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Billing Fees Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
oracle:
address: "dev-fx-oracle:50051"
dial_timeout_seconds: 5
call_timeout_seconds: 3
insecure: true

View File

@@ -0,0 +1,21 @@
runtime:
shutdown_timeout_seconds: 15
metrics:
address: ":9405"
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Discovery Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
registry:
kv_ttl_seconds: 3600

View File

@@ -76,7 +76,7 @@ api:
root_path: ./storage
chain_gateway:
address: dev-tron-gateway:50071
address: sendico_tron_gateway:50071
address_env: TRON_GATEWAY_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
@@ -86,25 +86,25 @@ api:
token_symbol: USDT
contract_address: ""
ledger:
address: dev-ledger:50052
address: sendico_ledger:50052
address_env: LEDGER_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_orchestrator:
address: dev-payments-orchestrator:50062
address: sendico_payments_orchestrator:50062
address_env: PAYMENTS_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_quotation:
address: dev-payments-quotation:50064
address: sendico_payments_quotation:50064
address_env: PAYMENTS_QUOTE_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_methods:
address: dev-payments-methods:50066
address: sendico_payments_methods:50066
address_env: PAYMENTS_METHODS_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5

146
api/edge/bff/config.local.yml Executable file
View File

@@ -0,0 +1,146 @@
http_server:
listen_address: :8081
read_header_timeout: 60
shutdown_timeout: 5
api:
amplitude:
ampli_environment_env: AMPLI_ENVIRONMENT
middleware:
api_protocol_env: API_PROTOCOL
domain_env: SERVICE_HOST
api_endpoint_env: API_ENDPOINT
signature:
secret_key_env: API_ENDPOINT_SECRET
algorithm: HS256
CORS:
max_age: 300
allowed_origins:
- "*"
allowed_methods:
- "GET"
- "POST"
- "PUT"
- "PATCH"
- "DELETE"
- "OPTIONS"
allowed_headers:
- "Accept"
- "Authorization"
- "Content-Type"
- "X-Requested-With"
exposed_headers:
allow_credentials: false
websocket:
endpoint_env: WS_ENDPOINT
timeout: 60
message_broker:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Sendico Backend server
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
# type: in-process
# settings:
# buffer_size: 10
token:
expiration_hours:
account: 24
refresh: 720
length: 32
password:
token_length: 32
check:
min_length: 8
digit: true
upper: true
lower: true
special: true
storage:
# driver: aws_s3
# settings:
# access_key_id_env: S3_ACCESS_KEY_ID
# secret_access_key_env: S3_ACCESS_KEY_SECRET
# region_env: S3_REGION
# bucket_name_env: S3_BUCKET_NAME
driver: local_fs
settings:
root_path: ./storage
chain_gateway:
address: dev-tron-gateway:50071
address_env: TRON_GATEWAY_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
default_asset:
chain: TRON_NILE
token_symbol: USDT
contract_address: ""
ledger:
address: dev-ledger:50052
address_env: LEDGER_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_orchestrator:
address: dev-payments-orchestrator:50062
address_env: PAYMENTS_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_quotation:
address: dev-payments-quotation:50064
address_env: PAYMENTS_QUOTE_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
payment_methods:
address: dev-payments-methods:50066
address_env: PAYMENTS_METHODS_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
callbacks:
default_event_types:
- payment.status.updated
default_status: active
secret_path_prefix: sendico/callbacks
secret_field: value
secret_length_bytes: 32
vault:
address: "http://dev-vault:8200"
token_env: VAULT_TOKEN
token_file_env: VAULT_TOKEN_FILE
namespace: ""
mount_path: kv
app:
database:
driver: mongodb
settings:
host_env: MONGO_HOST
port_env: MONGO_PORT
database_env: MONGO_DATABASE
user_env: MONGO_USER
password_env: MONGO_PASSWORD
auth_source_env: MONGO_AUTH_SOURCE
replica_set_env: MONGO_REPLICA_SET
enforcer:
driver: native
settings:
model_path_env: PERMISSION_MODEL
adapter:
collection_name_env: PERMISSION_COLLECTION
database_name_env: MONGO_DATABASE
timeout_seconds_env: PERMISSION_TIMEOUT
is_filtered_env: PERMISSION_IS_FILTERED

View File

@@ -0,0 +1,55 @@
runtime:
shutdown_timeout_seconds: 15
metrics:
address: ":9420"
database:
driver: mongodb
settings:
host_env: CALLBACKS_MONGO_HOST
port_env: CALLBACKS_MONGO_PORT
database_env: CALLBACKS_MONGO_DATABASE
user_env: CALLBACKS_MONGO_USER
password_env: CALLBACKS_MONGO_PASSWORD
auth_source_env: CALLBACKS_MONGO_AUTH_SOURCE
replica_set_env: CALLBACKS_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Edge Callbacks Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
delivery:
worker_concurrency: 8
worker_poll_ms: 200
lock_ttl_seconds: 30
request_timeout_ms: 10000
max_attempts: 8
min_delay_ms: 1000
max_delay_ms: 300000
jitter_ratio: 0.2
security:
require_https: true
allowed_hosts: []
allowed_ports: [443]
dns_resolve_timeout_ms: 2000
secrets:
cache_ttl_seconds: 60
static: {}
vault:
address: "http://dev-vault:8200"
token_env: VAULT_TOKEN
namespace: ""
mount_path: kv
default_field: value

View File

@@ -0,0 +1,74 @@
poll_interval_seconds: 30
market:
sources:
- driver: BINANCE
settings:
base_url: "https://api.binance.com"
- driver: COINGECKO
settings:
base_url: "https://api.coingecko.com/api/v3"
- driver: CBR
settings:
base_url: "https://www.cbr.ru"
user_agent: "Mozilla/5.0 (compatible; SendicoFX/1.0; +https://app.sendico.io)"
accept_header: "application/xml,text/xml;q=0.9,*/*;q=0.8"
pairs:
BINANCE:
- base: "USDT"
quote: "EUR"
symbol: "EURUSDT"
invert: true
- base: "USDT"
quote: "USD"
symbol: "USDTUSD"
invert: false
- base: "UAH"
quote: "USDT"
symbol: "USDTUAH"
invert: true
- base: "USDC"
quote: "EUR"
symbol: "EURUSDC"
invert: true
COINGECKO:
- base: "USDT"
quote: "RUB"
symbol: "tether:rub"
CBR:
- base: "USD"
quote: "RUB"
symbol: "USD"
provider: "cbr"
- base: "EUR"
quote: "RUB"
symbol: "EUR"
provider: "cbr"
metrics:
enabled: true
address: ":9102"
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: FX Ingestor
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
database:
driver: mongodb
settings:
host_env: FX_MONGO_HOST
port_env: FX_MONGO_PORT
database_env: FX_MONGO_DATABASE
user_env: FX_MONGO_USER
password_env: FX_MONGO_PASSWORD
auth_source_env: FX_MONGO_AUTH_SOURCE
replica_set_env: FX_MONGO_REPLICA_SET

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50051"
advertise_host: "dev-fx-oracle"
advertise_host: "sendico_fx_oracle"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,38 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50051"
advertise_host: "dev-fx-oracle"
enable_reflection: true
enable_health: true
metrics:
address: ":9400"
max_quote_ttl_ms: 600000
database:
driver: mongodb
settings:
host_env: FX_MONGO_HOST
port_env: FX_MONGO_PORT
database_env: FX_MONGO_DATABASE
user_env: FX_MONGO_USER
password_env: FX_MONGO_PASSWORD
auth_source_env: FX_MONGO_AUTH_SOURCE
replica_set_env: FX_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: FX Oracle
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50075"
advertise_host: "dev-aurora-gateway"
advertise_host: "sendico_aurora_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,62 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50075"
advertise_host: "dev-aurora-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9405"
database:
driver: mongodb
settings:
host_env: AURORA_GATEWAY_MONGO_HOST
port_env: AURORA_GATEWAY_MONGO_PORT
database_env: AURORA_GATEWAY_MONGO_DATABASE
user_env: AURORA_GATEWAY_MONGO_USER
password_env: AURORA_GATEWAY_MONGO_PASSWORD
auth_source_env: AURORA_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: AURORA_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Aurora Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
aurora:
base_url: "http://aurora-sim.local"
project_id: 1001
secret_key: "aurora-dev-simulated"
allowed_currencies: ["RUB"]
require_customer_address: false
request_timeout_seconds: 15
status_success: "success"
status_processing: "processing"
strict_operation_mode: false
gateway:
id: "mcards"
is_enabled: true
network: "MIR"
currencies: ["RUB"]
limits:
per_tx_min_amount: "0"
http:
callback:
address: ":8084"
path: "/aurora/callback"
allowed_cidrs: []
max_body_bytes: 1048576

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50070"
advertise_host: "dev-chain-gateway"
advertise_host: "sendico_chain_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,70 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50070"
advertise_host: "dev-chain-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9406"
database:
driver: mongodb
settings:
host_env: CHAIN_GATEWAY_MONGO_HOST
port_env: CHAIN_GATEWAY_MONGO_PORT
database_env: CHAIN_GATEWAY_MONGO_DATABASE
user_env: CHAIN_GATEWAY_MONGO_USER
password_env: CHAIN_GATEWAY_MONGO_PASSWORD
auth_source_env: CHAIN_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: CHAIN_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Chain Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
chains:
- name: arbitrum_sepolia
chain_id: 421614
native_token: ETH
rpc_url_env: CHAIN_GATEWAY_RPC_URL
gas_topup_policy:
buffer_percent: 0.20
min_native_balance: 0.002
rounding_unit: 0.001
max_topup: 0.02
tokens:
# Test USDT (official test deployment)
- symbol: USDT
contract: "0x5c6b6d1f2f2f6d7b8a9c3e4f5a6b7c8d9e0f1234"
# Test USDC (Circle test deployment)
- symbol: USDC
contract: "0x75faf114eafb1bdbe2f0316df893fd58ce46aa4d"
key_management:
driver: vault
settings:
address: "http://dev-vault:8200"
token_env: VAULT_TOKEN
namespace: ""
mount_path: kv
key_prefix: gateway/chain/wallets
cache:
wallet_balance_ttl_seconds: 120
rpc_request_timeout_seconds: 15

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50080"
advertise_host: "dev-chsettle-gateway"
advertise_host: "sendico_chsettle_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,52 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50080"
advertise_host: "dev-chsettle-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9406"
database:
driver: mongodb
settings:
host_env: CHSETTLE_GATEWAY_MONGO_HOST
port_env: CHSETTLE_GATEWAY_MONGO_PORT
database_env: CHSETTLE_GATEWAY_MONGO_DATABASE
user_env: CHSETTLE_GATEWAY_MONGO_USER
password_env: CHSETTLE_GATEWAY_MONGO_PASSWORD
auth_source_env: CHSETTLE_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: CHSETTLE_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: ChimeraSettle Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
gateway:
rail: "SETTLEMENT"
target_chat_id_env: CHSETTLE_GATEWAY_CHAT_ID
timeout_seconds: 345600
accepted_user_ids: []
success_reaction: "\U0001FAE1"
treasury:
execution_delay: 60s
poll_interval: 60s
ledger:
timeout: 5s
limits:
max_amount_per_operation: "1000000"
max_daily_amount: "5000000"

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50075"
advertise_host: "dev-mntx-gateway"
advertise_host: "sendico_mntx_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,62 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50075"
advertise_host: "dev-mntx-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9404"
database:
driver: mongodb
settings:
host_env: MNTX_GATEWAY_MONGO_HOST
port_env: MNTX_GATEWAY_MONGO_PORT
database_env: MNTX_GATEWAY_MONGO_DATABASE
user_env: MNTX_GATEWAY_MONGO_USER
password_env: MNTX_GATEWAY_MONGO_PASSWORD
auth_source_env: MNTX_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: MNTX_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Monetix Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
mcards:
base_url_env: MONETIX_BASE_URL
project_id_env: MONETIX_PROJECT_ID
secret_key_env: MONETIX_SECRET_KEY
allowed_currencies: ["RUB"]
require_customer_address: false
request_timeout_seconds: 15
status_success: "success"
status_processing: "processing"
strict_operation_mode: false
gateway:
id: "mcards"
is_enabled: true
network: "MIR"
currencies: ["RUB"]
limits:
per_tx_min_amount: "0"
http:
callback:
address: ":8084"
path: "/monetix/callback"
allowed_cidrs: []
max_body_bytes: 1048576

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50080"
advertise_host: "dev-tgsettle-gateway"
advertise_host: "sendico_tgsettle_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,52 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50080"
advertise_host: "dev-tgsettle-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9406"
database:
driver: mongodb
settings:
host_env: TGSETTLE_GATEWAY_MONGO_HOST
port_env: TGSETTLE_GATEWAY_MONGO_PORT
database_env: TGSETTLE_GATEWAY_MONGO_DATABASE
user_env: TGSETTLE_GATEWAY_MONGO_USER
password_env: TGSETTLE_GATEWAY_MONGO_PASSWORD
auth_source_env: TGSETTLE_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: TGSETTLE_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: TGSettle Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
gateway:
rail: "SETTLEMENT"
target_chat_id_env: TGSETTLE_GATEWAY_CHAT_ID
timeout_seconds: 345600
accepted_user_ids: []
success_reaction: "\U0001FAE1"
treasury:
execution_delay: 60s
poll_interval: 60s
ledger:
timeout: 5s
limits:
max_amount_per_operation: "1000000"
max_daily_amount: "5000000"

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50071"
advertise_host: "dev-tron-gateway"
advertise_host: "sendico_tron_gateway"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,67 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50071"
advertise_host: "dev-tron-gateway"
enable_reflection: true
enable_health: true
metrics:
address: ":9408"
database:
driver: mongodb
settings:
host_env: TRON_GATEWAY_MONGO_HOST
port_env: TRON_GATEWAY_MONGO_PORT
database_env: TRON_GATEWAY_MONGO_DATABASE
user_env: TRON_GATEWAY_MONGO_USER
password_env: TRON_GATEWAY_MONGO_PASSWORD
auth_source_env: TRON_GATEWAY_MONGO_AUTH_SOURCE
replica_set_env: TRON_GATEWAY_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: TRON Gateway Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
chains:
- name: tron_nile
chain_id: 3448148188 # Nile testnet
native_token: TRX
rpc_url_env: TRON_GATEWAY_RPC_URL
grpc:
url_env: TRON_GATEWAY_GRPC_URL
token_env: TRON_GATEWAY_GRPC_TOKEN
force_ipv4: false
gas_topup_policy:
buffer_percent: 0.10
min_native_balance_trx: 10
rounding_unit_trx: 1
max_topup_trx: 100
tokens:
- symbol: USDT
contract: "TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf"
key_management:
driver: vault
settings:
address: "http://dev-vault:8200"
token_env: VAULT_TOKEN
namespace: ""
mount_path: kv
key_prefix: gateway/tron/wallets
cache:
wallet_balance_ttl_seconds: 120
rpc_request_timeout_seconds: 15

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50052"
advertise_host: "dev-ledger"
advertise_host: "sendico_ledger"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,42 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50052"
advertise_host: "dev-ledger"
enable_reflection: true
enable_health: true
metrics:
address: ":9401"
database:
driver: mongodb
settings:
host_env: LEDGER_MONGO_HOST
port_env: LEDGER_MONGO_PORT
database_env: LEDGER_MONGO_DATABASE
user_env: LEDGER_MONGO_USER
password_env: LEDGER_MONGO_PASSWORD
auth_source_env: LEDGER_MONGO_AUTH_SOURCE
replica_set_env: LEDGER_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Ledger Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
# Optional: remove this block to use package defaults.
reliable_publisher:
enabled: true
batch_size: 100
poll_interval_seconds: 1
max_attempts: 5

View File

@@ -0,0 +1,94 @@
http_server:
listen_address: :8081
read_header_timeout: 60
shutdown_timeout: 5
api:
amplitude:
ampli_environment_env: AMPLI_ENVIRONMENT
middleware:
api_protocol_env: API_PROTOCOL
domain_env: SERVICE_HOST
api_endpoint_env: API_ENDPOINT
signature:
secret_key_env: API_ENDPOINT_SECRET
algorithm: HS256
CORS:
max_age: 300
allowed_origins:
- "http://*"
- "https://*"
allowed_methods:
- "GET"
- "POST"
- "PATCH"
- "DELETE"
- "OPTIONS"
allowed_headers:
- "Accept"
- "Authorization"
- "Content-Type"
exposed_headers:
allow_credentials: false
websocket:
endpoint_env: WS_ENDPOINT
timeout: 60
message_broker:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Sendico Notification server
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
# type: in-process
# settings:
# buffer_size: 10
notification:
driver: client
settings:
username_env: MAIL_USER
password_env: MAIL_SECRET
host: "mail.sendico.io"
port: 465
from: "Sendico Tech"
network_timeout: 10
telegram:
bot_token_env: TELEGRAM_BOT_TOKEN
chat_id_env: TELEGRAM_CHAT_ID
thread_id_env: TELEGRAM_THREAD_ID
api_url: "https://api.telegram.org"
timeout_seconds: 10
parse_mode: markdown
localizer:
path: "./i18n"
languages: ["en", "ru"]
service_name: "Sendico"
support: "support@sendico.io"
app:
database:
driver: mongodb
settings:
host_env: MONGO_HOST
port_env: MONGO_PORT
database_env: MONGO_DATABASE
user_env: MONGO_USER
password_env: MONGO_PASSWORD
auth_source_env: MONGO_AUTH_SOURCE
replica_set_env: MONGO_REPLICA_SET
enforcer:
driver: native
settings:
model_path_env: PERMISSION_MODEL
adapter:
collection_name_env: PERMISSION_COLLECTION
database_name_env: MONGO_DATABASE
timeout_seconds_env: PERMISSION_TIMEOUT
is_filtered_env: PERMISSION_IS_FILTERED

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50066"
advertise_host: "dev-payments-methods"
advertise_host: "sendico_payments_methods"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,49 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50066"
advertise_host: "dev-payments-methods"
enable_reflection: true
enable_health: true
metrics:
address: ":9416"
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Payments Methods Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
database:
driver: mongodb
settings:
host_env: PAYMENTS_MONGO_HOST
port_env: PAYMENTS_MONGO_PORT
database_env: PAYMENTS_MONGO_DATABASE
user_env: PAYMENTS_MONGO_USER
password_env: PAYMENTS_MONGO_PASSWORD
auth_source_env: PAYMENTS_MONGO_AUTH_SOURCE
replica_set_env: PAYMENTS_MONGO_REPLICA_SET
permissions_database:
driver: mongodb
settings:
host_env: MONGO_HOST
port_env: MONGO_PORT
database_env: MONGO_DATABASE
user_env: MONGO_USER
password_env: MONGO_PASSWORD
auth_source_env: MONGO_AUTH_SOURCE
replica_set_env: MONGO_REPLICA_SET
enforcer:
driver: native

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50062"
advertise_host: "dev-payments-orchestrator"
advertise_host: "sendico_payments_orchestrator"
enable_reflection: true
enable_health: true

View File

@@ -0,0 +1,61 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50062"
advertise_host: "dev-payments-orchestrator"
enable_reflection: true
enable_health: true
metrics:
address: ":9403"
database:
driver: mongodb
settings:
host_env: PAYMENTS_MONGO_HOST
port_env: PAYMENTS_MONGO_PORT
database_env: PAYMENTS_MONGO_DATABASE
user_env: PAYMENTS_MONGO_USER
password_env: PAYMENTS_MONGO_PASSWORD
auth_source_env: PAYMENTS_MONGO_AUTH_SOURCE
replica_set_env: PAYMENTS_MONGO_REPLICA_SET
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Payments Orchestrator Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
# Retain quote records after expiry to allow long-running payments to complete.
quote_retention_hours: 72
# Service endpoints are sourced from discovery; no static overrides.
card_gateways:
mcards:
funding_address: "TUaWaCkiXwYPKm5qjcB27Lhwv976vPvedE"
fee_wallet_ref: "697a062a248dc785125ccb9e"
# Batch optimizer settings:
# - default_mode disables aggregation for unmatched traffic
# - crypto rule enables aggregation by operation destination for crypto operations
optimizer:
aggregation:
default_mode: "no_optimization"
rules:
- id: "crypto_by_destination"
priority: 100
mode: "merge_by_destination"
group_by: "rail_target"
match:
rail: "CRYPTO"
# Gateway instances and capabilities are sourced from service discovery.

View File

@@ -4,7 +4,7 @@ runtime:
grpc:
network: tcp
address: ":50064"
advertise_host: "dev-payments-quotation"
advertise_host: "sendico_payments_quotation"
enable_reflection: true
enable_health: true
@@ -36,14 +36,14 @@ database:
replica_set_env: PAYMENTS_MONGO_REPLICA_SET
fees:
address: dev-billing-fees:50060
address: sendico_billing_fees:50060
address_env: FEES_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
oracle:
address: dev-fx-oracle:50051
address: sendico_fx_oracle:50051
address_env: ORACLE_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5

View File

@@ -0,0 +1,52 @@
runtime:
shutdown_timeout_seconds: 15
grpc:
network: tcp
address: ":50064"
advertise_host: "dev-payments-quotation"
enable_reflection: true
enable_health: true
metrics:
address: ":9414"
messaging:
driver: NATS
settings:
url_env: NATS_URL
host_env: NATS_HOST
port_env: NATS_PORT
username_env: NATS_USER
password_env: NATS_PASSWORD
broker_name: Payments Quotation Service
max_reconnects: 10
reconnect_wait: 5
buffer_size: 1024
database:
driver: mongodb
settings:
host_env: PAYMENTS_MONGO_HOST
port_env: PAYMENTS_MONGO_PORT
database_env: PAYMENTS_MONGO_DATABASE
user_env: PAYMENTS_MONGO_USER
password_env: PAYMENTS_MONGO_PASSWORD
auth_source_env: PAYMENTS_MONGO_AUTH_SOURCE
replica_set_env: PAYMENTS_MONGO_REPLICA_SET
fees:
address: dev-billing-fees:50060
address_env: FEES_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
oracle:
address: dev-fx-oracle:50051
address_env: ORACLE_ADDRESS
dial_timeout_seconds: 5
call_timeout_seconds: 5
insecure: true
quote_retention_hours: 72