跳到正文
A AmunPay API Pix版本 3.38 · 更新于 页面

子账户

子账户是您名下拥有独立余额的账户:一家分店、一个业务单元、您市场平台上的一个商户。带 ex.subconta 的收款会计入该子账户;在查询中使用 ?subconta= 可以筛选出属于它的数据。

有些账户没有子账户。请读取 GET /v2/ex/config 中的 capacidades.subcontas:为 false 时,创建子账户返回 503 capacidade_indisponivel,查询仍会正常返回。

创建 #

PUT /v2/ex/subcontas/{id}

权限范围:ex.subcontas.write。

PUT /v2/ex/subcontas/SUB01J1ZK7M9QW3ERT5TY6UI8O
{
  "nome": "Filial Centro",
  "cnpj": "11222333000181"
}
→ 201
{
  "id": "SUB01J1ZK7M9QW3ERT5TY6UI8O",
  "nome": "Filial Centro",
  "cnpj": "11222333000181",
  "status": "EM_ANALISE",
  "custodiante": "Conta PI",
  "herda": true,
  "aceitaSplit": true,
  "criadoEm": "2026-09-18T12:00:00Z",
  "atualizadoEm": "2026-09-18T12:00:00Z"
}
字段 类型 必填 说明
nome 字符串 是 子账户的名称。
cnpj 字符串 是 子账户持有人的 CNPJ:14 位,不含标点,带校验位。前 12 位可以是数字或字母,小写字母按大写读取;后 2 位是数字。否则返回 400 cnpj_invalido。
响应字段 类型 说明
status 字符串 创建时为 EM_ANALISE。审核后变为 ATIVA 或 RECUSADA,有时会经过 EM_DILIGENCIA。ATIVA 可以变为 SUSPENSA、BLOQUEADA 或 ENCERRADA,前两者可以恢复为 ATIVA。RECUSADA 和 ENCERRADA 是终态。状态由机构变更。
custodiante 字符串 该子账户新业务(收款、提现)所经过机构的名称,与 GET /v2/ex/config?subconta={id} 中的 custodia.custodiante 相同。仅供阅读,不要据此编程。只读:由 AmunPay 更换,已有的业务仍经由其产生时的机构。
herda 布尔值 为 true 时,它通过与主账户相同的机构运作,并随主账户的每次更换而更换;为 false 时,它有自己的机构。只读。
aceitaSplit 布尔值 该子账户的收款能否带 ex.splitConfig。不能从 custodiante 推断。为 false 时,返回 422 split_de_outro_custodiante。未确定时不返回。只读。

每次状态变更都会发出 subconta.atualizada。新的收款和提现要求子账户为 ATIVA,否则返回 403 subconta_indisponivel。已在处理中的提现会继续结算。已签发的收款如果在子账户不是 ATIVA 时被支付,则不会入账:该 Pix 会被拒绝或退还付款人,并触发事件 cob.pagamento_rejeitado(原因为 SUBCONTA_INDISPONIVEL)。

列出与查询 #

GET /v2/ex/subcontas

权限范围:ex.subcontas.read。

GET /v2/ex/subcontas
→ 200
{
  "subcontas": [
    {
      "id": "SUB01J1ZK7M9QW3ERT5TY6UI8O",
      "nome": "Filial Centro",
      "cnpj": "11222333000181",
      "status": "EM_ANALISE",
      "custodiante": "Conta PI",
      "herda": true
    }
  ]
}

?status= 按状态筛选列表。GET /v2/ex/subcontas/{id} 返回单个子账户。

按子账户查询 #

GET /v2/ex/config、GET /v2/ex/saldo、GET /v2/ex/cobrancas、GET /v2/ex/pix、GET /v2/ex/extrato/{data}、GET /v2/ex/extrato/{data}/arquivo、GET /v2/ex/transacoes、GET /v2/ex/transacoes/mapear 和 GET /v2/ex/resumo 都接受 ?subconta=。子账户的功能可能与主账户不同:通过子账户收款、提现或退款之前,请带 ?subconta= 读取 GET /v2/ex/config。

GET /v2/ex/saldo?subconta=SUB01J1ZK7M9QW3ERT5TY6UI8O
→ 200
{
  "subconta": "SUB01J1ZK7M9QW3ERT5TY6UI8O",
  "disponivel": "0.00",
  "total": "0.00"
}

租户 #

当 GET /v2/ex/config 中 capacidades.baas 为真时,子账户可以拥有独立凭证,在自己的账户上自行操作,其权限范围是您权限范围的子集。POST /v2/ex/inquilinos 签发凭证,GET /v2/ex/inquilinos 列出凭证,DELETE /v2/ex/inquilinos/{sub} 吊销凭证。权限范围:ex.inquilinos.write 和 ex.inquilinos.read。租户的凭证创建时没有 IP,要等 AmunPay 登记其出口 IP 后才能申请令牌。在此之前,令牌请求和每次调用都返回 403 origem_nao_permitida。

错误 #

状态码 title 触发条件
400 id_invalido id 不是 26 至 35 位字母数字字符。
400 nome_obrigatorio nome 为空。
400 cnpj_invalido cnpj 不是 14 位、带有标点,或校验位错误。
400 status_invalido status 过滤值不在列表中。
409 id_duplicado 同一个 id 已存在,但正文不同。
403 subconta_indisponivel 对状态不是 ATIVA 的子账户进行操作。
403 subconta_de_outro 凭证属于某个子账户,却请求了另一个子账户。
404 nao_encontrado 该子账户在此账户中不存在。
503 capacidade_indisponivel capacidades.subcontas 为 false:该账户没有子账户。