</> Developers Guide to Funraisin

Webforms

Funraisin supports the ability to create custom forms within the admin itself which can be used either in conjunction with the structured registration forms, or as standalone data capture forms on pges created via the CMS.

Data Structure

The following tables relate to Webforms and Webform Data.

forms

["form_id","event_id","page_id","lump_id","list_id","charity_id","form_key","event_form_type","form_name","form_description","form_heading","form_copy","form_submit_label","form_layout","form_confirmation_copy","form_confirmation_url","form_confirmation_email","form_confirmation_template_id","form_confirmation_email_subject","form_confirmation_email_copy","form_confirmation_field","form_redirect","form_email_alert","use_helpdesk","crm_id","crm_contact_id","crm_behaviour","crm_id_type","is_mandatory","add_captcha","form_css","form_js","form_status","date_created"]

forms_options

["option_id","form_id","row_id","page_id","event_id","sort_order","option_type","field_type","is_mandatory","option_label","option_label_grid","option_field_grid","option_html","option_placeholder","option_values","option_values2","option_align","option_height","option_validation","option_name","option_grid","option_class","min_value","max_value","min_length","max_length","link_id","link_option","ecrm_name","crm_name","cm_type","date_created"]

form_submissions

["submission_id","form_id","event_id","member_id","donation_id","history_id","team_id","sale_id","tmp_donation_id","volunteer_id","page_id","event_page_id","blog_id","sess_id","user_ip","referer","is_approved","crm_submission_id","date_created"]

form_data

["id","submission_id","form_id","option_id","field_name","field_value","date_created"]

Custom JS/CSS

Adding custom code such as styling or JS can be done on a form by form basis, simply edit the form and choose Custom CSS or Custom Javascript from under the Advanced Options.

This will be rendered immediately after the form itself.

Personalisation

Submitted webform data can be accessed for personalisation in 2 ways, depending on what your situation is.

Confirmation Page and Email

The first scenario is from the form subumission itself, you might want to display back some of the captured data to the user on the page, or also in the confirmation email. This will apply only to webforms used on standalone pages.

For this you can use the personalisation tag {NAME_OF_FIELD}

Automated Emails

The second scenario is where the webform might be used within a registration flow and you might want to access some of the captured data in one of the many transactional automated emails thaht are sent out to a fundraiser or donor.

For this you can use the personalisation tag {webform_NAME_OF_FIELD}

API Access

Webform data is available via the API using the endpoint /api/webform/

This will provide you with all the captured data for the specific webform in JSON or CSV formats, depending on what format you specify.

This endpoint is readonly access and might also be based on your account permissions if you are being restricted to specific accounts.

Webhooks

Webhooks can be setup for individual webforms (only when used on standalone pages) simply by going to Funraisin > Developer > Webhooks and creating a new webhook and choosing the data source we "Webform" and then choosing which webform you want to fire off.

This will then send you all fields from that webform as a single JSON payload.

Optional Embed

A feature not commonly used, but it is possible to grab the embed code for a webform for when you might want to add it to part of a site where it's not naturally supported, such as a global footer.