Skip to main content
Busca um checkout por checkoutId com o mesmo payload enriquecido que GET /v1/checkouts/:id, mas com isolamento por URL:
  • Se o checkout existir, porém o produto principal (checkouts.product_idproducts.organization_id) for diferente de :orgId, a API responde 404 Not Found (mesmo que o JWT do pai pudesse enxergar esse checkout em outro contexto).
Assim, integrações que usam :orgId no path nunca misturam acidentalmente sessões de outro vendedor.

Autenticação

JWT da organização pai com relação direta para :orgId.

Escopos

Pelo menos um de: web:read, web:write, checkouts:read.

Parâmetros de path

orgId
string
required
UUID da sub-organização esperada como dona do produto principal do checkout.
checkoutId
string
required
UUID da sessão de checkout.

Resposta

200 OK — objeto checkout (produto embutido, cliente, desconto, etc.), alinhado ao endpoint principal.

Erros

HTTPMotivo
404Checkout inexistente, soft-deleted, ou produto principal não pertence a :orgId
401 / 403Token, escopo ou vínculo pai–filho inválido

Exemplos

Obter checkout após criação

curl -s "${API_BASE:-https://api.chargefy.io/api}/v1/sdk/organizations/${CHILD_ORG_ID}/checkouts/${CHECKOUT_ID}" \
  -H "Authorization: Bearer ${PARENT_JWT}" \
  -H "Accept: application/json" | jq .

Fluxo típico: criar → redirecionar → consultar status pelo ID

const create = await chargefy.subOrganizations.createCheckout(childOrgId, {
  productId: productId,
  customerEmail: '[email protected]',
})
if (!create.ok) throw create.error

const checkoutId = create.value.id

// Mais tarde, job de reconciliação ou painel do marketplace:
const again = await chargefy.subOrganizations.getCheckout(childOrgId, checkoutId)
if (!again.ok) throw again.error
console.log('Status atual:', again.value.status)

Tentativa com orgId errado (404)

Se você trocar CHILD_ORG_ID por o UUID de outro filho que não é dono do produto da sessão, o mesmo CHECKOUT_ID retorna 404 neste path — propositalmente, para não vazar que o ID existe em outra loja.
curl -s -o /dev/null -w "%{http_code}" \
  "${API_BASE}/v1/sdk/organizations/${WRONG_CHILD_ORG_ID}/checkouts/${CHECKOUT_ID}" \
  -H "Authorization: Bearer ${PARENT_JWT}"
# Esperado: 404

Variáveis (bash)

export API_BASE="https://api.chargefy.io/api"
export PARENT_JWT="<supabase_jwt>..."
export CHILD_ORG_ID="uuid_sub_org"
export CHECKOUT_ID="uuid_checkout"