Criar Cobrança com Cartão
Pagamentos com cartão de crédito suportam parcelamento e captura automática ou manual.
Endpoint
POST /v1/charges
Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
amount |
integer | Sim | Valor em centavos |
payment_method |
string | Sim | Deve ser "card" |
card.token |
string | Sim | Token do cartão (obtido via tokenização) |
card.installments |
integer | Não | Número de parcelas (padrão: 1) |
card.capture |
boolean | Não | Capturar automaticamente (padrão: false) |
customer |
object | Não | Dados do cliente (opcional - name, email, document, phone) |
items |
array | Não | Itens da transação (name, quantity, unit_price em centavos) |
metadata |
object | Não | Metadados customizados (chave-valor) |
external_id |
string | Não | ID externo para rastreamento |
store_id |
integer | Não | ID da operação (store) do dashboard. Se não informado, usa a operação padrão do seller. |
product_id |
integer | Não | ID do produto do dashboard. Opcional, para associar a cobrança a um produto específico. |
callback_url |
string | Não | URL para receber notificações pontuais desta cobrança (além dos webhooks configurados no dashboard) |
Exemplo de Requisição
curl -X POST https://api.apexpy.com.br/v1/charges \
-H "Authorization: Bearer YOUR_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 10000,
"currency": "BRL",
"payment_method": "card",
"card": {
"token": "tok_xxxxxxxxxxxxx",
"installments": 1,
"capture": true
},
"customer": {
"name": "João Silva",
"email": "[email protected]",
"document": "12345678909",
"phone": "47999999999"
},
"items": [
{
"name": "Produto Exemplo",
"quantity": 1,
"unit_price": 10000
}
],
"metadata": {
"order_id": "12345"
},
"external_id": "order_12345",
"store_id": 1,
"product_id": 5,
"callback_url": "https://seusite.com.br/webhook/order-12345"
}'
Tokenização de Cartão
Antes de criar uma cobrança, você precisa tokenizar o cartão usando a Public Key:
POST /v1/tokens/card
Consulte a documentação de autenticação para mais detalhes sobre tokenização.
Split de Pagamento
Você pode dividir o recebimento entre múltiplos sellers usando o campo split na requisição. A taxa de Cash In é calculada uma vez e cobrada do seller principal, enquanto os sellers no split recebem o valor líquido proporcional.