curl --request POST \
--url https://api.example.com/api/v2.1/customer/individual/{customerId}/activation \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--header 'X-Tenant-ID: <x-tenant-id>' \
--data '
{
"code": "<string>",
"userId": "<string>"
}
'{
"iban": "<string>",
"accountNumber": "<string>",
"wallet": {
"walletId": "<string>",
"id": "<string>",
"currency": "<string>",
"balance": "<string>",
"status": "<string>"
},
"status": "<string>",
"activatedAt": "<string>"
}Complete account activation to generate IBAN and create wallet
curl --request POST \
--url https://api.example.com/api/v2.1/customer/individual/{customerId}/activation \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--header 'X-Tenant-ID: <x-tenant-id>' \
--data '
{
"code": "<string>",
"userId": "<string>"
}
'{
"iban": "<string>",
"accountNumber": "<string>",
"wallet": {
"walletId": "<string>",
"id": "<string>",
"currency": "<string>",
"balance": "<string>",
"status": "<string>"
},
"status": "<string>",
"activatedAt": "<string>"
}application/jsoncurl --request POST \
--url https://api.finhub.cloud/api/v2.1/customer/individual/cust_123456789/activation \
--header 'Authorization: Bearer YOUR_TOKEN' \
--header 'X-Tenant-ID: fh_api_finsei_ltd_7f957f77' \
--header 'Content-Type: application/json' \
--data '{
"code": "ACTIVATION_CODE_MED_12345",
"userId": "user_987654321"
}'
```text`n## Example Response
```json
{
"data": {
"iban": "LT123456789012345678",
"accountNumber": "ACC123456789",
"wallet": {
"walletId": "wal_abc123def456",
"id": "wal_abc123def456",
"currency": "EUR",
"balance": "0.00",
"status": "ACTIVE"
},
"status": "ACTIVATED",
"activatedAt": "2025-01-23T11:00:00.000Z"
}
}
```text`n## Activation Requirements
Before activation, ensure the following steps are completed:
1. **Customer Registration** - Account created successfully
2. **Verification Process** - Based on risk level:
- Medium Risk: Identity and document verification
- High Risk: Enhanced due diligence completed
3. **Consent Acceptance** - Required consents processed:
- Terms and Conditions
- Privacy Policy
- Data Processing Consent
## Activation Codes
Activation codes can be:
- **System-generated**: Auto-generated based on customer type and risk level
- **Admin-provided**: Custom codes for specific scenarios
- **Pattern-based**: Following naming conventions like `ACTIVATION_CODE_{RISK}_{ID}`
Examples:
- `ACTIVATION_CODE_MED_12345` - Medium risk customer
- `ACTIVATION_CODE_HIGH_67890` - High risk customer
- `ACTIVATION_CODE_LOW_11111` - Low risk customer
## Post-Activation Actions
After successful activation:
1. **Create Customer Session** - Enable customer login
2. **Add Beneficiaries** - Set up payment recipients
3. **Fund Wallet** - Add initial balance if needed
4. **Set Transaction Limits** - Based on categorization
## Wallet Features
The created wallet includes:
- **Multi-currency support** (initially EUR)
- **Real-time balance tracking**
- **Transaction history**
- **Configurable limits based on risk profile**
### Balance Model
```json
{
"balances": {
"available": "0.00", // Funds immediately usable
"current": "0.00", // Book balance
"locked": "0.00" // Reserved for pending operations
}
}
```text`n## Error Handling
Common activation errors:
| Error Code | Description | Resolution |
|------------|-------------|------------|
| 400 | Invalid activation code | Verify code format and validity |
| 403 | Insufficient verification | Complete required verification steps |
| 404 | Customer not found | Check customer ID |
| 409 | Already activated | Account is already active |
## PowerShell Script Example
```powershell
# Account activation after verification and consent acceptance
$activationUrl = "$baseUrl/api/v2.1/customer/individual/$customerId/activation"
$activationRequest = @{
code = "ACTIVATION_CODE_$(Get-Date -Format 'yyyyMMddHHmmss')"
userId = $userId
}
$activationBody = $activationRequest | ConvertTo-Json
try {
$activationResponse = Invoke-RestMethod -Uri $activationUrl -Method Post -Headers $headers -Body $activationBody
Write-Host "Account activated successfully!" -ForegroundColor Green
# Extract IBAN from multiple possible locations
if ($activationResponse.iban) {
$accountIban = $activationResponse.iban
Write-Host " IBAN: $accountIban" -ForegroundColor Cyan
}
elseif ($activationResponse.data -and $activationResponse.data.iban) {
$accountIban = $activationResponse.data.iban
Write-Host " IBAN: $accountIban" -ForegroundColor Cyan
}
# Extract wallet information
$wallet = $null
if ($activationResponse.data -and $activationResponse.data.wallet) {
$wallet = $activationResponse.data.wallet
}
elseif ($activationResponse.wallet) {
$wallet = $activationResponse.wallet
}
if ($wallet) {
if ($wallet.walletId) {
$walletId = $wallet.walletId
Write-Host " Wallet ID: $walletId" -ForegroundColor Cyan
}
elseif ($wallet.id) {
$walletId = $wallet.id
Write-Host " Wallet ID: $walletId" -ForegroundColor Cyan
}
if ($wallet.currency) {
Write-Host " Currency: $($wallet.currency)" -ForegroundColor White
}
if ($wallet.balance) {
Write-Host " Balance: $($wallet.balance)" -ForegroundColor White
}
# Save customer session data
$customerData = @{
customerId = $customerId
userId = $userId
walletId = $walletId
iban = $accountIban
activatedAt = (Get-Date).ToString("yyyy-MM-dd HH:mm:ss")
}
# Optionally save to file for future use
$customerDataFile = "./customer_data_$(Get-Date -Format 'yyyyMMddHHmmss').json"
$customerData | ConvertTo-Json | Set-Content -Path $customerDataFile
Write-Host " Customer data saved to: $customerDataFile" -ForegroundColor Gray
}
}
catch {
Write-Host "Activation failed: $($_.Exception.Message)" -ForegroundColor Red
# Check if it's an already activated error
if ($_.Exception.Message -match "already activated") {
Write-Host " Account is already active" -ForegroundColor Yellow
}
}
```text`n## Related Endpoints
- [Register Individual Customer](/latest/api-reference/v2.1/customer/individual-register) - Initial registration
- [Create Verification Request](/latest/api-reference/v2.1/verification/create-verification) - Start verification
- [Accept Consents](/latest/api-reference/v2.1/consent/individual-consents) - Process consents
- [Get Wallet Details](/latest/api-reference/v2.1/wallet/get-wallet) - View wallet information