Guias de integração
Ligar um donativo real ao pagamento central
Recolha campos configurados; Server determina moeda, encargos e contributo confirmado.
Antes de começar
- Campanha pública real aberta a contributos.
- Moeda, limites, campos e totais públicos permitidos da campanha.
- Teste autorizado e cliente Web protegido ou integração Organização aprovada separadamente.
Ler a causa e os requisitos
Apresente campanha e beneficiário públicos. O montante usa a moeda real de venda; respeite campos relevantes e anonimato.
Não invente metas nem totais, não revele doadores privados nem altere para moeda de apresentação. Server valida montante e encargos.
Manter proteção no percurso Web
POST /api/public/donate passa por fetchPublicFlow("/donate", ...), que prepara contexto e tentativa estável. Server recusa contexto ausente e aplica controlos.
Um script ou plugin externo não pode substituir isto com impressões digitais falsas. Use integração protegida aprovada ou a página real; o helper não é um pacote de navegador publicado.
Abrir o pagamento do servidor
O exemplo inativo não envia nada ao apresentar a documentação. Chame-o a partir de formulário validado e teste autorizado; preserve a tentativa na incerteza.
Abra authorization_url em checkout.sparkglim.net. Checkout devolve o visitante e Server regista donativos. Sem verificação, consultas periódicas, total otimista ou confirmação inventada no navegador.
'use client';
import { fetchPublicFlow } from '@/lib/server-backend/public-api';
type Input = { campaign_id: string; amount: number; phone_number?: string; email?: string; donor_name?: string; anonymous?: boolean; custom_data?: Record<string, unknown>; client_attempt_id: string; return_path: string };
let requestStarted = false;
export async function initializeApprovedTest(input: Input, approvedTest: boolean) {
if (!approvedTest || requestStarted) return null;
requestStarted = true;
const response = await fetchPublicFlow('/donate', {
method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(input)
});
const result = await response.json();
if (!response.ok || result.success !== true) throw new Error(result.error || 'Checkout unavailable');
if (typeof result.data?.authorization_url !== 'string') throw new Error('No paid checkout URL returned');
const target = new URL(result.data.authorization_url);
if (target.origin !== 'https://checkout.sparkglim.net' || target.username || target.password) throw new Error('Invalid checkout URL');
window.location.assign(target.href);
return target.href;
}Verifique a sua integração
- Testar montante, contactos e anonimato com dados autorizados.
- Preservar moeda e totais privados; rever regresso sem um donativo real.