Typically, we recommend keeping your batch sizes small as you count checks and cash in Planning Center Giving. Smaller batches are just easier to manage and organize. However, with the increased use of 3rd party integrations, there are more ways to import or sync donation data at a larger scale. Batches that contain hundreds or even thousands of donations in a single batch have become a lot more common!
Giving is now better equipped to better handle these massive batches and batch groups.
The Giving interface will no longer slow down (or lock up) when hitting the "commit" or "delete" button for large batches or batch groups. Instead, you'll now see an "Updating..." message which will disappear after a few seconds.
For exceptionally large batches, it might take a few moments for this message to go away. But you are now free to do other things while you wait for large batches to be committed or deleted.
New API Version
If you maintain an integration with Planning Center and it interacts with Planning Center Giving, we encourage you to update to the newest version of the API so you can take advantage of this change. Just like the Giving interface, the API wasn't really equipped to work gracefully with large batches and batch groups.
Here's a copy of the email we're sending your way:
Dear integration manager,
A new version of the Planning Center API was just released which addresses speed and stability when interacting with Giving. We encourage you to upgrade your integration as soon as you’re able.
The new version (2019-10-18) of the API moves the work of committing Batches and BatchGroups to the background. When you use one of the “commit” or “delete” endpoints with the new version, you'll receive an instant response which will indicate that the item is in an “updating” state. If your integration requires it, you can continue to request that resource and check whether the status has changed from "updating" to "committed" or “404” (which would indicate a successful deletion). You can read more of the technical details in our API Docs.
If you're unfamiliar, here are the details of our API versioning.
Why was this necessary?
In Giving, a lot happens when a batch or batch group is committed or deleted. It’s becoming more common for customers to have Batches or BatchGroups containing hundreds or even thousands of donations. Doing all this work in a synchronous request became was prone to timeout errors and resource locking. This new approach removes the need to wait for a response and adds stability to working with large Batches and BatchGroups.
What happens if I don't upgrade?
If you’re confident that your integration will never commit large Batches or BatchGroups, you can carry on as you have.
If you stay on the old version (2018-08-01), you may start seeing a new error from the API prompting you to upgrade when attempting to commit large Batches or BatchGroups with over 5,000 donations. While this is new, we're replacing inconsistent and unhelpful timeout and locking errors with one that is predictable and helpful.
If you have any questions, please open an issue on GitHub and a Planning Center developer would be happy to help.