¿Ques un formulario de donaci?
Los formularios de donacison una infraestructura que le permite recibir donaciones al integrarlos en su propio sitio web. Puede crear un formulario de donaciingresando a la secciDonaciones > Formulario de Donaci en el mende la izquierda.
¿Qucambicon respecto a la V1?
Los formularios de donaciahora pueden funcionar tanto incrustados en su sitio web como en formato emergente (popup).
No es necesario enviar parmetros como cantidad, donacirecurrente, moneda, etc.
La estructura de notificacide resultados (Callback) se cambide JS a HTTP POST.
Se facilitla prueba.
La direccidel sitio web debe ingresarse como direccicompleta.
Se agregla opcide ofrecer opciones de cantidad predefinidas.
Se agregaron mensajes de error en la consola del desarrollador.
¿Quse debe tener en cuenta al crear?
El punto ms importante a tener en cuenta al crear un formulario de donacies que debe ingresar la direcci completa del sitio web donde usarel formulario. Al ingresar la direcci, debe incluir https:// al principio. Y si su sitio web tiene varias versiones, debe hacerlaca.
Los formularios de donacisolo funcionan con HTTPS en un entorno en vivo. Puede probarlos con HTTP en un entorno de prueba.
Por ejemplo;
https://www.alanadi.org/bagis/genel-bagis
Si su sitio funciona como https://www.alanadi.org, y https://alanadi.org, elija solo uno y redirija el nombre de dominio no seleccionado al otro.
Integracidel sitio web
ADVERTENCIA! Esta integracirequiere conocimientos de software. Debe dominar HTML y Javascript bcos. Si no domina estos temas, utilice nuestras pginas de donaciestndar.
En primer lugar, jQuery debe estar cargado en su sitio web. Si jQuery no estcargado, Fonzip darun error.
En segundo lugar, si el valor del encabezado Referrer-Policy de su pgina es no-referrer, Fonzip darun error. Debe usar un valor diferente a este.
Puede acceder a la informacibsica de integracidesde la secciDonaciones > Formularios de Donaci > Acciones > Informaci de Integraci .
<script type="text/javascript"> !function(e,t,s,n,c){e.fzv2||(n=e.fzv2=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)},e._fzv2||(e._fzv2=n),(n.push=n).loaded=!0,n.version="1.0",n.queue=[],fzv2.script_element=t.createElement(s),fzv2.script_element.async=!0,fzv2.script_element.src="https://s.fonzip.com/js/fzembed.v1.js",(c=t.getElementsByTagName(s)[0]).parentNode.insertBefore(fzv2.script_element,c))}(window,document,"script"); </script>Agregue nuestro script a la pgina de esta manera.
Si desea ejecutar el formulario relevante como incrustado, dentro del bloque <script>
fzv2("embed", "ANAHTAR", "EKLENECEK-ID");Si desea ejecutarlo como ventana emergente (popup), dentro del bloque <script>
fzv2("popup", "ANAHTAR", "BUTON-ID");Necesita agregar el cdigo.
Si desea iniciar el formulario incrustado pero quiere que permanezca oculto:
fzv2("embed", "ANAHTAR", "EKLENECEK-ID", true);
Simplemente envde el cuarto parmetro como true.
La etiqueta HTML donde se agregarel formulario incrustado debe ser <body>, <div> o <section>.
La etiqueta HTML que activarel formulario emergente debe ser <button> o <a>.
Los formularios de donacifuncionan automticamente en el idioma del navegador. Si el parmetro lang estdefinido en el bloque html de su pgina web, se considerarese idioma. Si desea forzar un idioma especfico, antes de las funciones de incrustaciy emergente;
fzv2("lang", "IDIOMA")Puede seleccionar el idioma de esta manera.
Idiomas vlidos
tr (Turco)
en (Ingls)
de (Alemn)
fr (Francs)
es (Espaol)
it (Italiano)
pt (Portugus)
nl (Holands)
ru (Ruso)
Transferencia de Datos al Formulario
Si desea agregar un valor predefinido al formulario emergente, puede agregar las siguientes propiedades al botcorrespondiente. Alternativamente, puede transferir datos a cualquier formulario en cualquier momento con la funci"data". Puede usar la funci"data" eliminando la propiedad "fz-data". Por ejemplo;
fzv2("data", "embed", "KEY", "currency", "USD")Propiedades | Descripci | Valor |
fz-data-currency | Moneda | ISO 4217 |
fz-data-recurring | Recurrente /ca | true|false |
fz-data-amount | Monto de la Donaci | Nmero |
fz-data-recurring-limit | DonaciRecurrente con Lmite de Tiempo | 0 - 60 |
fz-data-donor-type | Tipo de Donante | corporate|personal |
fz-data-first-name | Nombre / Nombre de la Instituci | Alphanumeric{0,200} |
fz-data-last-name | Apellido | Alphanumeric{0,200} |
fz-data-email | Correo Electrnico | Email{0,200} |
fz-data-phone | Telfono | Phone{0,25} |
fz-data-birthday | Fecha de Nacimiento | Fecha (Da/Mes/Ao) |
fz-data-city | Ciudad | Alphanumeric{0,200} |
fz-data-district | Distrito | Alphanumeric{0,200} |
fz-data-address | Direcci | Alphanumeric |
fz-data-tckno | Nm. de Identificaci/ Nm. Fiscal | Number{11,13} |
fz-data-details | Descripci | Alphanumeric{0,300} |
fz-data-referring | En nombre de alguien | true|false |
fz-data-referring-name | Persona en nombre de quien se hace la donaci | Alphanumeric{0,100} |
fz-data-referring-email | Correo electrnico de la persona en nombre de quien se hace la donaci | Email{0,100} |
fz-data-news-via-phone | Permiso de Comunicacipor Telfono | true|false |
fz-data-news-via-sms | Permiso de Comunicacipor SMS | true|false |
fz-data-news-via-email | Permiso de Comunicacipor Correo Electrnico | true|false |
fz-data-fundraising-campaign-id | Campaa de Donaci | Number |
fz-data-name-hidden | No mostrar nombre | true|false |
fz-data-amount-visible | Mostrar monto de la donaci | true|false |
fz-data-api-tracking-id | ID de Seguimiento de API | Alphanumeric{0,20} |
fz-data-custom-parameters | Parmetros Personalizados |
|
Si las propiedades aadidas completan todo el formulario, este avanzarautomticamente a las siguientes etapas. Es decir, si hay informacide la cantidad, se dirigirautomticamente a la seccide informacidel donante, y si tambin hay informacidel donante, se redirigirdirectamente a la seccide informacide la tarjeta.
Parmetros Personalizados
Para transferir cualquier campo que no estdefinido en Fonzip pero que usted utilice al recibir donaciones a Fonzip, puede utilizar la funcide parmetros personalizados.
Creacide Parmetros Personalizados
Puede crear un parmetro haciendo clic en Agregar par metro en la secciParmetros Personalizados, ubicada en la parte inferior de la pgina de creaci/edicidel formulario de donaci.
En la pantalla que aparece, ingrese el valor de la clave que pasaren el parmetro en la secciNombre del campo, y en la secciDescripci , escriba el valor que desea que aparezca en el sistema y guarde.
Por ejemplo, creamos un parmetro con el nombre de campo receipt y la descripciSolicitud de Recibo. Si el donante desea un recibo adicional, rellenaremos este campo como "S"; si no desea un recibo, como "No".
Nota: No hay restricciones en los valores que se pasar en los par metros.
Debe pasar una cadena JSON a la propiedad fz-data-custom-parameters. Ejemplo:
<button id="fonzip-button" fz-data-custom-parameters="{'makbuz': 'makbuz_degeri'}"/>Despus de completar la donaci, si se seleccionla opcide solicitar un recibo, podrver los datos relevantes en los detalles de la donacicomo se muestra a continuaci.
Advertencias de Parmetros Personalizados
El envo de un parmetro no definido en la configuracidel formulario provocarun error en el sistema.
El envo de datos en un formato diferente al JSON provocarun error en el sistema.
Si cambia o elimina el nombre de campo de un parmetro que agregpreviamente, puede perder los datos relacionados en las donaciones afectadas.
Poltica de Seguridad de Contenido (CSP)
Si estprotegiendo su sitio con CSP por motivos de seguridad, debe agregar las siguientes definiciones.
script-src: https://s.fonzip.com
connect-src: https://fonzip.com
style-src: https://s.fonzip.com
img-src: https://s.fonzip.com https://cdn.fonzip.com
frame-src: https://fonzip.com
Si estutilizando Nonce, el valor de Nonce debe definirse antes de la funcide incrustacio emergente
fzv2("nonce", "NONCE-VALUE");De esta manera.
Notificaciones de Retorno de Resultados
Si no define una URL de Retorno de Resultados al crear/editar su formulario, Fonzip mostrarla pantalla de resultados estndar dexito/fracaso y luego redirigiral donante a la Direccide Pgina que haya definido.
Si la defini, el resultado de la operacise enviara la URL que definicomo HTTP POST. Puede encontrar los parmetros que se enviaren la siguiente tabla.
Si hay protecciCSRF contra las solicitudes POST realizadas a la URL que defini, esta proteccidebe eliminarse. Como alternativa, puede realizar una verificacien el parmetro hash para confirmar que la solicitud proviene de Fonzip. Se recomienda encarecidamente realizar esta verificaci.
Clculo del Parmetro Hash
Para el clculo del parmetro hash, conversation_id y Secret Key se aplican hash con el algoritmo sha256 y se convierten a base 16.
hash = sha256(conversation_id + Secret Key)
Por ejemplo:
conversation_id = 123456
Secret Key = gizlianahtar
hash = sha256(12345gizlianahtar) = 823b922b1bf0560b383e50e57e265172757d7718a85cd87497820ae1530e44f6
Par metro | Descripci |
donation_id | Nm. de Registro |
donor_type | Tipo de Donante |
name | Nombre y Apellido del Donante |
first_name | Nombre / Nombre de la Instituci |
last_name | Apellido |
Correo Electrnico | |
phone | Telfono |
birthday | Fecha de Nacimiento |
city | Ciudad |
district | Distrito |
address | Direcci |
details | Descripci |
tckno | Nm. de Identificaci/ Nm. Fiscal |
referring | En nombre de alguien |
referring_name | Persona en nombre de quien se hace la donaci |
referring_email | Correo electrnico de la persona en nombre de quien se hace la donaci |
recurring | Recurrente /ca |
recurring_limit | DonaciRecurrente con Lmite de Tiempo |
recurring_order_id | Nm. de Instruccide DonaciRecurrente |
category_id | ID de Categora de Donaci |
category | Categora de Donaci |
name_hidden | No mostrar nombre |
amount_visible | Mostrar monto de la donaci |
custom_parameters | Parmetros Personalizados |
donation_form_id | ID de Formulario de Donaci |
donation_form | Formulario de Donaci |
news_via_phone | Permiso de Comunicacipor Telfono |
news_via_sms | Permiso de Comunicacipor SMS |
news_via_email | Permiso de Comunicacipor Correo Electrnico |
lang | Idioma |
complete_date | Fecha de Operaci(ISO 8601) |
amount | Monto de la Donaci |
currency | Moneda (ISO 4217) |
ip_address | DirecciIP |
payment_status | Estado del Pago
3: Exitoso
5: Fallido |
payment_method | Mtodo de Pago
0: Tarjeta
8: BKM Express
9: iDEAL
10: Pagar conyzico |
payment_settings_id | ID de POS Virtual |
api_tracking_id | ID de Seguimiento de API |
order_id | Nm. de Pedido Bancario |
conversation_id | ID de Traza |
last_four | ltimos 4 Dgitos de la Tarjeta |
bin_number | Nm. BIN de la Tarjeta |
transaction_id | Nm. de TransacciBancaria |
provision_no | Nm. de AprobaciBancaria |
auth_code | Nm. de Aprobaci |
reference_id | Nm. de Referencia |
error_code | Cdigo de Error |
error_text | Mensaje de Error |
hash | Hash |
ConfiguraciAvanzada
Si desea eliminar un formulario de su pgina, debe usar la funci"destroy".
fzv2("destroy", "popup", "KEY")
fzv2("destroy", "embed", "KEY")
Si desea mostrar un formulario oculto, puede usar la funci"show".
fzv2("show", "popup", "KEY")
fzv2("show", "embed", "KEY")
Si desea ocultar un formulario mostrado, puede usar la funci"hide".
fzv2("hide", "popup", "KEY")
fzv2("hide", "embed", "KEY")
Si desea recibir una notificacicuando se cierra un formulario emergente, debe definir la funcique desea que se llame con la funci"callback".
function close_function(KEY) {
console.log("popup closed", KEY)
}
fzv2("callback", "popup", "KEY", "close", close_function)
Migracide V1 a V2
Primero, cree un formulario de donacipara V2. Como funcionarcomo un popup, al igual que antes, en su pgina
fzv2("popup", "KEY", "ID-BOTN");Debe iniciarlo de esta manera.
Antes de iniciar las operaciones realizadas en la ventana emergente de V1 con fz.bagis() sin enviar los parmetros de cantidad, recurrente y moneda, puede reflejar los eventos de estos cambios de cantidad, recurrencia y moneda en las propiedades que comienzan con fz-data-*.
Por ejemplo, antes
<script>
function bagis_yap() {
var miktar = document.getElementById("miktar").value;
var duzenli = document.getElementById("duzenli").checked;
fz.bagis({
amount: miktar,
recurring: duzenli
//Otros parmetros
})
}
</script>
<input id="miktar" type="number" step="0.01" placeholder="Monto de Donaci"/>
<input id="duzenli" type="checkbox" />
<label for="duzenli">Hacer Donaci Recurrente</label>
<a onclick="bagis_yap();" href="javascript:;>Hacer Donaci</a>
En lugar de tomar valores como los anteriores y llamar a fz.bagis() al hacer clic en el bot, debe reflejar los valores correspondientes en las propiedades fz-data-* cuando los valores relevantes cambien. Por ejemplo:
<script>
document.getElementById("miktar").addEventListener("change", function(event) {
this.setAttribute("fz-data-amount", this.value);
});
document.getElementById("duzenli").addEventListener("change", function(event) {
this.setAttribute("fz-data-recurring", this.checked);
})
</script>
<input id="miktar" type="number" step="0.01" placeholder="Monto de Donaci"/>
<input id="duzenli" type="checkbox" />
<label for="duzenli">Hacer Donaci Recurrente</label>
<a id="fonzip-button" fz-data-amount="" fz-data-recurring="">Hacer Donaci</a>