Swipelux

Supported Rails

Human-readable rail catalog and rail request caveats.

The metadata endpoint returns the supported rail catalog. Availability can still depend on customer type, country, currency, verification status, and flow.

Rail Catalog

CategoryRails
Fiat bank transferach, fedwire, sepa, pix, spei, pse, swift
Fiat cardcard, apple_pay
Cryptopolygon, bsc, base, ethereum, arbitrum, optimism, avalanche, tron, solana, stellar, ton

Customer Rail Requests

Customer rail verification currently accepts qualified bank-transfer rails for ach, fedwire, sepa, swift, and pix, plus base aliases for those rails.

VariantRequest examples
Pooledach_pooled, fedwire_pooled, sepa_pooled, swift_pooled, pix_pooled
Namedach_named, fedwire_named, sepa_named, swift_named, pix_named

Customer rail status rows use cfr_* IDs. These are useful for rail tracking, but they are not bank account IDs. Account and payout flows expect acc_* customer account IDs or racc_* recipient account IDs.

If an account, recipient-account, pay-in quote, or payout quote call depends on a rail that is not yet ready_to_use, the API returns 409 rail_not_ready with the acceptable requiredRails and the requestRailEndpoint to call before retrying.

Business Rail Applications

Business customers also have v2 rail-state and rail-application resources:

GET  /v2/customers/business/{customerId}/rails
GET  /v2/customers/business/{customerId}/rails/{rail}
GET  /v2/customers/business/{customerId}/rail-applications
POST /v2/customers/business/{customerId}/rail-applications
GET  /v2/customers/business/{customerId}/rail-applications/{rail}

GET /v2/customers/business/{customerId}/rails returns every exposed rail for that business. Rail discovery statuses are:

StatusMeaning
availableRail is supported for the business and has no application yet
unavailableRail cannot be requested for this business
ready_for_reviewRequired information is present and the application can advance
in_reviewApplication is under review
needs_informationMore information, corrected profile data, or replacement documents are needed
activeRail is approved and usable
declinedApplication was declined

Create or advance applications with:

{
  "data": [
    { "rail": "pse" },
    { "rail": "ach_named", "banks": ["jpmorgan_chase"] }
  ]
}

The response returns successful application resources in data and item-level failures in errors:

{
  "customerId": "cus_business123",
  "data": [
    {
      "id": "cfr_application123",
      "rail": "pse",
      "status": "in_review",
      "reason": {
        "code": "under_review",
        "message": "The rail application is under review."
      },
      "requirements": [],
      "banks": [],
      "submittedAt": "2026-05-29T12:00:00.000Z",
      "updatedAt": "2026-05-29T12:00:00.000Z"
    }
  ],
  "errors": [
    {
      "rail": "sepa_named",
      "code": "rail_unavailable",
      "message": "Named SEPA accounts are not supported yet."
    }
  ]
}

Application resources use the same review vocabulary except available and unavailable, which are rail discovery states only. Responses do not expose enabled, allowed, canSubmit, or a duplicate applicationId; the application id is the cfr_* rail row.

API Reference

OperationUse it for
GET /v1/meta/railsRetrieve the rail catalog.
POST /v1/customers/{customerId}/railsRequest customer rail verification.
GET /v2/customers/business/{customerId}/railsList business rail states.
POST /v2/customers/business/{customerId}/rail-applicationsCreate or advance business rail applications.

On this page