Skip to main content
January 8, 2026
v2.4.0

Individual customers and bank account holders 🥳

New feature:
  1. Individual customer type
Customers can now be created with type: "INDIVIDUAL" for natural persons. Individual customers require name, taxId, and birthdate fields.
{
  "type": "INDIVIDUAL",
  "name": "William Default",
  "taxId": "100.100.100-01",
  "birthDate": "1990-01-01"
}
  1. Individual bank account holders
Bank accounts now support individual holders with the same structure. For counterparty bank accounts, birthDate is optional.
  1. Individual bank account identifier key type as CPF
Bank account now support CPF as a valid keyType identifier for PIX.Enhancement:
  1. New relationship types for bank account holders
Added FRIEND, RELATIVE, and EMPLOYEE to the available relationship types for bank account holders.
January 6, 2026
v2.3.0

Multi-blockchain support 🔥

New feature:
  1. Multiple wallets per customer
Customers now support multiple wallets, one per blockchain. The new wallets array includes blockchain, address, block explorer link, stablecoin balances, and default blockchain indication.
{
  "wallets": [
    {
      "blockchain": "POLYGON",
      "address": "0x...",
      "blockExplorerUrl": "https://polygonscan.com/address/0x...",
      "isDefault": true,
      "balances": [
        { "stablecoin": "USDC", "balance": "1000.00" }
      ]
    }
  ]
}
  1. Blockchain field in transactions
All transactions (on-ramp, off-ramp, transfer) now accept an optional blockchain field. If not specified, the project’s default blockchain is used.
{
  "blockchain": "BASE",
  "sourceCurrency": "BRL",
  "sourceAmount": "1000.00",
  "targetCurrency": "USDC"
}
  1. Blockchain field in exchange rates
Exchange rate requests now accept an optional blockchain field. The response indicates which blockchain was used for rate calculation.Enhancement:
  1. Improved balance tracking
Balances are now tracked per blockchain and per stablecoin, providing better clarity for multi-network operations.Deprecated:
Transition period: Until January 26, 2026, both old and new formats will be returned. After this date, only the new format will be available.
  1. wallet and balances fields deprecated on customers: Migrate to the new wallets array. Affected endpoints: POST /customers, GET /customers.
  2. Default partner fee removed: If no partnerFeeId is provided, partner fees will be zero. Remove any logic that depends on a default fee. Affected endpoints: GET /partner-fees, POST /partner-fees.
December 15, 2025
v2.2.0

Transaction limits response improved ⚡

Enhancement:
  1. Transaction limits now include usage tracking
When using includeTransactionLimits=true, the transactionLimits object now returns detailed usage information with used and remaining fields for daily and monthly limits, giving you real-time visibility into your customer’s limit consumption.
{
  "transactionLimits": {
    "single": { "max": "10000.00" },
    "daily": {
      "max": "100000.00",
      "used": "0.00",
      "remaining": "100000.00"
    },
    "monthly": {
      "max": "1000000.00",
      "used": "0.00",
      "remaining": "1000000.00"
    }
  }
}
Deprecated:
This is a breaking change. Update your integration before deployment.
  1. transactionLimits no longer returned by default: The transactionLimits field is no longer included in GET /customers/{id} responses by default. Use the new query parameter includeTransactionLimits=true to retrieve transaction limits.
  2. transactionLimits removed from customer listing: The GET /customers endpoint no longer returns the transactionLimits field in the response array.
  3. 10-second timelock removed from exchange rates: The 10-second timelock option is no longer available. The 30-second timelock now has no additional fees, and fees for other timelock options have been optimized.
November 23, 2025
v2.1.0

SEPA and SWIFT are live 🚀

New feature:
  1. SEPA support now available
You can now create bank accounts and execute transactions using SEPA (Single Euro Payments Area) for EUR payments across Europe. SEPA provides instant settlement for transactions under $100k and 1 business day settlement for larger amounts.
{
  "rail": "SEPA",
  "sourceCurrency": "EUR",
  "sourceAmount": "10000.00",
  "targetCurrency": "USDC",
  "purpose": "PERSONAL_ACCOUNT"
}
  1. SWIFT support now available
You can now create bank accounts and execute transactions using SWIFT for USD international wire transfers. SWIFT enables global payments with 1-5 business day settlement times.
{
  "rail": "SWIFT",
  "sourceCurrency": "USD",
  "sourceAmount": "10000.00",
  "targetCurrency": "USDC",
  "purpose": "PERSONAL_ACCOUNT"
}
For complete coverage details, see Coverage.Enhancement:
  1. Purpose field now returned in transaction responses
The purpose field is now included in transaction responses under the request object, providing full visibility of the original transaction intent.
  1. Target amount visibility improved
Transaction responses now consistently return targetAmount in the receipt object when the conversion is complete, ensuring you always have access to the final conversion amounts.
  1. Bank account ordering updated
Bank accounts are now ordered by creation date (newest first) instead of by ID, making it easier to find recently added accounts.
October 27, 2024
v2.0.0

Bank Accounts are live 🎉

New feature:
  1. Supplier payments now available
You can now send off-ramp funds to bank accounts that don’t belong to the registered customer. This enables direct supplier payments.The new /bank-accounts endpoint allows you to register and manage bank accounts for supplier payments. Refer to the Create a Bank Account for details.Enhancement:
  1. PROCESSING status renamed to TRANSFERRING_STABLECOIN
  2. state.blockchain moved to state.receipt
The new receipt object includes transactionHash and blockExplorerUrl fields for better transaction tracking.
  1. purpose now required for on-ramp and off-ramp transactions
For compliance reasons, all transaction requests must include a purpose field. Requests without this field will be rejected.
  1. On-ramp: payment.rail moved to request level rail
  2. Off-ramp: customerId and payment object removed, use bankAccountId only
  3. Exchange Rate: rail and customerId parameters now required