Termos de assinatura
Cria, versiona e consulta os termos que o cliente aceita ao assinar, e lista os aceites registrados.
Cobrar um cartão todo mês exige consentimento claro. O termo de assinatura é o texto desse consentimento, e cada aceite grava IP, navegador e a impressão digital do texto. As rotas desta página são do seller; a loja tem termos próprios da plataforma, que o seller enxerga mas não edita.
Listar termos
O termo de assinatura é o texto que o cliente aceita ao assinar. Ele é versionado: editar cria uma versão nova e a antiga continua existindo, porque o aceite já registrado aponta para o texto exato que o cliente viu. Lista os termos próprios do seller e os da plataforma.
/api/v1/vendor/recurring/termsSellerTermos de assinatura que o seller pode usar
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso de um usuário seller (veja Tokens).Parâmetros de consulta
include_historystring11 inclui também as versões antigas. Sem isso só as vigentes.Exemplo de requisição
Resposta
Campos da resposta
termsobject[]Termos, por nome e versão decrescente.
iduuidvendor_iduuidnamestringcontentstringversionintegeris_currentbooleanparent_term_iduuidcreated_atstringErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador), ou o usuário não está vinculado a nenhum seller. | {"error":"insufficient permissions"} |
| 403 | O módulo recurring-payments está desligado nesta loja. | {"error":"module_disabled","module":"recurring-payments"} |
| 403 | O usuário não está vinculado a nenhum seller. | {"error":"no vendor account"} |
Criar termo
Cria a versão 1 de um termo do seller. Para usar o termo em um produto, a ligação é feita na configuração do produto.
/api/v1/vendor/recurring/termsSellerCriar um termo de assinatura
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso de um usuário seller (veja Tokens).Content-Typestringobrigatórioapplication/json.Corpo da requisição
namestringobrigatóriocontentstringobrigatórioExemplo de requisição
Resposta
Campos da resposta
termobjectO termo criado.
iduuidvendor_iduuidnamestringcontentstringversionintegeris_currentbooleanparent_term_iduuidcreated_atstringErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Corpo que não é JSON. | {"error":"invalid_json","message":"Corpo da requisição inválido."} |
| 422 | Nome ou texto vazios. | {"error":"term_name_required","message":"Informe o nome do termo."} |
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador), ou o usuário não está vinculado a nenhum seller. | {"error":"insufficient permissions"} |
| 403 | O módulo recurring-payments está desligado nesta loja. | {"error":"module_disabled","module":"recurring-payments"} |
| 403 | O usuário não está vinculado a nenhum seller. | {"error":"no vendor account"} |
Aceites de termos
Lista os aceites registrados nos termos e assinaturas do seller: cliente, versão, IP, navegador e o SHA-256 do texto exato aceito. É a prova de consentimento.
/api/v1/vendor/recurring/terms/acceptancesSellerQuem aceitou quais termos
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso de um usuário seller (veja Tokens).Parâmetros de consulta
product_iduuiddate_fromstringYYYY-MM-DD ou RFC 3339.pageintegerpadrão: 1per_pageintegerpadrão: 50Exemplo de requisição
Resposta
Campos da resposta
acceptancesobject[]Aceites da página.
idstringterm_namestringterm_versionintegeruser_namestringuser_emailstringproduct_iduuidproduct_namestringipstringuser_agentstringcontent_sha256stringaccepted_atstringtotalintegerpageintegerErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 422 | date_from com formato inválido. | {"error":"date_invalid","message":"Data inicial inválida (use AAAA-MM-DD)."} |
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador), ou o usuário não está vinculado a nenhum seller. | {"error":"insufficient permissions"} |
| 403 | O módulo recurring-payments está desligado nesta loja. | {"error":"module_disabled","module":"recurring-payments"} |
| 403 | O usuário não está vinculado a nenhum seller. | {"error":"no vendor account"} |
Ver termo
Devolve uma versão específica de um termo visível ao seller (próprio ou da plataforma).
/api/v1/vendor/recurring/terms/{id}SellerUma versão de um termo, com o texto
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso de um usuário seller (veja Tokens).Parâmetros de caminho
iduuidobrigatórioExemplo de requisição
Resposta
Campos da resposta
termobjectO termo.
iduuidvendor_iduuidnamestringcontentstringversionintegeris_currentbooleanparent_term_iduuidcreated_atstringErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 404 | Termo inexistente, de outro seller ou id que não é UUID. | {"error":"term_not_found","message":"Termo não encontrado."} |
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador), ou o usuário não está vinculado a nenhum seller. | {"error":"insufficient permissions"} |
| 403 | O módulo recurring-payments está desligado nesta loja. | {"error":"module_disabled","module":"recurring-payments"} |
| 403 | O usuário não está vinculado a nenhum seller. | {"error":"no vendor account"} |
Publicar nova versão do termo
Publica uma nova versão (version + 1) de um termo do seller; a versão antiga deixa de ser vigente, mas continua guardada. Os produtos ligados ao termo passam a usar a nova versão. Se nome e texto forem iguais ao atual, nada muda. Só a versão vigente pode ser editada. Termos da plataforma não são editáveis pelo seller.
/api/v1/vendor/recurring/terms/{id}SellerEditar um termo gera uma nova versão
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso de um usuário seller (veja Tokens).Content-Typestringobrigatórioapplication/json.Parâmetros de caminho
iduuidobrigatórioCorpo da requisição
namestringobrigatóriocontentstringobrigatórioExemplo de requisição
Resposta
Campos da resposta
termobjectA versão vigente depois da operação.
iduuidvendor_iduuidnamestringcontentstringversionintegeris_currentbooleanparent_term_iduuidcreated_atstringErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 404 | Termo inexistente, de outro seller ou id que não é UUID. | {"error":"term_not_found","message":"Termo não encontrado."} |
| 403 | O termo é da plataforma, não do seller. | {"error":"not_owner","message":"Você não tem permissão para editar este termo."} |
| 409 | A versão enviada já foi substituída por uma mais nova. | {"error":"term_not_current","message":"Este termo já foi substituído por uma versão mais nova."} |
| 422 | Nome ou texto vazios. | {"error":"term_content_required","message":"Informe o texto do termo."} |
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador), ou o usuário não está vinculado a nenhum seller. | {"error":"insufficient permissions"} |
| 403 | O módulo recurring-payments está desligado nesta loja. | {"error":"module_disabled","module":"recurring-payments"} |
| 403 | O usuário não está vinculado a nenhum seller. | {"error":"no vendor account"} |