Skip to content

Estrutura da cobrança

Uma Cobrança (Payable) representa uma parcela individual de uma venda. Cada venda pode gerar N cobrânças (uma por parcela).

{
  "id": "698b8a825eaf8de7c5af246d",
  "code": "LP-P444M-LANGG-4",
  "saleId": "698b8a805eaf8de7c5af1cb9",
  "saleCode": "LP-P444M-LANGG",
  "saleKind": "order",
  "saleContext": {
    "entity": "698b8a805eaf8de7c5af1cb9"
  },
  "saleGroupId": "000000000000000000000001",
  "marketplaceId": null,
  "installment": 4,
  "totalInstallments": 5,
  "price": {
    "amount": 4000,
    "currency": "BRL"
  },
  "originalPrice": {
    "amount": 4000,
    "currency": "BRL"
  },
  "balance": null,
  "paid": false,
  "paidWith": "credit_card",
  "nsu": null,
  "status": "open",
  "statusChangedAt": "2026-02-10T19:44:03.149Z",
  "statusTransitions": {
    "open": "2026-02-10T19:44:03.149Z"
  },
  "dueAt": "2026-05-10T19:44:02.402Z",
  "originalDueAt": "2026-05-10T19:44:02.402Z",
  "currency": "BRL",
  "tags": ["open"],
  "attempts": 0,
  "hasManualUpdate": false,
  "community": "test",
  "createdAt": "2026-02-10T19:44:02.328Z",
  "updatedAt": "2026-02-12T20:46:11.133Z",
  "customer": {...},
  "items": [...],
  "recipients": [...],
  "integration": {...}
}

Campos principais

CampoTipoDescrição
idstringID único da cobrança
codestringCódigo único legível da cobrança. Ex: LP-P444M-LANGG-4
saleIdstringIdentificador da venda associada
saleCodestringCódigo da venda. Ex: LP-P444M-LANGG
saleKindstringTipo da venda. Valores possíveis: order, recurrence, subscription, commission
saleGroupIdstring | nullID do grupo de vendas (quando faz parte de um grupo)
marketplaceIdstring | nullID do marketplace de origem. Caso não aplicável, null
installmentintegerNúmero da parcela atual (ex: 1, 2, 3)
totalInstallmentsintegerNúmero total de parcelas da venda
priceobjectPreço atual da cobrança
originalPriceobjectPreço original antes de alterações
balanceobject | nullSaldo restante. Caso não aplicável, null
paidbooleanIndica se a cobrança foi paga
paidWithstring | nullMétodo de pagamento utilizado. Valores possíveis: bank_slip, credit_card, pix, multi_card, bolepix. Caso não pago, null
nsustring | nullCódigo de autorização (NSU). Caso não aplicável, null
statusstringStatus atual da cobrança. Valores possíveis: open, pending, paid, released, late, expired, failed, canceled, refunded, chargeback, in_protest
statusChangedAtstring (ISO 8601)Data e hora da última mudança de status
dueAtstring (ISO 8601)Data de vencimento atual
originalDueAtstring (ISO 8601)Data de vencimento original (salva na criação)
currencystringMoeda no formato ISO 4217. Ex: BRL
tagsarray<string>Tags descritivas (inclui todos os statuses pelos quais já passou)
attemptsintegerNúmero de tentativas de cobrança
hasManualUpdatebooleanIndica se teve atualização manual (bloqueia cobranças automáticas)
communitystringComunidade (tenant)
createdAtstring (ISO 8601)Data e hora de criação
updatedAtstring (ISO 8601)Data e hora da última atualização
saleContextobjectContexto da venda (ver abaixo)

saleContext

Informações sobre o contexto da venda associada à cobrança.

"saleContext": {
  "kind": "order",
  "entity": "698b8a805eaf8de7c5af1cb9"
}
CampoTipoDescrição
kindstringTipo do contexto da venda
entitystringReferência ao channel/entidade da venda

customer

Dados do cliente associado à cobrança.

"customer": {
  "name": "Some name",
  "email": "test@tenda.digital",
  "phone": "(11) 91123-1233",
  "birth": "2026-02-10T19:44:01.217Z",
  "token": "3eef5671-a707-45ef-8c8a-d825e3ddd3d0",
  "document": {
    "kind": "cpf",
    "value": "545.537.435-40"
  },
  "address": {
    "address": null,
    "number": "875",
    "address2": null,
    "district": null,
    "city": null,
    "state": null,
    "country": "BR",
    "code": "09510112"
  }
}
CampoTipoDescrição
namestringNome completo do cliente
emailstringEndereço de e-mail do cliente
phonestring | nullNúmero de telefone do cliente. Caso não informado, null
birthstring (ISO 8601) | nullData de nascimento do cliente. Caso não informado, null
tokenstring | nullToken de pagamento. Caso não informado, null
document.kindstringTipo do documento. Valores possíveis: cpf, cnpj
document.valuestringNúmero do documento
address.addressstring | nullLogradouro. Caso não informado, null
address.numberstring | nullNúmero. Caso não informado, null
address.address2string | nullComplemento. Caso não informado, null
address.districtstring | nullBairro. Caso não informado, null
address.citystring | nullCidade. Caso não informado, null
address.statestring | nullEstado (UF). Caso não informado, null
address.countrystringPaís no formato ISO 3166-1 alpha-2. Ex: BR
address.codestring | nullCEP. Caso não informado, null

items

Lista de produtos vinculados à cobrança. Nota, esse objeto items não é o mesmo objeto que obtemos de uma rota /items/{id}

"items": [
  {
    "lineItemId": "698b8a815eaf8de7c5af1f7b",
    "itemKind": "product",
    "name": "My at once product",
    "caption": "Branco | 1kg",
    "quantity": 2,
    "variantId": "0001",
    "price": {
      "amount": 10000,
      "currency": "BRL"
    },
    "subtotal": {
      "amount": 4000,
      "currency": "BRL"
    },
    "media": {
      "url": "https://cdn.layers.digital/uploads/.../bitmap@3x.png",
      "path": "/uploads/.../bitmap@3x.png",
      "mime": "image/png",
      "width": 456,
      "height": 783,
      "size": 379264,
      "name": "bitmap@3x.png",
      "orientation": null
    }
  }
]
CampoTipoDescrição
lineItemIdstringIdentificador do item de linha
itemKindstringTipo do item. Valores possíveis: product, service
namestringNome do item
captionstringDescrição curta do item com atributos. Ex: Branco | 1kg
quantityintegerQuantidade
variantIdstringIdentificador da variante do produto
price.amountintegerValor unitário em centavos
price.currencystringMoeda no formato ISO 4217
subtotal.amountintegerValor total do item em centavos (price × quantity)
subtotal.currencystringMoeda no formato ISO 4217
media.urlstringURL pública da imagem do item
media.pathstringCaminho interno da imagem
media.mimestringTipo MIME da imagem. Ex: image/png, image/jpeg
media.widthintegerLargura da imagem em pixels
media.heightintegerAltura da imagem em pixels
media.sizeintegerTamanho do arquivo em bytes
media.namestringNome do arquivo da imagem
media.orientationstring | nullOrientação da imagem. Caso não informada, null

recipients

Lista de destinatários do split de pagamento da cobrança.

"recipients": [
  {
    "sourceId": "698b8a805eaf8de7c5af1ccd",
    "options": {
      "liable": true,
      "chargeProcessingFee": true,
      "chargeRemainder": true,
      "chargeLayersFee": false
    },
    "itemsInfo": [
      {
        "itemId": "5be99fd8dd405c6c7acfc0c4",
        "name": "My at once product",
        "splitValue": 100,
        "splitKind": "percent"
      }
    ],
    "items": {
      "amount": 4000,
      "currency": "BRL"
    },
    "discounts": {
      "amount": 0,
      "currency": "BRL"
    },
    "taxes": {
      "amount": 0,
      "currency": "BRL"
    },
    "shipping": {
      "amount": 0,
      "currency": "BRL"
    },
    "total": {
      "amount": 4000,
      "currency": "BRL"
    }
  }
]
CampoTipoDescrição
sourceIdstringIdentificador do recebedor
options.liablebooleanIndica se é responsável pelos valores
options.chargeProcessingFeebooleanIndica se será cobrada taxa de processamento
options.chargeRemainderbooleanIndica se absorve o resto da divisão
options.chargeLayersFeebooleanIndica se será cobrada taxa da Layers
itemsInfoarrayInformações de split por item
itemsInfo[].itemIdstringID do item
itemsInfo[].namestringNome do item
itemsInfo[].splitValuenumberValor ou percentual do split
itemsInfo[].splitKindstringTipo do split. Valores possíveis: flat, percent
items.amountintegerValor dos itens em centavos
items.currencystringMoeda no formato ISO 4217
discounts.amountintegerValor de descontos em centavos
discounts.currencystringMoeda no formato ISO 4217
taxes.amountintegerValor de impostos em centavos
taxes.currencystringMoeda no formato ISO 4217
shipping.amountintegerValor de frete em centavos
shipping.currencystringMoeda no formato ISO 4217
total.amountintegerValor total a receber em centavos
total.currencystringMoeda no formato ISO 4217

integration

Status da integração da cobrança com sistemas contábeis externos.

"integration": {
  "status": "not_integrated",
  "statusChangedAt": "2026-02-10T19:44:03.149Z",
  "externalIdentifiers": [],
  "assignee": "DEFAULT_ASSIGNEE"
}
CampoTipoDescrição
statusstringStatus da integração. Valores possíveis: not_integrated, pending, integrated, approved, received, failed, ignored, invoiced
statusChangedAtstring (ISO 8601)Data e hora da última alteração de status
externalIdentifiersarray<string>Identificadores da cobrança em sistemas externos
assigneestring | nullResponsável pela integração

Statuses

Ordenados por prioridade (mais importante primeiro):

Valores possíveis: refunded, chargeback, in_protest, released, paid, pending, late, expired, failed, canceled, open

StatusDescrição
refundedReembolsado
chargebackChargeback (contestação)
in_protestEm protesto
releasedValor liberado para saque
paidPago, aguardando liberação
pendingAguardando pagamento
lateVencido (atrasado)
expiredExpirado (janela de pagamento fechou)
failedFalhou
canceledCancelado
openAberto (ainda não venceu, status inicial)

statusTransitions

Histórico de todas as transições de status da cobrança.

"statusTransitions": {
  "open": "2026-02-10T19:44:03.149Z"
}
CampoTipoDescrição
[status]string (ISO 8601)Data e hora em que a cobrança atingiu cada status. A chave é o nome do status