Links de pagamento

Atualizar link de pagamento

Atualiza as configurações de uma página de pagamento, como preço vinculado, parcelamento ou aparência. Todos os campos são opcionais — envie apenas o que deseja alterar.

PUT/v1/checkouts/:id
Base URL Produção:https://api.validapay.com.br
Base URL Sandbox:https://sandbox.validapay.com.br

Authorizations

bearer

Authorization

string · header · required

Cabeçalho de autenticação Bearer no formato Bearer {{token}} onde {{token}} é o seu token OAuth2.

Escopos requeridos

checkouts/write

Path Parameters

NameTypeRequiredDescription
idstringRequiredID do checkout / payment link (ex: pl_xxx) - required

Body

application/json

Content-Type:application/json
{
  "priceId": "price_yyy",
  "discounts": [],
  "maxInstallments": 6,
  "primaryColor": "#FF0000",
  "showProductImage": false,
  "termsOfServiceUrl": "https://meusite.com/termos-de-servico",
  "privacyPolicyUrl": "https://meusite.com/politica-de-privacidade",
  "applyBrandingToAllPrices": true
}

Schema

priceIdstringOptional

Novo preço vinculado ao checkout

discounts[0]array
maxInstallmentsnumberOptional

Limite de parcelas (1 a 12)

primaryColorstringOptional

Cor primária em hex

showProductImagebooleanOptional

Exibir imagem do produto

termsOfServiceUrlstringOptional

Termos de serviço exibidos no checkout para aceite do cliente

privacyPolicyUrlstringOptional

Política de privacidade exibida no checkout para aceite do cliente

applyBrandingToAllPricesbooleanOptional

Aplica a identidade visual a todos os preços

Headers

NameTypeValueRequired
Content-Type-application/jsonOptional
const url = 'https://sandbox.validapay.com.br/v1/checkouts/:id';

const options = {
  method: 'PUT',
  headers: {
    'Authorization': 'Bearer {{token}}',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
  "priceId": "price_yyy",
  "discounts": [],
  "maxInstallments": 6,
  "primaryColor": "#FF0000",
  "showProductImage": false,
  "termsOfServiceUrl": "https://meusite.com/termos-de-servico",
  "privacyPolicyUrl": "https://meusite.com/politica-de-privacidade",
  "applyBrandingToAllPrices": true
})
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));

Response Examples

200200
{
  "id": "pl_xxx",
  "priceId": "price_yyy"
}
404404
{
    "error": {
        "message": "Checkout não encontrado",
        "code": "CHECKOUT_NOT_FOUND",
        "details": null,
        "timestamp": "2026-07-14T21:39:36.322Z"
    }
}