Business payments software that puts you in control

Modern Treasury is a fast, flexible and transparent way
for businesses to move money.

How we compare to

Third-party senders

Third-party senders and payment processors are in the flow of funds, moving your payments into their bank account before sending them to the recipient.
Move money faster
Move money faster

Funds settle in your bank accounts up to 2x faster when they don’t need to be routed through an intermediary.

No limits
No limits

No limits on transaction counts, transaction amounts or aggregate dollar volumes, and no arbitrary holds on your funds.

Full visibility
Full visibility

Track payments from initiation, approval, and completion to cash reconciliation in your bank accounts.

How we compare to

Building your own bank integration

Building your own bank integration requires connecting to the bank’s core transaction processing system.
Zero maintenance costs

We save you the cost of building and maintaining custom bank integrations so that you can focus on your core product.

Ready for growth

Scalable and reliable payments infrastructure that you can trust as you grow payment size, payment volume, or number of bank relationships.

Fewer moving pieces

One place for payments, bank transactions, controls, reconciliation and treasury management.

How we compare to

Scaling a back office team

Manual payment operations processes mean increasing the size of your team to handle large payment volumes.
Secure collaboration

Manage payment operations across teams with role based access controls, access logs and audit trails.

Complete control

Set up complex workflows for payment initiation, approvals and counterparty onboarding with ease.

Efficient processes

Close your books anytime, in real time with Continuous Accounting and Automatic Reconciliation.

Move money however you want.

RTP
ACH
Wire
Check
Book Transfer
Explore global coverage
Arrow

Modern developer tools

Integrate payments with simple REST APIs and webhooks. Modern Treasury abstracts the complexity of making and receiving payments, tracking their status and reconciling them to cash, allowing you to focus on your product and customers.
With our APIs you can:

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/counterparties \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Kenner, Bach & Ledeen",
  "accounts": [{
    "account_type": "checking",
    "routing_details": [{
      "routing_number_type": "aba",
      "routing_number": "026009593"
    }],
    "account_details": [{
      "account_number": "123456789"
    }]
  }]
}'

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
  "type": "ach",
  "amount": 1000,
  "direction": "credit",
  "currency": "USD",
  "originating_account": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
  "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5"
}'

# List payment orders
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json'

# Get payment order
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders/0f8e3719-3dfd-4613-9bbf-c0333781b59f \
  -H 'Content-Type: application/json'

# List balance reports
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/internal_accounts/
internal_account_id/balance_reports \
  -H 'Content-Type: application/json'

# Get balance report
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/internal_accounts/0f8e3719-3dfd-4613-9bbf-c0333781b59f/balance_reports \
  -H 'Content-Type: application/json'

# Create a virtual account
curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/virtual_accounts \
  -H 'Content-Type: application/json' \
  -d '{
  "internal_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
  "name": "Funds on behalf of Alice Jones"
}'

# List virtual accounts
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/virtual_accounts \
  -H 'Content-Type: application/json'

# Create a ledger
curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/ledgers \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Business Ledger",
  "currency": "USD"
}'

# List ledgers
curl --request GET \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/ledgers \
  -H 'Content-Type: application/json'

Explore the docs
Arrow

Try Modern Treasury and see how smooth payment operations can be.