Skip to content

Lumo B2B Platform API (1.0.0)

API reference for company-facing endpoints of Lumo B2B platform.

Scope of this reference:

  • Company auth/profile
  • Orders (prepare/accept/list/get)
  • Company disputes
  • Company wallet + deposits
  • User wallets (per externalId) + user deposits

Not included:

  • Admin endpoints
Download OpenAPI description
Languages
Servers
Mock server
https://b2b-app.lumowallet.io/_mock/apis
Production
https://b2b.lumowallet.io
Staging
https://b2b-staging.lumowallet.io

Company Auth

Company registration, login, and profile management.

Operations

Orders

Quote preparation and order lifecycle operations.

Operations

Disputes

Company dispute creation and listing.

Operations

Company Wallet

Company deposit wallet, balances, and deposit history.

Operations

Get company deposit wallet

Request

Returns company TRON wallet address for incoming USDT (TRC-20). Wallet is auto-created on first request if absent.

Security
apiKeyAuth
curl -i -X GET \
  https://b2b-app.lumowallet.io/_mock/apis/wallets \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Company wallet

Bodyapplication/json
idstring(uuid)required
addressstringrequired

TRON address for USDT TRC-20 deposits

createdAtstring(date-time)required
Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "address": "string", "createdAt": "2019-08-24T14:15:22Z" }

Get wallet balance view

Request

Returns company balance view. usdtBalance reflects company balance used by platform accounting.

Security
apiKeyAuth
curl -i -X GET \
  https://b2b-app.lumowallet.io/_mock/apis/wallets/balance \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Balance

Bodyapplication/json
addressstringrequired
usdtBalancenumberrequired
trxBalancenumberrequired
Response
application/json
{ "address": "string", "usdtBalance": 0, "trxBalance": 0 }

List company deposits

Request

Deposit status lifecycle:

  • new
  • fee_charged
  • aml_pending / aml_passed / aml_failed
  • forwarding
  • completed / failed

Company deposit sweep target is B2B_TREASURY_ADDRESS. Processing fee is retained from incoming deposit amount (not debited from company balance).

Security
apiKeyAuth
Query
statusstring(CompanyDepositStatus)
Enum"new""on_hold_insufficient_balance""fee_charged""aml_pending""aml_passed""aml_failed""forwarding""sweeping""completed""failed"
limitinteger[ 1 .. 200 ]
Default 50
offsetinteger>= 0
Default 0
curl -i -X GET \
  'https://b2b-app.lumowallet.io/_mock/apis/wallets/deposits?status=new&limit=50&offset=0' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Deposits list

Bodyapplication/json
depositsArray of objects(CompanyDeposit)required
deposits[].​idstring(uuid)required
deposits[].​txHashstringrequired
deposits[].​amountnumberrequired
deposits[].​statusstring(CompanyDepositStatus)required
Enum"new""on_hold_insufficient_balance""fee_charged""aml_pending""aml_passed""aml_failed""forwarding""sweeping""completed""failed"
deposits[].​fromAddressstring or null
deposits[].​sweepTxHashstring or null
deposits[].​errorstring or null
deposits[].​blockTimestampstring(date-time)required
deposits[].​createdAtstring(date-time)required
totalintegerrequired
Response
application/json
{ "deposits": [ {} ], "total": 0 }

User Wallets

Per-user wallet management and user deposit history.

Operations