---
# System prepended metadata

title: Функции

---

Функции
===
Для подробного api: https://hackmd.io/@efoidfjk/Swapy

### Регистрация/Логин стандартная
- Стандартная
- *С рефералкой (optional)*


### Мой профиль `/profile/` https://www.figma.com/file/1RVUck0awrwv59rkjtWFKa/swapy?node-id=11%3A296
- email не меняем.
- изменение пароля `/profile/reset-password/`, `/profile/reset-password/confirm/`
- Остальные поля меняются с модерацией
    - Изменяем поля -> отправляем -> создается новая копия данных профиля
        - `/profile/request-change/`
    - Старая версия сохраняется
    - в `/profile/` отправлять новую и старую версии
    - Если не прошла модерация, отправляем теперь только старую
- Банковские счета пользователя
    - когда создаешь - отправляешь на модерацию вместе с `/profile/request-change/`
    - удаляешь отдельным запросом *DELETE* `/profile/bank-account/:id`
        - Удаляется со старой и новой версии для модерации (если были внесены доп. изменения)
            - **TODO** обсудить как лучше
        - Проверка удаления
            - ~~на статус транзакций с данным счетом~~
                - ~~до статуса "платежка", "to-prove-payment" можно удалить счет~~
                    - ~~соответствующие транзакции удалить~~
                    - ~~*(уведомить об этом партнера по транзакции)*~~
            - нельзя удалить единственный счет
                - нужен как минимум один
    - счета могут быть двух видов
        - Русское и Европейская (любая страна из EС)
        - rubble or euro соотвественно
        - (см. api для моделей)
- **добавление документов, подтверждающих личность**
    - **TODO**
    - будем загружать через `/profile/request-change/`?
    - или отдельно? Например, `/profile/upload-docs/` -> возвращает verifyingDocuments (как в api моделях)
        - затем данные прикрепляются к общему реквесту `/profile/request-change/`
- После первого `/profile/requiest-change/` админ может подтвердить изменения и активировать пользователя
- Удаление аккаунта *Delete* `/profile/`

### Новый перевод POST `/offers/`
https://www.figma.com/file/1RVUck0awrwv59rkjtWFKa/swapy?node-id=246%3A14273
Ограничения:
- Для стран Евросоюза `currency` только `euro`, для России `rubble`
- Страна в выбранном банковском аккаунте получения должен соответствовать стране получения


### Поиск переводов `/offers/`
https://www.figma.com/file/1RVUck0awrwv59rkjtWFKa/swapy?node-id=11%3A208
- Фильтры как в api файле
![](https://i.imgur.com/K3vTXqH.png)
**TODO**: Есть такой слайдер для цены, где обозначены максимально и минимально возможные цены. Трудно ли добавить эти данные в запрос `/offers/` или отдельный запрос, например, `/offers/price-limits/`? *(optional)*
- включена пагинация
- можно добавить перевод в избранное (Например, `/like-offer/:id`)
    - что добавляет id перевода в Member.favorites 


### Принять перевод
Work in progress


---
Рефералка
Админ
Уведомления в email


---

1. Первый этап
    - Регистрация/ Логин []
    - Профиль и модерация
        - первичное заполнение
        - Для изменения личных данных второй раз - модалка предупреждение, что нельзя
        - Бакновские счета
    - документы, изображения, s3 в России? 
    - запрет на действия если не подтвержденные данные
        - опубликовать
        - принять
        - создавать черновики можно
    - принять перевод 
    - переводы
        - сортировка - по умолчанию новые
2. Второй этап
    - черновки переводов
    - отклонить опубликованный перевод модерацией 
    - сортировка переводов
    - избранное
        - добавить, посмотреть
        - принять перевод -> добавить в избранное, если нет банковского аккаунта 
    - рефералка
        - промокод
        - баланс
        - выбор счета для вывода средств
        - каждый раз за перевод зареганных по рефералке - 5 евро за перевод
            - зачисление всегда 5 евро
    - Удаление Банковских счетов
        - Проервка на единственный
        - Счета с банковскими счетами
    - Вторичное запонление
        - т.к. у вас есть активные заявки, изменение данных невозможно
3. Третий
    - Поделиться переводом
    - рейтинг 



    