I am doing a billing. We enter items as pledges. I need a way to import the pledges from a spreadsheet. Last year I imported directly into the pledge table and did not realize I needed to also load the pledge_payment table. The pledge_payment is more complicated as you need the pledge number. Looking for an easy way to load both.


2 Answers 2


The API csv Import GUI extension will allow you to import pledges. You can import the pledges and then separately, the contributions marked as pledge payments that correspond to the needed pledges.

Note: When you import the contributions, you will need a column for "pledge payment" that is marked Y for each row. Also, you will need a column with the corresponding pledge number for each row so the import knows which pledge the contribution goes to.

  • Allen. This looks promising but I am unable to import the pledge payments. I tried to do it from the contribution importer (I inlcuded the pledge payment columns with y for each row along with the pledge ID) I get a very vague error that isn't helpful. I also tried to import as pledge payments from API csv but no luck. I get an error there as well. Any ideas or insights you can share?
    – Yossi
    Commented Dec 13, 2017 at 23:11
  • Oh boy, the last time I used that extension was two years ago. I know you said the error was vague, but what was the text of it? Commented Dec 16, 2017 at 0:18

We solved the current problem using a tool called Selenium. It is basically a testing tool, but you can record a script and create an XML file with each line having the data for one transaction. The tool simulates a user at a browser. Took about 5 hours time from an experienced programmer to setup. For 300 transactions we probably broke even on time but being a nonprofit the labor was volunteer. If we had to pay for the developer it would have been less expensive to hire a temp.

Our plan for next year is to code a module so our office staff can easily import a CSV file.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.