Content Security Policy (CSP)
Dominios que debés incluir en tu Content Security Policy para que las wallets (PayPal, Apple Pay, Click to Pay) funcionen correctamente.
Las wallets PayPal, Apple Pay y Click to Pay (Cybersource) cargan scripts y/o iframes desde dominios de sus proveedores. Si tu sitio define una Content Security Policy (CSP), tenés que autorizar esos orígenes en las directivas script-src, frame-src y frame-ancestors; si no los agregás, el botón o el checkout pueden no cargar o fallar en runtime.
Este requisito viene de los propios proveedores de las wallets: el navegador bloquea recursos que no estén permitidos por tu CSP.
Cómo obtener los dominios a incluir
Koin expone un endpoint GET que devuelve en JSON las directivas actualizadas con todos los dominios que debés incluir. Usá la URL según tu ambiente:
- Producción: https://payments.koin.com.br/suntzu-api/wallets/csp
- Sandbox: https://portal-dev.koin.com.br/suntzu-api/wallets/csp
Ejemplo de respuesta
El endpoint devuelve un JSON con las directivas y la lista de orígenes separados por espacio. Por ejemplo (sandbox):
{
"scriptSrc": "https://portal-dev.koin.com.br https://testup.cybersource.com https://www.paypal.com https://www.sandbox.paypal.com https://applepay.cdn-apple.com",
"frameSrc": "https://portal-dev.koin.com.br https://testup.cybersource.com https://www.paypal.com https://www.sandbox.paypal.com https://applepay.cdn-apple.com",
"frameAncestors": "https://portal-dev.koin.com.br https://testup.cybersource.com https://www.paypal.com https://www.sandbox.paypal.com https://applepay.cdn-apple.com"
}Debés mapear cada clave a la cabecera HTTP correspondiente de CSP:
scriptSrc→ directivascript-srcframeSrc→ directivaframe-srcframeAncestors→ directivaframe-ancestors
Sumá los orígenes que devuelve el endpoint a las directivas que ya tengas en tu sitio (no reemplaces el resto de tu política).
Wallets a las que aplica
Este requisito aplica a las integraciones de:
Referencia
Para más detalles sobre Content Security Policy y sus directivas:
Updated 7 days ago
