Iugu Charge API

The Charge API from Iugu — 1 operation(s) for charge.

Operations 1

POST /charge Cobrança Direta #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/iugu:iugu-charge-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

iugu-charge-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: tokens-e-cobrança-direta Charge API
  version: '1.0'
servers:
- url: https://api.iugu.com/v1
security:
- sec0: []
tags:
- name: Charge
paths:
  /charge:
    post:
      summary: Cobrança Direta
      description: Cobrança simples via boleto ou cartão de crédito. Para mais informações sobre cobrança direta
      operationId: cobranca-direta
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                method:
                  type: string
                  description: Apenas suporta "bank_slip", que é boleto bancário. Não é preenchido se enviar parâmetro token
                token:
                  type: string
                  description: ID do Token. **Não é preenchido** caso o método de pagamento seja `bank_slip`. **O token é de uso único** — Se já tiver sido utilizado numa cobrança, mesmo que a chamada tenha sido mal sucedida, deve-se criar um novo token. Em caso de Marketplace, é possível enviar um token criado pela conta mestre.
                customer_payment_method_id:
                  type: string
                  description: <a href="https://dev.iugu.com/reference#criar-forma-de-pagamento">ID da Forma de Pagamento do Cliente</a>. Em caso de Marketplace, é possível enviar um "customer_payment_method_id" de um Cliente criado pela conta mestre (não é preenchido caso Método de Pagamento seja "bank_slip" ou utilize "token")
                restrict_payment_method:
                  type: boolean
                  description: Se true, restringe o método de pagamento da cobrança para o definido em `method`, que no caso será apenas `bank_slip`.
                customer_id:
                  type: string
                  description: ID do Cliente. Utilizado para vincular a Fatura a um Cliente
                invoice_id:
                  type: string
                  description: ID da Fatura a ser utilizada para pagamento
                email:
                  type: string
                  description: E-mail do Cliente (não é preenchido caso seja enviado um "invoice_id")
                months:
                  type: integer
                  description: Número de Parcelas (2 até 12), não é necessário passar 1. Não é preenchido caso o método de pagamento seja "bank_slip". O valor mínino de cada parcela é de R$5,00.
                  format: int32
                discount_cents:
                  type: integer
                  description: Valor de desconto, em centavos, aplicado sobre os itens criados em caso de não haver fatura vinculada à chamada.
                  format: int32
                bank_slip_extra_days:
                  type: integer
                  description: Define o prazo em dias para o pagamento do boleto. Caso não seja enviado, aplica-se o prazo padrão de 3 dias corridos.
                  format: int32
                keep_dunning:
                  type: boolean
                  description: 'Por padrão, a fatura é cancelada caso haja falha na cobrança, a não ser que este parâmetro seja enviado como "true". Obs: Funcionalidade disponível apenas para faturas criadas no momento da cobrança.'
                items:
                  type: array
                  description: Itens de cobrança da Fatura que será gerada. "price_cents" valor mínimo 100. <b> Limite de 30 items </b>
                  items:
                    properties:
                      description:
                        type: string
                        description: Descrição do Item
                      quantity:
                        type: integer
                        description: Quantidade
                        format: int32
                      price_cents:
                        type: integer
                        description: Preço em Centavos. Valores negativos entram como desconto no total
                        format: int32
                      id:
                        type: string
                        description: ID do item, utilizado só em casos de edição ou remoção.
                      _destroy:
                        type: boolean
                        description: Caso `true`, remove o item de uma fatura. ID do item é obrigatório.
                    type: object
                '*atenção*':
                  type: object
                  description: Informações do cliente abaixo "payer" são obrigatórias para a emissão de boletos ou necessárias para seu sistema de antifraude.
                  properties: {}
                payer:
                  properties:
                    cpf_cnpj:
                      type: string
                      description: CPF ou CNPJ (apenas números)
                    name:
                      type: string
                      description: Nome
                    phone_prefix:
                      type: string
                      description: Prefixo do número de telefone
                    phone:
                      type: string
                      description: Número de telefone
                    email:
                      type: string
                      description: E-mail
                    address:
                      type: object
                      description: Endereço do cliente
                      properties:
                        street:
                          type: string
                          description: Rua
                        number:
                          type: string
                          description: Número
                        district:
                          type: string
                          description: Bairro
                        city:
                          type: string
                          description: Cidade
                        state:
                          type: string
                          description: Estado
                        zip_code:
                          type: string
                          description: CEP
                        complement:
                          type: string
                          description: Complemento (opcional)
                  required: []
                  type: object
                  description: Informações do cliente, obrigatórias para a emissão de boletos registrados ou necessárias para seu sistema de antifraude.
                order_id:
                  type: string
                  description: Número único que identifica o pedido de compra. Opcional, ajuda a evitar o pagamento da mesma fatura.
                soft_descriptor_light:
                  type: string
                  description: Altera a descrição da cobrança no cartão de crédito do cliente final (Até 12 caracteres). Caso não seja enviado, será utilizada a descrição configurada na conta.
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "//credit_card response\n{\n  \"message\": \"Autorizado\",\n  \"errors\": {},\n  \"status\": \"captured\",\n  \"info_message\": \"Transação capturada\",\n  \"reversible\": null,\n  \"token\": \"token4\",\n  \"brand\": null,\n  \"bin\": null,\n  \"last4\": null,\n  \"issuer\": null,\n  \"success\": true,\n  \"url\": \"https://checkout.iugu.dev/invoices/b332de4d-61aa-4e0c-ae3a-945b29b07eca-53d4\",\n  \"pdf\": \"https://checkout.iugu.dev/invoices/b332de4d-61aa-4e0c-ae3a-945b29b07eca-53d4.pdf\",\n  \"identification\": null,\n  \"invoice_id\": \"B332DE4D61AA4E0CAE3A945B29B07ECA\",\n  \"LR\": \"00\"\n}\n\n//bank_slip response\n{\n  \"success\": true,\n  \"url\": \"https://checkout.iugu.com/invoices/d819a14d-cb10-4c1d-80c7-e14d040a18cc-5213?bs=true\",\n  \"pdf\": \"https://checkout.iugu.com/invoices/d819a14d-cb10-4c1d-80c7-e14d040a18cc-5213.pdf\",\n  \"bank_slip_url\": \"https://boletos.iugu.com/v1/public/invoice/d819a14d-cb10-4c1d-80c7-e14d040a18cc-5213/bank_slip\",\n  \"bank_slip_pdf_url\": \"https://boletos.iugu.com/v1/public/invoice/d819a14d-cb10-4c1d-80c7-e14d040a18cc-5213/bank_slip.pdf\",\n  \"identification\": \"40192025089200000000700002597151910420000005000\",\n  \"invoice_id\": \"D819A14DCB104C1D80C7E14D040A18CC\"\n}"
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: "//credit_cart return\n{\n  \"errors\": \"token não é válido\"\n}\n\n//bank_slip return\n{\n  \"errors\": \"credit_cards não é suportado. (Métodos suportados: bank_slip)\"\n}"
        '422':
          description: '422'
          content:
            application/json:
              examples:
                Un.Entity:
                  value: "{\n  \"errors\": {\n    \"total\": [\n      \"deve ser maior que 1\" /* \"price_cents\" deve ser maior que 100 */\n    ]\n  }\n}\n\n//bank_slip return\n{\n  \"errors\": {\n    \"payer.cpf_cnpj\": [\n      \"não pode ficar em branco\"\n    ],\n    \"payer.name\": [\n      \"não pode ficar em branco\"\n    ],\n    \"payer.address.zip_code\": [\n      \"não pode ficar em branco\",\n      \"não é válido\"\n    ],\n    \"payer.address.number\": [\n      \"não pode ficar em branco\"\n    ]\n  }\n}"
      deprecated: false
      tags:
      - Charge
components:
  securitySchemes:
    sec0:
      type: apiKey
      in: query
      name: api_token
x-readme-fauxas: true
x-provenance:
  method: searched
  source: https://dev.iugu.com/reference
  harvested: '2026-10-14'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://dev.iugu.com/reference/cobranca-direta-com-2-cartoes.md
  - https://dev.iugu.com/reference/cobranca-direta.md
  - https://dev.iugu.com/reference/criar-token.md
  - https://dev.iugu.com/reference/listar-api-tokens.md
  - https://dev.iugu.com/reference/reemissao-de-fatura-expirada.md
  merge:
    pages: 5
    deduped: 4
    conflicts_kept_first: 0