Skip to main content

Agency Onboarding

Professional transport agencies can register on ColisMove to manage bulk shipments, multiple branches, and employees.

Onboarding Flow

Step 1: Register Agency

POST /v1/api/agencies/register
{
  "name": "Express Transport SARL",
  "description": "Professional transport agency",
  "phoneNumber": "+33612345678",
  "address": "123 Rue du Commerce, Paris",
  "city": "Paris",
  "country": "FR"
}

Step 2: Upload KYC Documents

Upload required business documents:
POST /v1/api/agencies/{id}/kyc/documents
Content-Type: multipart/form-data

file: [business-registration.pdf]
Required documents:
  • Business registration certificate (KBIS or equivalent)
  • Tax identification document
  • Proof of address
  • Owner identity document
Check document status:
GET /v1/api/agencies/{id}/kyc/documents

Step 3: Stripe Connect Onboarding

Once KYC documents are approved:
POST /v1/api/agencies/{id}/stripe-onboard
Returns a Stripe onboarding URL for the agency’s banking setup.

Step 4: Create Branches

Add physical locations:
POST /v1/api/agencies/{id}/branches
{
  "name": "Paris Gare du Nord",
  "address": "18 Rue de Dunkerque, 75010 Paris",
  "phoneNumber": "+33612345679",
  "latitude": 48.8809,
  "longitude": 2.3553
}

Step 5: Add Employees

Invite team members:
POST /v1/api/agencies/{id}/employees
{
  "userId": 456,
  "role": "AGENT"
}

Agency Wallet

View agency earnings:
GET /v1/api/agencies/{id}/wallet
Request withdrawal:
POST /v1/api/agencies/{id}/withdraw
{
  "amount": 500.00
}

Agency Management

EndpointDescription
GET /agencies/my-agencyGet your agency details
PUT /agencies/{id}Update agency info
GET /agencies/{id}/branchesList all branches
GET /agencies/{id}/employeesList all employees
DELETE /agencies/{id}/employees/{userId}Remove an employee
Agency owners have ROLE_VERIFIED_USER and manage their agency independently. Super admins can suspend agencies via PATCH /superadmin/agencies/{id}/suspend.