KYC/KYB API and idempotency support π€―
New feature:- KYC/KYB verification endpoints
PATCH /customers/{id}/additional-informationβ Submit KYC/KYB dataPOST /customers/{id}/documentsβ Upload verification documentsPOST /customers/{id}/associated-partiesβ Add UBOs, shareholders, and representativesGET /customers/{id}/associated-partiesβ List associated partiesGET /customers/{id}/associated-parties/{associatedPartyId}β Read an associated partyPOST /customers/{id}/verificationsβ Start a verificationGET /customers/{id}/verifications/{verificationId}β Read verification status
additionalInformationin customer response
additionalInformation object with all submitted KYC/KYB data.- Multi-level corporate structures
parentId field, allowing you to nest shareholders across multiple levels of ownership hierarchy.- Idempotency support
POST, PUT, PATCH) now accept an Idempotency-Key header to prevent duplicate operations. Keys expire after 24 hours. See Idempotency for details.Individual customers and bank account holders π₯³
New feature:- Individual customer type
type: "INDIVIDUAL" for natural persons. Individual customers require name, taxId, and birthDate fields.- Individual bank account holders
birthDate is optional.- Individual bank account identifier key type as CPF
CPF as a valid keyType identifier for PIX.Enhancement:- New relationship types for bank account holders
FRIEND, RELATIVE, and EMPLOYEE to the available relationship types for bank account holders.Multi-blockchain support π₯
New feature:- Multiple wallets per customer
wallets array includes blockchain, address, block explorer link, stablecoin balances, and default blockchain indication.- Blockchain field in transactions
blockchain field. If not specified, the projectβs default blockchain is used.- Blockchain field in exchange rates
blockchain field. The response indicates which blockchain was used for rate calculation.Enhancement:- Improved balance tracking
-
walletandbalancesfields deprecated on customers: Migrate to the newwalletsarray. Affected endpoints:POST /customers,GET /customers. -
Default partner fee removed: If no
partnerFeeIdis provided, partner fees will be zero. Remove any logic that depends on a default fee. Affected endpoints:GET /partner-fees,POST /partner-fees.
Transaction limits response improved β‘
Enhancement:- Transaction limits now include usage tracking
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.-
transactionLimitsno longer returned by default: ThetransactionLimitsfield is no longer included inGET /customers/{id}responses by default. Use the new query parameterincludeTransactionLimits=trueto retrieve transaction limits. -
transactionLimitsremoved from customer listing: TheGET /customersendpoint no longer returns thetransactionLimitsfield in the response array. - 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.
SEPA and SWIFT are live π
New feature:- SEPA support now available
- SWIFT support now available
- Purpose field now returned in transaction responses
purpose field is now included in transaction responses under the request object, providing full visibility of the original transaction intent.- Target amount visibility improved
targetAmount in the receipt object when the conversion is complete, ensuring you always have access to the final conversion amounts.- Bank account ordering updated
Bank Accounts are live π
New feature:- Supplier payments now available
/bank-accounts endpoint allows you to register and manage bank accounts for supplier payments. Refer to the Create a Bank Account for details.Enhancement:-
PROCESSINGstatus renamed toTRANSFERRING_STABLECOIN -
state.blockchainmoved tostate.receipt
receipt object includes transactionHash and blockExplorerUrl fields for better transaction tracking.purposenow required for on-ramp and off-ramp transactions
purpose field. Requests without this field will be rejected.-
On-ramp:
payment.railmoved to request levelrail -
Off-ramp:
customerIdandpaymentobject removed, usebankAccountIdonly -
Exchange Rate:
railandcustomerIdparameters now required