Ir al contenido principal

Formularios de donaci V2

¿C mo puedo crear un formulario de donaci e integrarlo en mi sitio web? ¿C mo utilizo los Par metros Personalizados?

Erdi avatar
Escrito por Erdi
Actualizado hoy

¿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

email

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>
¿Ha quedado contestada tu pregunta?