> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cryptoprocessing.com/llms.txt
> Use this file to discover all available pages before exploring further.

# User data collection

To comply with EU regulations, CoinsPaid has to collect user data for all transactions. This affects three endpoints:

* [/withdrawal/crypto](/api-reference/endpoints/withdrawal-crypto) (Withdraw crypto)
* [/addresses/take](/api-reference/endpoints/addresses-take) (Create a crypto address)
* [/invoices/create](/api-reference/endpoints/invoices-create) (Create an invoice)

As an EU-based entity, CoinsPaid is required to comply with the MiCA (Markets in Crypto-Assets) regulations that aim to combat money laundering. This includes collecting certain data about natural persons and companies who send and receive crypto using our services. We are not collecting anything outside of the data you and your customers provide in API calls and in-app transactions.

## What data is required

When you generate a new crypto address or create an invoice, you need to provide certain user data depending on who the sender is. This includes the `sender_type` parameter (either `legal` or `natural`) and the `sender_data` object. To make a withdrawal, you also need to share the same information about the recipient (`receiver_type` and `receiver_data`). In case of internal transfers within a company, `receiver_type` can be set to `self`.

For legal entities, we ask for the company name and registration country. For natural persons, you need to provide the sender's first and last names.

| Natural person               | Legal entity                           |
| ---------------------------- | -------------------------------------- |
| First name (**required**)    | Company name (**required**)            |
| Last name (**required**)     | Country of registration (**required**) |
| Date of birth (**required**) | Email (optional)                       |
| Email (optional)             |                                        |
