Partner API
  1. User Accounts without KYC
Partner API
  • Getting Started
    • Introduction
    • Authentication
    • Business Use Cases
  • API References
    • Partner Operations
      • Get Balances
      • Get Transaction History
      • Retrieve Exchange Rate and Create a Lock
      • Create and Finalize an Exchange
      • Create Crypto Withdrawal
      • Create a SEPA Transfer
      • Get SEPA Transfer Details
    • User Accounts with KYC
      • Create User Account and Generate Balances
      • Add KYC File
      • Add POA File
      • Add User Verification
      • Update Existing User
      • Delete User
      • Suspend User
      • Unsuspend User
      • Get User Balances
      • Get User Transaction History
    • User Accounts without KYC
      • Create User Account and Generate Balances Without KYC
        POST
      • Update Existing User
        PATCH
      • Delete User
        DELETE
      • Suspend User
        PATCH
      • Unsuspend User
        PATCH
      • Get User Balances
        GET
      • Get User Transaction History
        GET
    • KYC by P100
      • Creating KYC Verification
      • Redirect to Verification
      • Get KYC Status
    • Currency Exchange
      • Retrieve Exchange Rate
      • Retrieve Exchange Rate and Create a Lock
      • Create and Finalize an Exchange
      • Retrieve Detailed Exchange Infromation
    • Crypto Deposits
      • Update Travel Rule
    • Crypto Withdrawals
      • Get Network Fee
      • Create Crypto Withdrawal
      • Get Crypto Withdrawal Details
    • Internal Transfers
      • Create a Transfer
      • Get Transfer Details
    • Virtual Cards
      • Create Virtual Card
      • Get All User Cards
      • Get Card Details
      • Update Card PIN
      • Block Card
      • Unblock Card
      • Get Card Limits
      • Update Card Limits
      • Delete Card
    • Custom Fiat Operations
      • SEPA Deposit & Withdrawal
  • Integration
    • SDKs & Integration Guides
    • Transaction Processing
    • Error Handling
    • Rate Limiting
    • Webhooks
      • User & KYC Webhooks
        • User Balance Generation
        • KYC File Added
        • POA Verification Status
        • KYC Verification Status
      • Transfers & Payments Webhooks
        • P2P Transfer Webhook
        • SEPA Transfer
        • SEPA Deposit
        • Crypto Withdrawal
        • Crypto Deposit
        • Exchange
        • Card Transaction
      • Card Webhooks
        • Card 3DS Code
        • Card Activation Code
  • Reference
    • Supported Countries
    • Supported Currencies
    • Fees
    • FAQ
    • Changelog
    • Support
  1. User Accounts without KYC

Create User Account and Generate Balances Without KYC

Testing Env
https://partner-api-stage.p100.io
Testing Env
https://partner-api-stage.p100.io
POST
/v1/user/balances/crypto
This endpoint creates a new non-KYC user (also referred to as a limited user) and automatically provisions both fiat and cryptocurrency balances.
These users do not submit any identity or address verification documents. While their access to regulated services is restricted, they can still hold balances in multiple fiat and crypto currencies and perform selected operations such as crypto deposits, withdrawals, P2P transfers, and currency exchange.
Each user must be uniquely identified using the externalUserId. Attempts to reuse the same value will result in an error.

Balance Behavior#

Upon creation:
Crypto balances are fully initialized with exchange rates and network configurations.
Fiat balances are also provisioned, but their usage is limited — users without KYC cannot perform regulated operations virtual card issuance.
⚠️ This endpoint belongs to the non-KYC integration model, which must be selected by the partner at the start of the integration. Users created this way cannot be upgraded to KYC users — full users must be created via the KYC onboarding flow if needed.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://partner-api-stage.p100.io/v1/user/balances/crypto' \
--header 'Content-Type: application/json' \
--header 'x-api-key;' \
--data-raw '{
"externalUserId": "bca65c48-df49-4831-a7b2-de79033219",
"email": "johndoe@gmail.com",
"firstName": "John",
"lastName": "Doe",
"address": "Adama Matuszczaka 51/4",
"city": "Rzeszów",
"country": "PL",
"documentType": "PASSPORT",
"documentNumber": "CEV124630",
"pesel": "12345678901",
"birthCountry": "PL",
"birthDate": "2000-01-01"
}'
Response Response Example
201 - Success
{
    "userId": "db0e3f17-3ff0-481d-b543-ac5576c06650",
    "balances": [
        {
            "id": "2d6be876-fe39-4518-9423-d39ce071df2b",
            "amount": "0.00000000",
            "name": "eth",
            "wallet": null,
            "rate": 3160.21051755,
            "networkConfig": {
                "ethereum": {
                    "mainnet": false,
                    "name": "sepolia",
                    "withdrawal": {
                        "feeWithdrawal": 0.003,
                        "minWithdrawal": 0.0006
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        },
        {
            "id": "9e723c2e-3061-4dec-b90d-aba7ad632007",
            "amount": "0.000000",
            "name": "usdc",
            "wallet": null,
            "rate": 0.856822,
            "networkConfig": {
                "ethereum": {
                    "mainnet": false,
                    "name": "sepolia",
                    "withdrawal": {
                        "feeWithdrawal": 10,
                        "minWithdrawal": 1
                    },
                    "deposit": {
                        "minDeposit": 5
                    }
                },
                "polygon": {
                    "mainnet": false,
                    "name": "amoy",
                    "withdrawal": {
                        "feeWithdrawal": 0.5,
                        "minWithdrawal": 2
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        },
        {
            "id": "ae62579a-dcab-4327-95b2-9534897ec30a",
            "amount": "0.00",
            "name": "eur",
            "wallet": null,
            "rate": 1
        },
        {
            "id": "5c24f728-0365-4de5-9d3c-0475cad02b67",
            "amount": "0.00000000",
            "name": "ltc",
            "wallet": null,
            "rate": 103.62980236,
            "networkConfig": {
                "ltc": {
                    "mainnet": false,
                    "name": "test",
                    "withdrawal": {
                        "feeWithdrawal": 0.002,
                        "minWithdrawal": 0.001
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        },
        {
            "id": "66d6588c-4a50-4bd4-8458-a94a7ae20e7a",
            "amount": "0.00000000",
            "name": "btc",
            "wallet": null,
            "rate": 98318.40634648,
            "networkConfig": {
                "btc": {
                    "mainnet": false,
                    "name": "test",
                    "withdrawal": {
                        "feeWithdrawal": 0.0003,
                        "minWithdrawal": 0.000001
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        },
        {
            "id": "0bdcfa47-9617-4ad8-aab2-4e0f7003975d",
            "amount": "0.00000000",
            "name": "doge",
            "wallet": null,
            "rate": 0.17648657,
            "networkConfig": {
                "doge": {
                    "mainnet": false,
                    "name": "test",
                    "withdrawal": {
                        "feeWithdrawal": 5,
                        "minWithdrawal": 0.01
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        },
        {
            "id": "362cada0-9da3-4318-98e1-9c6ceb7ae39b",
            "amount": "0.00000000",
            "name": "pol",
            "wallet": null,
            "rate": 0.2028634,
            "networkConfig": {
                "polygon": {
                    "mainnet": false,
                    "name": "amoy",
                    "withdrawal": {
                        "feeWithdrawal": 0.001,
                        "minWithdrawal": 0.00005
                    },
                    "deposit": {
                        "minDeposit": 0
                    }
                }
            }
        }
    ]
}

Request

Authorization
API Key
Add parameter in header
x-api-key
Example:
x-api-key: ********************
or
Body Params application/json

Examples

Responses

🟢201Created
application/json
Body

🟠401Access Denied
🟠400P403: Validation error
🟠400P411: User exists
🟠400P500: Unknown exception
🟠400P501: Service temporarily unavailable
Previous
User Accounts without KYC
Next
Update Existing User
Built with