Depósitos sem período de espera de 8 dias (Steam Trade Protection)
Esquema de interação:
1. Processamento de troca
- Utilizador recarrega saldo via SkinsBack.
- Seleciona skins CS2 para depósito e aceita troca.
- Após aceitação da troca, SkinsBack envia pedido WebHook com estado in_hold para Result URL especificado nas configurações do projeto.
- Corpo do webhook conterá objeto com informações de depósito e dados do utilizador (campo user_risk) para decisão de aprovação de fundos.
Dados adicionais do utilizador:
- Soma total de depósitos do utilizador em todos os projetos durante todo o período.
- Número total de depósitos do utilizador em todos os projetos durante todo o período.
- Soma e contagem de depósitos com reversão onde utilizador recebeu pagamentos antecipados de projetos.
- Data de registo do utilizador no nosso sistema
- Valor do inventário do utilizador.
- Data do último depósito.
Exemplo de dados:
{
// ... deposit data
"user_risk": {
"total_deposits_count": 1,
"total_deposits_sum": 7.68,
"total_rollback_deposits_count": 0,
"total_rollback_deposits_sum": 0,
"joined_at": "2024-05-27 13:54:30",
"last_deposit_at": "2025-03-27 17:22:51",
"user_inventory": {
"cs2": {
"last_updated_at": "2025-07-17T20:51:48.689998Z",
"sum": 2.75
},
"dota2": {
"last_updated_at": "2025-07-17T20:50:48.689998Z",
"sum": 2.00
},
"rust": {
"last_updated_at": "2025-07-17T20:55:48.689998Z",
"sum": 1.40
},
}
}
}
Atualmente este é um conjunto de dados de teste que acreditamos ajudar na tomada de decisão. Em 5 anos de operação temos histórico de mais de 6 milhões de utilizadores. Combinando esta informação com histórico do cliente na sua plataforma, pode tomar decisão sobre crédito antecipado de fundos.
3. Esquema de transição de estados
- Depósito permanecerá em estado pendente para conclusão de Steam Trade Protection de 8 dias até enviar pedido para método offer_approve. Após envio de pedido, página de depósito mostrará estado final de sucesso, estado do depósito mudará para hold_approved e sistema enviará Webhook para Result URL com estado atualizado.
- Se utilizador não cancelar troca em 8 dias, Result URL receberá webhook com estado success, finalizando estado e creditando fundos ao saldo do projeto.
- Em caso de cancelamento de troca pelo utilizador, Result URL receberá webhook com estado hold_returned e fundos não serão creditados.
Possíveis variantes de transição de estado (campo status) para depósitos:
- pending → in_hold → success ou fail (esquema padrão)
- pending → in_hold → hold_approved → success ou hold_returned (esquema usando offer_approve)
4. Crédito e reembolso ao utilizador
Ao receber estados hold_approved e hold_returned, implemente lógica de processamento adequada. Pode incluir:
- desbloquear ou bloquear saldo do utilizador.
- aplicar outras sanções conforme política da plataforma.
5. Cenários de exemplo
- Se cliente cancelou pagamentos após receber fundos anteriormente - isto é alerta vermelho, transação deve ser retida.
- Se cliente tem inventário avaliado em $2000 e é seu cliente frequente fazendo depósito de $100, transação pode ser aprovada já que bloquear inventário e arruinar reputação no seu serviço seria desvantajoso.
- Seu departamento de risco verificou informações do cliente, possivelmente solicitou KYC, e após decisão da sua equipa de creditar fundos ao cliente, pode enviar pedido ao método offer_approve a qualquer momento dentro de 8 dias
Assim, muitos pequenos depósitos podem ser processados automaticamente. Eficácia desta abordagem será analisada durante operação.
6. Informação importante
Decisão final sobre crédito de depósito é feita por seu lado. Após 8 dias fundos serão creditados ou serão fornecidas informações sobre cancelamento de troca devido a ações fraudulentas do cliente.