Careem Captain 数据 API:钱包、收入与订单
Careem Captain 是司机用来上线、接受打车与配送订单、收取现金并提现的应用。钱包界面由 GET /v1/wallet/cash-status/{captainId} 支撑,收入首页加载 GET /v1/drivers/{captain_id}/earnings/aggregate/{window},其中含 tripEarnings、tips 与 fines。订单通过 POST /v1/dispatch/offers/acknowledge 与步骤打点流转;提现经 POST /v1/payouts/disburse 打到 GET /v1/payouts/methods/{captainId} 列出的银行 IBAN。
Careem Captain 是 Careem 司机(Captain)的搭档应用:上线接单、接受打车与配送任务、收取现金并提现收入。在地图、收入和钱包界面背后,应用通过 Retrofit/OkHttp 与 Gson、Moshi 模型同 Careem 面向司机的服务网关通信——钱包与手头现金状态带预警和冻结限额,收入聚合含 tripEarnings/tips/bonuses/fines,提现方式携带 IBAN 与 nationalId,另有每个任务的步骤打点与现金收款确认、含 captainEarning 的车费明细,以及一个接单率 KPI——拒绝过多订单的司机可能被冻结。
应用截图
API 端点一览
司机钱包与现金状态
GET
/v1/wallet/cash-status/{captainId}openbanking读取已登录司机的钱包余额与手头现金头寸,包括未上缴现金过高时会冻结新订单的预警 / 冻结现金限额。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- captainId
- walletBalance
- cashBalanceAmount
- warningCashLimit
- blockingCashLimit
- balance
- currency
- cashStatus
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/wallet/cash-status/18422109 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "captainId": 18422109, "walletBalance": 1260.5, "cashBalanceAmount": -85.0, "warningCashLimit": 150, "blockingCashLimit": 300, "balance": -85.0, "currency": "AED", "cashStatus": "WARNING" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的钱包与手头现金状态流程重构与钱包界面上的预警和冻结现金限额横幅一致
按类型聚合收入
GET
/v1/drivers/{captain_id}/earnings/aggregate/{window}openfinance驱动收入落地页:周期总额,以及司机收入按行程收入、小费、奖励、保底、罚款与行为处罚的拆分。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- currencyCode
- overview
- totalEarnings
- aggregationByTime
- earnings
- startDate
- endDate
- breakdown
- tripEarnings
- tips
- matchedTips
- bonuses
- guarantees
- fines
- finesRefunds
- behaviorPenalties
- other
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/drivers/18422109/earnings/aggregate/WEEKLY?from=1727049600000&to=1727654400000 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "currencyCode": "AED", "overview": { "totalEarnings": 2140.75, "aggregationByTime": [ {"earnings": 380.5, "startDate": "2026-09-21", "endDate": "2026-09-21"}, {"earnings": 412.0, "startDate": "2026-09-22", "endDate": "2026-09-22"} ] }, "breakdown": { "tripEarnings": 1680.0, "tips": 210.5, "matchedTips": 40.0, "bonuses": 180.0, "guarantees": 50.0, "fines": 15.0, "finesRefunds": 0.0, "behaviorPenalties": 4.75, "other": 0.0 } }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的收入落地页重构与收入首页的周期选择器和拆分磁贴一致
按周期列出收入交易
GET
/v1/earnings/transactions/{captainId}/cycle/{cycle}openfinance列出一个提现周期的逐行程收入明细行——任务、行程、地点、金额与业务线——展示在订单 / 行程历史的收入页签。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- bookings
- jobId
- tripId
- location
- dateTimeIso
- currency
- amount
- vertical
- status
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/earnings/transactions/18422109/cycle/38?page=0 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "bookings": [ { "jobId": 99218411, "tripId": "TRP-88A21", "location": "Downtown Dubai", "dateTimeIso": "2026-09-24T18:41:00Z", "currency": "AED", "amount": 42.5, "vertical": "RIDE", "status": "COMPLETED" } ] }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的订单 / 行程历史收入页签重构与司机提现前核对的周期台账一致
未核销的收入交易
GET
/v1/earnings/transactions/{captainId}/pendingopenfinance返回仍待核销的收入——通常是等待结算的现金行程——它们会阻塞或延迟一个提现周期。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- unverifiedTransactions
- jobId
- tripId
- amount
- currency
- status
- dateTimeIso
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/earnings/transactions/18422109/pending?limit=20 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "unverifiedTransactions": [ { "jobId": 99219002, "tripId": "TRP-88B04", "amount": 18.0, "currency": "AED", "status": "UNVERIFIED", "dateTimeIso": "2026-09-24T21:05:11Z" } ] }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的待核销收入列表重构与拖延提现的现金行程结算提示一致
提现支付方式
GET
/v1/payouts/methods/{captainId}openbanking列出司机的提现目的地(银行 IBAN、钱包、国民身份证),用于支付方式与提现界面。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- paymentMethods
- id
- optionType
- optionName
- status
- primary
- detail
- bankName
- accountIBAN
- careemCustomerId
- walletNumber
- nationalId
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/payouts/methods/18422109 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "paymentMethods": [ { "id": 44102881, "optionType": "BANK_ACCOUNT", "optionName": "Emirates NBD", "status": "VERIFIED", "primary": true, "detail": { "bankName": "Emirates NBD", "accountIBAN": "AE070331234567890123456", "careemCustomerId": "c_9b0e12f4", "walletNumber": null, "nationalId": "784-1988-1234567-1" } } ] }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的支付方式与提现界面重构与向司机展示的银行账户 / 钱包 / 身份证提现选项一致
提现收入
POST
/v1/payouts/disburseopenfinance把司机已结算的收入提现到主提现方式(银行账户或钱包)。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- disbursementId
- captainId
- amount
- currency
- paymentMethodId
- status
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/payouts/disburse HTTP/1.1 Authorization: Bearer eyJhbGciOi... Content-Type: application/json { "captainId": 18422109, "amount": 800.0, "currency": "AED", "paymentMethodId": 44102881 }{ "disbursementId": "dsb_77a1c0", "captainId": 18422109, "amount": 800.0, "currency": "AED", "paymentMethodId": 44102881, "status": "PROCESSING" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的提现确认流程重构与提现请求后的打款状态横幅一致
从收入向钱包充值
POST
/v1/wallet/topupopenfinance把已结算的行程收入转入司机钱包,用于支付未结清的现金余额或在应用内消费。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- captainId
- amount
- currency
- walletBalance
- status
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/wallet/topup HTTP/1.1 Authorization: Bearer eyJhbGciOi... Content-Type: application/json { "captainId": 18422109, "amount": 150.0, "currency": "AED" }{ "captainId": 18422109, "amount": 150.0, "currency": "AED", "walletBalance": 1410.5, "status": "SUCCEEDED" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的钱包充值流程重构与钱包界面上“支付未结清现金余额”的提示一致
确认订单邀约
POST
/v1/dispatch/offers/acknowledgeopendata接受或确认传入的打车 / 配送邀约,使任务分配给该司机并出现在实时行程界面。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- jobUid
- id
- uid
- viewUid
- status
- forcedSyncKey
- accepted
- captainId
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/dispatch/offers/acknowledge HTTP/1.1 Authorization: Bearer eyJhbGciOi... Content-Type: application/json { "jobUid": "job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234", "captainId": 18422109, "accepted": true }{ "jobUid": "job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234", "id": 99218411, "uid": "job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234", "viewUid": "vw_99218411", "status": "ASSIGNED", "forcedSyncKey": "sync_4410" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的传入邀约接受流程重构与实时行程界面上显示的派单状态一致
标记任务步骤完成
POST
/v1/dispatch/jobs/{jobUid}/steps/{stepUid}/completeopendata推进任务经过接驾 / 送达各步骤(到达、已接驾、已送达),驱动行程中地图与下一站 UI。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- jobUid
- stepUid
- status
- id
- schedule
- lat
- lng
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/dispatch/jobs/job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234/steps/stp_pickup/complete HTTP/1.1 Authorization: Bearer eyJhbGciOi... Content-Type: application/json { "lat": 25.1972, "lng": 55.2744, "status": "ARRIVED_PICKUP" }{ "jobUid": "job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234", "stepUid": "stp_pickup", "status": "ARRIVED_PICKUP", "id": 99218411, "schedule": {"etaSeconds": 420} }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的行程中接驾 / 送达步骤按钮重构与实时地图上的下一站状态机一致
确认现金已收
POST
/v1/dispatch/jobs/{jobUid}/cash-confirmopenfinance记录乘客在送达时以现金付款,更新司机未结清的手头现金余额。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- jobUid
- amount
- currency
- status
- cashBalanceAmount
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/dispatch/jobs/job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234/cash-confirm HTTP/1.1 Authorization: Bearer eyJhbGciOi... Content-Type: application/json { "amount": 42.5, "currency": "AED" }{ "jobUid": "job_8f21c0a4-9b11-4e02-a1c3-77d4e8b01234", "amount": 42.5, "currency": "AED", "status": "CASH_PAID", "cashBalanceAmount": -127.5 }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用送达时的现金收款确认重构与钱包界面上的未结清现金余额更新一致
订单车费明细
GET
/v1/trips/{bookingId}/fare-breakdownopenfinance返回行程后的车费回执——乘客价格、折扣与 captainEarning——展示在行程结束 / 行程回执界面。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- tripId
- tripPrice
- discount
- promotionalDiscount
- captainEarning
- baseAmount
- userCredit
- userCreditUsed
- creditCardsOnFile
- isOffline
- currency
- basePriceType
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/trips/99218411/fare-breakdown HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "tripId": 99218411, "tripPrice": 48.0, "discount": 5.5, "promotionalDiscount": 2.0, "captainEarning": 36.4, "baseAmount": 32.0, "userCredit": 0.0, "userCreditUsed": 0.0, "creditCardsOnFile": 1, "isOffline": false, "currency": {"code": "AED", "name": "United Arab Emirates dirham"}, "basePriceType": "METERED" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的行程结束回执界面重构与司机在每份车费回执上看到的 captainEarning 行一致
司机接单率
GET
/v1/metrics/acceptance-rateopendata读取自动派单与绩效卡片使用的司机接单 KPI;低于阈值可能冻结司机。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- acceptanceRate
- acceptanceFlag
- acceptanceThreshold
- captainId
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/metrics/acceptance-rate?captainId=18422109&from=1727049600000 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "acceptanceRate": 0.86, "acceptanceFlag": "HEALTHY", "acceptanceThreshold": 0.7, "captainId": 18422109 }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的绩效卡片与自动派单提示重构与拒绝过多订单时显示的阈值警告一致
绩效报告概览
GET
/v1/performance/overview/{captainId}opendata加载司机绩效报告概览——评分、完成行程数、取消率与在线时长——展示在参与度 / 绩效首页。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- captainId
- acceptanceRate
- rating
- completedTrips
- cancellationRate
- onlineMinutes
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/performance/overview/18422109 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "captainId": 18422109, "acceptanceRate": 0.86, "rating": 4.92, "completedTrips": 1842, "cancellationRate": 0.04, "onlineMinutes": 2460 }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的参与度 / 绩效首页重构
班次出勤
GET
/v1/shifts/attendance/{captainId}opendata返回区域 / 班次司机使用的排班出勤——预订时段与实际在线分钟数的对比。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- captainId
- shifts
- shiftId
- startTime
- endTime
- attendedMinutes
- status
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/shifts/attendance/18422109?from=1727049600000&to=1727654400000 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "captainId": 18422109, "shifts": [ { "shiftId": "sh_44102", "startTime": "2026-09-24T06:00:00Z", "endTime": "2026-09-24T14:00:00Z", "attendedMinutes": 455, "status": "COMPLETED" } ] }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的区域 / 班次出勤界面重构与司机看到的预订时段与在线分钟数对比一致
去哪接单推荐
GET
/v1/demand/recommendationsopendata根据司机当前位置推荐高需求区域,让司机向订单密度更高的地方转移。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- recommendations
- zoneId
- name
- demandScore
- etaMinutes
- lat
- lng
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/demand/recommendations?lat=25.2048&lng=55.2708 HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "recommendations": [ { "zoneId": "dxb_downtown", "name": "Downtown Dubai", "demandScore": 0.82, "etaMinutes": 8, "lat": 25.1972, "lng": 55.2744 } ] }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用地图上的高需求区域建议重构
司机资料
GET
/v1/drivers/profileosint读取已登录司机的身份、城市与车辆信息,供“我的资料”与侧滑菜单头部使用。
认证方式: 司机登录时签发的 Bearer 访问令牌(Authorization: Bearer)
- captainId
- firstName
- lastName
- phone
- cityId
- carId
- status
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/drivers/profile HTTP/1.1 Authorization: Bearer eyJhbGciOi...{ "captainId": 18422109, "firstName": "Ahmed", "lastName": "Hassan", "phone": "+971501234567", "cityId": 1, "carId": 55201, "status": "ACTIVE" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
依据应用的“我的资料”界面与侧边菜单头部重构
数据类别
- 余额
- 交易
- 提现
- 行程
- 身份
- 绩效
数据使用场景与案例
司机提现对账
拉取每周收入聚合(tripEarnings、tips、bonuses、fines)与周期交易明细,再把提现与钱包充值同存档的银行 IBAN 比对,让车队运营方能结清每个提现周期。
手头现金风险监控
轮询钱包现金状态接口与现金收款任务事件。当 cashBalanceAmount 接近 warningCashLimit 或 blockingCashLimit 时告警,让司机在新订单冻结前向钱包充值。
订单质量与运力热力图
结合 acceptanceRate、班次出勤分钟数与去哪接单的 demandScore,看出哪些区域能把订单转化为完成的行程,以及司机应该转移到哪里接单。
行程级车费审计
把车费回执中的 captainEarning 与逐行程的 amount、vertical、status 明细行关联,标记回执收入与周期台账不符的行程。
常见问题
Careem Captain 暴露哪些收入字段?
收入聚合调用返回 currencyCode、totalEarnings,以及 tripEarnings、tips、matchedTips、bonuses、guarantees、fines、finesRefunds、behaviorPenalties 和 other 的拆分。周期交易另含 jobId、tripId、location、amount 和 vertical。
司机钱包与现金限额如何工作?
钱包现金状态调用返回 walletBalance 与手头现金(cashBalanceAmount),以及 warningCashLimit 和 blockingCashLimit。司机可以从收入向钱包充值,或提现到已验证的银行 IBAN。
哪些任务端点驱动进行中的行程?
订单在 POST /v1/dispatch/offers/acknowledge 确认,步骤(到达、接驾、送达)在 POST /v1/dispatch/jobs/{jobUid}/steps/{stepUid}/complete 打点,现金收款在 POST /v1/dispatch/jobs/{jobUid}/cash-confirm 确认。车费回执从 GET /v1/trips/{bookingId}/fare-breakdown 加载。
Careem Captain 是银行应用吗?
不是——它是打车司机应用。它仍然携带钱包、现金余额与提现方式数据,因为司机收取现金,并通过同一产品提现行程收入。
相关主题
- Careem Captain API
- Careem 司机收入
- 司机钱包现金状态
- Careem 提现 IBAN
- Careem 订单确认
- 司机接单率
- Careem 车费明细
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业