이전 CRM
AI 에이전트로 구축
기업 이전 CRM 백엔드

기업 이전 CRM 백엔드 템플릿
이전 사례, 주택 검색, 선적 및 보상

기업 이전 CRM 백엔드의 생산 준비 완료 버전: Back4app에서 RelocationCase, HousingSearch, Shipment, ExpenseClaim 및 Reimbursement 기록을 포함합니다. ER 다이어그램, 데이터 사전, JSON 스키마, API 플레이그라운드 및 신속한 부트를 위한 AI 에이전트 프롬프트가 포함됩니다.

핵심 이전 요약

이 템플릿은 RelocationCase, HousingSearch, Shipment, ExpenseClaim 및 Reimbursement 흐름을 갖춘 기업 이전 CRM 백엔드를 제공합니다. 이를 통해 코디네이터는 각 이동이 예정된 대로 진행되도록 할 수 있습니다.

  1. 클래스별 사례 추적caseNumber, employeeName, destinationCity, status 및 policyTier로 RelocationCase 모델링하여 모든 이동이 하나의 기록으로 시작되도록 합니다.
  2. 사례에 연결된 주택 검색HousingSearch를 사용하여 case, propertyName, area, priceRange, searchStatus 및 moveInDate로 이전당 리스트를 추적합니다.
  3. 상태별 배송 진행 상황shipmentNumber, carrier, origin, destination, shipmentStatus 및 estimatedDelivery로 Shipment를 RelocationCase에 연결된 상태로 유지합니다.
  4. 경비 및 환급 관리청구 번호, 금액, 영수증 URL, 청구 상태, 승인 금액 및 지불 방법을 통해 ExpenseClaim 및 환급을 추적하세요.

기업 이전 CRM 템플릿이란 무엇인가요?

건전한 기업 이전 파이프라인은 명확한 단계, 소유자 및 종료 기준을 가지고 있습니다. 그렇지 않으면 '진행 중'은 블랙홀로 변합니다. 신뢰성은 특징이지 각주가 아닙니다. Back4app의 RelocationCase, HousingSearch, Shipment, ExpenseClaim 및 Reimbursement를 통해 기업 이전 팀은 동일한 사건 기록에서 협력하면서 직무 분리를 강제할 수 있습니다. 스키마는 사용자, RelocationCase(사례 번호, 직원 이름, 목적지 도시, 상태, 주요 조정자, 클라이언트 연락처, 정책 계층), HousingSearch(사례, 자산 이름, 지역, 가격 범위, 검색 상태, 입주 날짜, 중개인 이름, 메모), Shipment(사례, 배송 번호, 운송업체, 출발지, 목적지, 배송 상태, 예상 배송, 마지막 스캔 시간), ExpenseClaim(사례, 청구 번호, 비용 유형, 금액, 통화, 영수증 URL, 청구 상태, 제출자) 및 Reimbursement(청구, 환급 번호, 승인 금액, 지불 방법, 환급 상태, 처리일, 처리자)를 포함하며, 인증 및 역할 인식 접근이 내장되어 있습니다. 선호하는 프론트엔드를 연결하고 더 빠르게 이전을 조정하세요.

최고의 용도:

기업 이전 팀주택 검색 조정자배송 추적 작업비용 상환 포털직원 이동 관리팀들이 BaaS를 이사 운영에 선택하는 이유

기업 이사 템플릿 개요

모든 기업 이사 리더는 ‘예상치 못한 예상치 못한 것들’을 줄이기를 원합니다. 구조화된 기록은 놀라움을 조기에 감지할 수 있는 예외로 전환합니다.

MVP 범위를 위한 체크리스트로 RelocationCase, HousingSearch, Shipment를 사용하세요: 모델링되지 않은 경우 스프레드시트 해결책이 됩니다.

이주 CRM 핵심 기능

이 허브의 모든 기술 카드에는 User, RelocationCase, HousingSearch, Shipment, ExpenseClaim 및 Reimbursement가 포함된 동일한 이주 CRM 스키마가 사용됩니다.

이전 사례 관리

RelocationCase는 caseNumber, employeeName, destinationCity, status, primaryCoordinator, clientContact 및 policyTier를 저장합니다.

주택 검색 추적

HousingSearch는 propertyName, area, priceRange, searchStatus, moveInDate 및 agentName이 포함된 RelocationCase에 연결됩니다.

배송 모니터링

Shipment는 shipmentNumber, carrier, origin, destination, shipmentStatus, estimatedDelivery 및 lastScanAt을 캡처합니다.

비용 청구 접수

ExpenseClaim은 claimNumber, expenseType, amount, currency, receiptUrl, claimStatus 및 submittedBy를 기록합니다.

환급 처리

환급은 claim과 reimbursementNumber, approvedAmount, paymentMethod, reimbursementStatus, processedAt 및 processedBy를 연결합니다.

코디네이터 및 클라이언트 가시성

역할 기반 접근 방식은 코디네이터, 클라이언트 연락처 및 재무 사용자를 올바른 길로 안내합니다.

왜 Back4app로 당신의 기업 이사 CRM 백엔드를 구축해야 할까요?

Back4app는 이사 케이스, 주택 검색, 배송 및 상환 원시 기능을 제공하여 팀이 서버 배관 대신 이동 조정에 집중할 수 있게 합니다.

  • 사례 기록이 정리되어 있습니다: RelocationCase는 caseNumber, employeeName, destinationCity, status, primaryCoordinator, clientContact 및 policyTier를 한 곳에 보관합니다.
  • 주택과 배송이 연결되어 있습니다: HousingSearch와 Shipment 포인터는 propertyName, area, carrier, shipmentStatus 및 estimatedDelivery를 동일한 사례에 연결합니다.
  • 환급이 추적 가능합니다: ExpenseClaim 및 Reimbursement 항목은 finance review를 위해 claimNumber, expenseType, amount, receiptUrl, claimStatus, approvedAmount 및 paymentMethod를 보존합니다.

첫 날부터 검색 상태, 배송 및 환급을 일치시키는 이주 CRM을 시작하세요.

이주 CRM 핵심 이점

이동 작업을 명확하고 감사 가능하게 유지하는 기업 이주 CRM 백엔드.

더 빠른 이동 조정

제로에서 이동 추적기를 구축하기보다는 완전한 RelocationCase 및 HousingSearch 스키마에서 시작합니다.

배송 이정표는 가시성을 유지합니다

배송 업데이트는 운송업체 인수, 배송 번호 확인 및 예상 배송 변경을 쉽게 검토할 수 있도록 합니다.

환급 검토가 더 깔끔해졌습니다.

ExpenseClaim 및 환급 필드가 claimNumber, receiptUrl, claimStatus, approvedAmount 및 paymentMethod를 재무 승인을 위해 유지합니다.

더 나은 접근 경계

ACL/CLP를 사용하여 할당된 코디네이터, 고객 연락처 또는 재무 검토자만 민감한 이주 필드를 읽을 수 있도록 합니다.

클라이언트 간의 단일 API 계약

REST 또는 GraphQL를 통해 모든 프론트엔드에서 이주 사례, 주택 검색, 운송 및 환급을 쿼리합니다.

AI 지원 설정

하나의 구조화된 프롬프트로 스키마, 인증 규칙 및 시작 통합 흐름을 생성합니다.

이주 CRM을 시작할 준비가 되셨나요?

Back4app AI 에이전트가 귀사의 이사 백엔드를 구성하고 주택 검색, 배송 및 환급 흐름을 한 번의 프롬프트에서 생성하게 하세요.

시작은 무료 — 월 50회 AI 에이전트 프롬프트, 신용카드 필요 없음

이사 기술 스택

이 기업 이사 CRM 백엔드 템플릿에는 모든 것이 포함되어 있습니다.

프론트엔드
13+ 기술
백엔드
Back4app
데이터베이스
MongoDB
인증
내장 인증 + 세션
API
REST 및 GraphQL
실시간
Live Queries

이전 ER 다이어그램

기업 이사 CRM 스키마에 대한 엔터티 관계 모델입니다.

다이어그램 출처 보기
Mermaid
erDiagram
    User ||--o{ RelocationCase : "primaryCoordinator"
    User ||--o{ RelocationCase : "clientContact"
    RelocationCase ||--o{ HousingSearch : "case"
    RelocationCase ||--o{ Shipment : "case"
    RelocationCase ||--o{ ExpenseClaim : "case"
    User ||--o{ ExpenseClaim : "submittedBy"
    ExpenseClaim ||--o| Reimbursement : "claim"
    User ||--o{ Reimbursement : "processedBy"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        String fullName
        Date createdAt
        Date updatedAt
    }

    RelocationCase {
        String objectId PK
        String caseNumber
        String employeeName
        String destinationCity
        String status
        String primaryCoordinatorId FK
        String clientContactId FK
        String policyTier
        Date createdAt
        Date updatedAt
    }

    HousingSearch {
        String objectId PK
        String caseId FK
        String propertyName
        String area
        String priceRange
        String searchStatus
        Date moveInDate
        String agentName
        String notes
        Date createdAt
        Date updatedAt
    }

    Shipment {
        String objectId PK
        String caseId FK
        String shipmentNumber
        String carrier
        String origin
        String destination
        String shipmentStatus
        Date estimatedDelivery
        Date lastScanAt
        Date createdAt
        Date updatedAt
    }

    ExpenseClaim {
        String objectId PK
        String caseId FK
        String claimNumber
        String expenseType
        Number amount
        String currency
        String receiptUrl
        String claimStatus
        String submittedById FK
        Date createdAt
        Date updatedAt
    }

    Reimbursement {
        String objectId PK
        String claimId FK
        String reimbursementNumber
        Number approvedAmount
        String paymentMethod
        String reimbursementStatus
        Date processedAt
        String processedById FK
        Date createdAt
        Date updatedAt
    }

이전 통합 흐름

로그인, 이사 사례 로딩, 주택 검색 업데이트, 배송 기록 및 환급 심사를 위한 전형적인 실행 흐름입니다.

다이어그램 소스 보기
Mermaid
sequenceDiagram
  participant User
  participant App as Corporate Relocation CRM App
  participant Back4app as Back4app Cloud

  User->>App: Sign in
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open relocation cases
  App->>Back4app: GET /classes/RelocationCase?include=primaryCoordinator,clientContact
  Back4app-->>App: Case list with status and destinationCity

  User->>App: Review housing search and shipment progress
  App->>Back4app: GET /classes/HousingSearch?include=case
  App->>Back4app: GET /classes/Shipment?include=case
  Back4app-->>App: HousingSearch and Shipment records

  User->>App: Submit expense claim
  App->>Back4app: POST /classes/ExpenseClaim
  Back4app-->>App: ExpenseClaim objectId

  User->>App: Process reimbursement
  App->>Back4app: POST /classes/Reimbursement
  Back4app-->>App: Reimbursement objectId

  App->>Back4app: Subscribe to live updates for shipmentStatus and claimStatus
  Back4app-->>App: Push update for the active case

이주 클래스 사전

기업 이주 CRM 스키마의 모든 클래스에 대한 필드 수준 참조.

필드유형설명필수
objectIdStringAuto-generated unique identifier자동
usernameStringStaff login name
emailStringStaff email address
passwordStringHashed password (write-only)
roleStringUser role such as admin, coordinator, or client
fullNameStringDisplay name for the relocation contact
createdAtDateAuto-generated creation timestamp자동
updatedAtDateAuto-generated last-update timestamp자동

8 필드가 User에 있습니다.

이전 접근 제어

ACL 및 CLP 전략이 이전 사례, 주택 검색, 선적 및 환급을 어떻게 보호하는지.

사례 소유권 및 역할 경계

지정된 코디네이터, RelocationCase에 연결된 클라이언트 연락처 또는 승인된 재무 직원만 민감한 필드를 업데이트해야 합니다.

주택 및 선적 프라이버시

HousingSearch 메모 및 Shipment 배송 세부정보는 이동 맥락이 필요한 사람들만 볼 수 있도록 유지합니다.

경비 검토 제어

ExpenseClaim 제출에 대한 유효성을 요구하고, 환급 변경을 재무 역할 또는 Cloud Code로 제한합니다.

JSON 스키마

Back4app에 복사할 준비가 된 원시 JSON 스키마 정의 또는 구현 참조로 사용합니다.

JSON
{
  "classes": [
    {
      "className": "User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "fullName": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "RelocationCase",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "caseNumber": {
          "type": "String",
          "required": true
        },
        "employeeName": {
          "type": "String",
          "required": true
        },
        "destinationCity": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "primaryCoordinator": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "clientContact": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "policyTier": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "HousingSearch",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "case": {
          "type": "Pointer",
          "required": true,
          "targetClass": "RelocationCase"
        },
        "propertyName": {
          "type": "String",
          "required": true
        },
        "area": {
          "type": "String",
          "required": true
        },
        "priceRange": {
          "type": "String",
          "required": true
        },
        "searchStatus": {
          "type": "String",
          "required": true
        },
        "moveInDate": {
          "type": "Date",
          "required": true
        },
        "agentName": {
          "type": "String",
          "required": true
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Shipment",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "case": {
          "type": "Pointer",
          "required": true,
          "targetClass": "RelocationCase"
        },
        "shipmentNumber": {
          "type": "String",
          "required": true
        },
        "carrier": {
          "type": "String",
          "required": true
        },
        "origin": {
          "type": "String",
          "required": true
        },
        "destination": {
          "type": "String",
          "required": true
        },
        "shipmentStatus": {
          "type": "String",
          "required": true
        },
        "estimatedDelivery": {
          "type": "Date",
          "required": true
        },
        "lastScanAt": {
          "type": "Date",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ExpenseClaim",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "case": {
          "type": "Pointer",
          "required": true,
          "targetClass": "RelocationCase"
        },
        "claimNumber": {
          "type": "String",
          "required": true
        },
        "expenseType": {
          "type": "String",
          "required": true
        },
        "amount": {
          "type": "Number",
          "required": true
        },
        "currency": {
          "type": "String",
          "required": true
        },
        "receiptUrl": {
          "type": "String",
          "required": true
        },
        "claimStatus": {
          "type": "String",
          "required": true
        },
        "submittedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Reimbursement",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "claim": {
          "type": "Pointer",
          "required": true,
          "targetClass": "ExpenseClaim"
        },
        "reimbursementNumber": {
          "type": "String",
          "required": true
        },
        "approvedAmount": {
          "type": "Number",
          "required": true
        },
        "paymentMethod": {
          "type": "String",
          "required": true
        },
        "reimbursementStatus": {
          "type": "String",
          "required": true
        },
        "processedAt": {
          "type": "Date",
          "required": false
        },
        "processedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

AI 에이전트와 함께 구축하기

Back4app AI 에이전트를 사용하여 이 템플릿에서 전체 기업 이전 CRM 앱을 생성합니다. 여기에는 프론트엔드, 백엔드, 인증, 주택 검색, 운송 및 보상 흐름이 포함됩니다.

Back4app AI 에이전트
구축할 준비가 되셨나요?
Back4app에서 이 정확한 스키마와 동작으로 기업 이전 CRM 앱 백엔드를 생성하세요.

스키마:
1. 사용자 (사용 Back4app 내장): objectId, username, email, password, role, fullName, createdAt, updatedAt.
2. 이전 사례: objectId, caseNumber, employeeName, destinationCity, status, primaryCoordinator (User에 대한 포인터), clientContact (User에 대한 포인터), policyTier, createdAt, updatedAt.
3. 주택 검색: objectId, case (RelocationCase에 대한 포인터), propertyName, area, priceRange, searchStatus, moveInDate, agentName, notes, createdAt, updatedAt.
4. 운송: objectId, case (RelocationCase에 대한 포인터), shipmentNumber, carrier, origin, destination, shipmentStatus, estimatedDelivery, lastScanAt, createdAt, updatedAt.
5. 비용 청구: objectId, case (RelocationCase에 대한 포인터), claimNumber, expenseType, amount, currency, receiptUrl, claimStatus, submittedBy (User에 대한 포인터), createdAt, updatedAt.
6. 환급: objectId, claim (ExpenseClaim에 대한 포인터), reimbursementNumber, approvedAmount, paymentMethod, reimbursementStatus, processedAt, processedBy (User에 대한 포인터), createdAt, updatedAt.

보안:
- 할당된 코디네이터, 연결된 clientContact 또는 승인된 재무 직원만 민감한 이전 필드를 업데이트할 수 있습니다. 유효성 검사를 위해 Cloud Code를 사용하세요.

인증:
- 가입, 로그인, 로그아웃.

동작:
- 이전 사례 목록, 주택 검색 상태 업데이트, 운송 기록 추가, 비용 청구 제출 및 환급 승인.

배포:
- 스키마, ACL, CLP가 포함된 Back4app 앱; 이전 사례, 주택 검색, 운송 로그 및 환급을 위한 프론트엔드.

아래 버튼을 눌러 이 템플릿 프롬프트가 미리 채워진 상태로 에이전트를 엽니다.

이것은 기술 접미사가 없는 기본 프롬프트입니다. 생성된 프론트엔드 스택은 나중에 조정할 수 있습니다.

몇 분 만에 배포한 달에 50개의 무료 프롬프트신용카드 필요 없음

API 플레이그라운드

기업 이전 CRM 스키마에 대해 REST 및 GraphQL 엔드포인트를 사용해보세요. 응답은 모의 데이터를 사용하며 Back4app 계정이 필요하지 않습니다.

플레이그라운드 로딩 중…

이 템플릿과 동일한 스키마를 사용합니다.

기술 선택

각 카드를 확장하여 선택한 스택으로 RelocationCase, HousingSearch, 및 Shipment를 통합하는 방법을 확인하세요.

Flutter 기업 이전 CRM 백엔드

React 기업 이전 CRM 백엔드

React 네이티브 기업 이전 CRM 백엔드

Next.js 기업 이전 CRM 백엔드

JavaScript 기업 이전 CRM 백엔드

Android 기업 이전 CRM 백엔드

iOS 기업 이전 CRM 백엔드

Vue 기업 이전 CRM 백엔드

Angular 기업 이전 CRM 백엔드

GraphQL 기업 이전 CRM 백엔드

REST API 기업 이전 CRM 백엔드

PHP 기업 이전 CRM 백엔드

.NET 기업 이전 CRM 백엔드

모든 기술로 얻는 것

모든 스택은 동일한 기업 이주 CRM 스키마 및 API 계약을 사용합니다.

통합 이주 데이터 구조

하나의 스키마로 이주 사례, 주택 검색, 배송 및 환급을 관리합니다.

이동을 위한 주택 검색 추적

목적지 도시, 가격 범위 및 검색 상태를 조정자 및 고객 연락처에게 표시합니다.

이주를 위한 배송 가시성

시스템 전환 없이 운송업체, 배송 번호 및 배송 상태를 추적합니다.

비용 및 환급 워크플로우

재무 검토를 위해 영수증 URL, 청구 상태, 승인 금액 및 지불 방법을 기록합니다.

기업 이전 CRM 프레임워크 비교

모든 지원되는 기술에 걸쳐 설정 속도, SDK 스타일 및 AI 지원을 비교합니다.

프레임워크설정 시간기업 이전 혜택SDK 유형AI 지원
약 5분모바일 및 웹에서 이사 조정을 위한 단일 코드베이스.타입된 SDK전체
5분 이내주택 및 배송 추적을 위한 빠른 웹 대시보드.타입된 SDK전체
~3–7분현장 조정자를 위한 크로스 플랫폼 모바일 앱.타입된 SDK전체
빠른 (5분) 설정내부 팀을 위한 서버 렌더링 이전 작업 공간.타입된 SDK전체
~3–5 분이전 양식 및 대시보드를 위한 경량 웹 통합.타입된 SDK전체
약 5 분화물 및 케이스 업데이트를 위한 네이티브 Android 앱.타입된 SDK전체
5 분 이내주거 검색 및 비용 캡처를 위한 네이티브 iOS 앱입니다.타입된 SDK전체
~3–7 분이전 코디네이터를 위한 React의 웹 UI입니다.타입된 SDK전체
신속한 (5분) 설정이사 관리 작업을 위한 엔터프라이즈 웹 앱입니다.타입된 SDK전체
2분 이내중첩된 이전 쿼리를 위한 유연한 GraphQL API입니다.GraphQL API전체
빠른 (2분) 설정이사 작업을 위한 REST API 통합입니다.REST API전체
~3분이동 추적 도구를 위한 서버 측 PHP 백엔드입니다.REST API전체
~3–7분이사 작업을 위한 .NET 백엔드입니다.타입된 SDK전체

설정 시간은 이 템플릿 스키마를 사용하여 프로젝트 부트스트랩부터 첫 번째 이전 사례 또는 배송 쿼리까지의 예상 소요 시간을 반영합니다.

이전 CRM FAQ

이 템플릿을 사용하여 기업 이사 CRM 백엔드를 구축하는 것에 대한 일반적인 질문.

기업 이사 관행은 볼륨이 증가할 때 어떻게 Intake 품질을 높게 유지하나요?
기업 이사 팀은 클라이언트, 사안 및 내부 인수인계를 모호성 없이 어떻게 모델링해야 하나요?
우리는 기업 이사 기록을 분할하지 않고 전자 서명 또는 문서 저장소를 통합할 수 있나요?
Flutter에서 이전 사례를 어떻게 조회하나요?
Next.js 앱을 배송 기록에 어떻게 연결하나요?
React Native가 주택 검색을 오프라인에서 캐시할 수 있나요?
무단 환급 수정을 어떻게 방지하나요?
Android에서 배송 진행 상황을 표시하는 가장 좋은 방법은 무엇인가요?
주택 검색 워크플로우는 끝에서 끝까지 어떻게 작동하나요?
이 템플릿에서 비용 청구는 어떻게 환급으로 변환되나요?

전 세계 개발자들로부터 신뢰받음

Back4app 템플릿으로 기업 이전 CRM 제품을 더 빠르게 배송하는 팀에 가입하세요

G2 Users Love Us Badge

기업 이전 CRM 앱 구축할 준비가 되셨나요?

몇 분 안에 이전 프로젝트를 시작하세요. 신용카드는 필요 없습니다.

기술 선택하기