A Framework for Partial Payments

Slides:



Advertisements
Similar presentations
Agenda Web Dynpro UI Element and Tools Enhancements Islands
Advertisements

General Financial Supply Website & E-Commerce Solutions This presentation will demo the GFS corporate website and On-Line Order Inquiry options available.
CiviContribute. This Week's Agenda CiviContribute is an online fundraising and donor management component which enables you to track and manage contributions.
Sage CRM Developers Course
Software Engineering 1 Object-oriented Analysis and Design Chap 30 Relating Use Cases.
Eric Westfall – Indiana University Jeremy Hanson – Iowa State University Building Applications with the KNS.
Courier Tracking System. Small Courier Operations Small courier services collect Letters and parcels from customers and issues its own POD number Then.
Warehouse Report. Log into EDS using your Address/User Id and Password. If you have forgotten your password, click on the Forgot Password? link.
Building Applications with the KNS. The History of the KNS KFS spent a large amount of development time up front, using the best talent from each of the.
1 Kuali Nervous System (KNS) Part 2 Presented by: Jerry Neal – KFS Development Manager Geoff McGregor – KC Lead Developer Brian McGough – KRice Project.
To access our web services, go to……. Click on Customer Login.
Payroll/Personnel System Web-Based New Hire Presented by Payroll Services.
Contract Invoice Guide
CiviCRM v3.2 Why you’ve got to get it (release highlights) (updated 7/19/2010)
 Accounting Improvements What’s New with CiviCRM and Accounting Integration Joe Murray, President Presented at CiviCon Colorado, June 2016.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
Emdeon Office Batch Management Services This document provides detailed information on Batch Import Services and other Batch features.
6. Application Server Issues for the Project
Online Civil Pensioner’s Medical Services
Compatible with the latest browsers; Chrome, Safari, Firefox, Opera and Internet Explorer 9 and above.
Riding the Wave of Innovation
Unit & District Tools Phase 1
What is next for the REDCap Mobile App?
Getting Started with... Business Partner Express
New Features and Functions
Comp Tax Presenter : Kara Moore.
Custom Profile Options
Internet Rechartering Update
Introducing.
PROPworks ESB Financial Interface
District And Club database
MVC Architecture, Symfony Framework for PHP Web Apps
P2P Module: Ariba P2P INVOICING
Testing Alfresco extensions (no, it’s not about jUnit)
Section 13 - Integrating with Third Party Tools
Oracle Subledger Accounting
Data Virtualization Tutorial… CORS and CIS
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Play Framework: Introduction
Genius Activation for New Client Start Genius software, it will be displayed following main screen: Click on 'More Services' option.
Assess Survey Invitations
Riding the Wave of Innovation
Bulk update E. Camelback Road #559, Phoenix, AZ Phone: Fax:
MCU cluster Cristian Alexe 18 October 2010.
Everything You Need to Know About AW-PENDING PAYMENTs
Better Living through Extensions
Java Web Start The New Way to Open Oracle Financials Form Applications
Active Orders Supplier Administrator Training Getting Started Activities This training presentation describes the Getting Started activities that will.
NextGen Payroll New Features
JDXpert Workday Integration
Ready, Set, GoTransactions
Harness the Power of Promotional Packages in MX
Partner Portal Introduction Bottomline Partner Programme
Superior Drupal Integration for CiviCRM with a focus on Events
Introducing the New and Improved Staff Web Access
NextGen Utility Billing
I am a Practice Manager.
StarCare for CLC Enhancing the Student Experience Achieving
Zortec Accounts Payable Beginner Basics.
To access bill pay site go to biller specific URL
Two methods to observe tutorial
THE BENEFITS OF HRS INSURANCE PROCESSING
Customer Contract Management Scenario Overview
This is the Sign In page for the Dashboard
Unemployment Insurance Agency Michigan Web Account Manager
Transition Readiness Review
RMA User Guide.
iSP Overview for worksheet Invoice submission users
EFT for Payables Elaine Foley EFT for Payables is a hole in one!
Marketplace FAQs Treasury 5/1/2019.
Presentation transcript:

A Framework for Partial Payments Dave Schafer Anum Goel

What We’re Trying to Do Define a way for partial payment functionality to be exposed to front end users. Partial payments are supported on the backend This functionality for front end users is not yet defined in Civi core There are a lot of challenges in doing this Is there an alternative How has BOT dealt with this issue

A long time ago in a galaxy far far away… Actually it was 2010 and CiviCRM 3.3

Partial Payments for UMC Conferences Our first Civi Implementation (yikes!) Churches have remittances to pay to the conference They don’t / can’t pay a fixed amount each month BOT created a Civi component to provide payment entry for backend and front end users

AR Payment Component Used the civi pledge data structure as an “Invoice” model Created a custom UI for frontend and backend payment entry Supported check or ACH payment methods Custom table for recording the distribution of a contribution against multiple pledge records Deployed in 2 UMC Conferences

What Did We Learn? The entire process is very client specific The types of payments made The rules for making payments The information displayed to support the payment process The UI components of the proces And, during this time the partial payment structure in Civi was maturing - now what?

Let’s Use Core Partial Payments 4.5 introduced backend UI support for partial payments No frontend features available Works primarily for events Works for contributions if special status rules are followed Our first implementation for a camping organization.

http://dev. roundlake. vm-host. net/civicrm/roundlake/add/payment http://dev.roundlake.vm-host.net/civicrm/roundlake/add/payment?reset=1

Technical Details

Approach Two step process: Why this approach? User Interface Extension Partial Payment Extension Why this approach? Modular Independent and flexible user interface

User Interface Extension Partial Payments Extension Database Web Page User Interface Extension Partial Payments Extension Database User Clicks on ‘Make Payment’ link Requests Payment Page Requests Event Registration data for the logged in user Renders form with payment options Returns event registrations data User fills payment details Invoke payment processor Create new financial transaction for total amount process_partial_payments( ) Loop Update contribution status BAO::updateParticipantStatus() BAO::recordAdditionalPayment () Returns updated records Displays success message Returns processed payments

User Interface Extension Adds new ‘component’ in CiviCRM Displays event registrations for the user and related contacts Status of registrations – ‘Partially Paid’ or ‘Pending from pay later’ Uses default payment processor Adds financial_trxn record for total amount being paid Recommendation - Add validation for contribution id

Partial Payment Extension Wrapper around the core function to create partial payments Requires parameters to be passed in array Payment processor parameters Participant Information Update status of contribution and participant record from ‘Pending from pay later’ to ‘Partially paid’ before processing Returns the participant information array with a flag for success

Parameters Payment processor parameters Same parameters as used for doDirectPayment() Participant information should be an associative array: Key: participantID Values: ‘cid’ (contactID) ‘contribution_id’ (contributionID) ‘payLater’ (PayLater flag) ‘partial_payment_pay’ (Partial Payment Amount)

Example

Improvements Define a viable error handling strategy in Partial Payment extension Make the participant specific behavior optional Determine if this can be extended to any “pending” contribution

Release Development in CiviCRM 4.5.x Tested successfully in CiviCRM 4.6.2 Released partial payment extension only Download URL - https://github.com/backoffice/BOT-Partial-Payment-Extension/archive/master.zip

Thanks & Discussion We hope this was helpful. Where should we go from here?