Payment Routes

Create wallet addresses that end-customers can pay in or deposit to

A Payment Route is a permanent blockchain address your end-customer can pay in or deposit to.

When a customer sends crypto — such as BTC, ETH, SOL, USDT, or more — to their payment route address (the "Crypto address" in the above image), Swapped will send these funds to your Swapped Commerce account.

Payment routes are the easiest way to embed stablecoin and crypto deposits into your existing platform.

Payment routes are good for integrators — like you — who want to:

  • enable customers to login to your platform and deposit crypto

  • provide end-users with deposit wallet addresses

End-customers who pay in or deposit to a payment route have their funds automatically swept into the Swapped Commerce account owners balance. This means that you can accept deposits from thousands of customers and have a single master balance for your back-office.

Swapped Commerce merchants can further configure auto-conversion and/or auto-withdrawal rules for specific assets. For example, this means you can:

  • Receive 30+ crypto assets and auto-convert them to USDT or EUR (or any crypto/fiat)

  • Automatically withdraw deposited cryptos to a 3rd party wallet (e.g to your preferred Ethereum Wallet)

  • Or, you can combine the two: convert assets to USDT and automatically withdraw it

  • Want to make sure one asset, like SOL, isn't converted or withdrawn? No problem

After crypto is sent or deposited to a payment route, the Swapped Commerce integrator will receive webhooks if configured using your dashboard. See more here.

To get started, create your first Payment Route:

Create a new payment route for a merchant

post
Authorizations
X-API-KeystringRequired
Body
externalIdstring · max: 100Optional
emailstringOptional
namestring · max: 100Optional
Responses
200

Successful

*/*
post
/v1/payment-routes
POST /v1/payment-routes HTTP/1.1
Host: pay-api.swapped.com
X-API-Key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 202

{
  "externalId": "text",
  "chains": [
    "base"
  ],
  "email": "text",
  "name": "text",
  "kyc": {
    "taxId": "text",
    "addressLine1": "text",
    "addressLine2": "text",
    "city": "text",
    "region": "text",
    "country": "text",
    "postalCode": "text"
  }
}
200

Successful

{
  "data": {
    "paymentRoutes": [
      {
        "id": "text",
        "merchantId": "text",
        "externalId": "text",
        "available": true,
        "address": "text",
        "memo": "text",
        "chainName": "text",
        "supportedCurrencies": [
          "text"
        ],
        "userEmail": "text",
        "userName": "text",
        "createdAt": "2025-12-06",
        "merchant": {
          "id": "text",
          "name": "text",
          "logoUrl": "text",
          "roles": [
            "MERCHANT"
          ],
          "localCurrency": {
            "id": "text",
            "symbol": "text",
            "precision": 1,
            "type": "FIAT",
            "flows": [
              "PAYMENT"
            ],
            "blockchain": {
              "id": "text",
              "name": "text"
            }
          },
          "countryCode": "text",
          "coverPercentage": "text"
        }
      }
    ],
    "pagination": {
      "currentPage": 1,
      "totalPages": 1,
      "totalItems": 1,
      "itemsPerPage": 1
    }
  },
  "message": "text",
  "success": true
}

That's it! Now whenever a deposit is made to this blockchain address, you'll receive the funds to the merchant's account, receive an email notification, and receive webhook information to proceed further.

Generally we see merchants store and save the payment route to their customer, so when they come back to deposit or pay again, the same blockchain address can be used each time.

Last updated