As a self-employed person, I also do my accounting myself - in my case with Collmex. Because of my plugin business, more and more payments are coming in via PayPal and Stripe and I used to enter these payments manually, a lot of time was lost for this. Now I have found a way to automate these steps, at least to a larger extent, and maybe this will help other freelancers.
So far, my process has looked like this:
- After payment of a plugin (via Paypal or Stripe) EDD generates an invoice and sends it to the customer and me
- During accounting, I work through invoice by invoice and reconcile them with the incoming payment
Neither in PayPal nor Stripe was my own EDD invoice number visible, so I always had to match the e-mail address or the name of the customer or the date and the sold product, where the money came from. For 20 sold plugin licenses, it usually took as much time as for the rest of the accounting, because Collmex learns automatically based on the incoming payments (reconciled via HBCI) and almost always pre-selects the correct accounts.
My preference would have been to be able to send the information about my invoice number from Easy Digital Downloads to PayPal or Stripe, and they in turn would somehow make it retrievable. For a while I also did this with MT-940 Exports (via Banking 4), but this was another way that always involved a lot of manual work. Now I've found a solution with PayJoe that may work better - I'm testing diligently right now.
Connect PayJoe and Easy Digital Downloads
PayJoe connects to payment service providers and makes their activities available as HBCI retrieval e.g. Collmex and other booking systems. However, it can import receipt data at the same time and assign these to the corresponding transaction via a comparison:
In the end, you get the possibility to assemble the intended use that finally appears in the accounting software yourself from many variables. You can also proceed modularly and on the basis of conditions:
So much for preparation. Now, however, the question is:
How does the receipt data get to PayJoe?
For this purpose, PayJoe offers to deliver the data via an API or a CSV file. With the latter, the column naming must follow a special default, which PayJoe checks for the customer after an initial FTP upload of the data. This was initially my chosen path. However, the output of a CSV from EDD was not inherently suitable and required manual adjustments. So I decided to go the first way and developed an API as a plugin for Easy Digital Downloads.
WordPress Plugin for PayJoe and Easy Digital Downloads
With this plugin, it is now possible to send the EDD receipt data toPayJoe with the click of a button, where it is then available there for assignment. In the backend of WordPress I placed the plugin under Downloads > Reports > Exports. It just has a date selector and a send button:
One selects the desired start and end date of the sales and transfers this information to PayJoe. In the reason for payment you can then - provided that the assignment between payment document and EDD document fits - access the shop information and place it in the appropriate fields.
The new booking channel
Via this new option, the bookings now enter my Collmex booking system cleanly with the name of the buyer and the EDD invoice number. There I just add the PDF receipt. In a second booking record the PayPal and Stripe transaction fees are listed and can be booked as incidental costs of the money transfer.
Interested in the plugin?
So far, I'm testing this plugin for myself and don't think there's very much need for a solution like mine. I come to the assumption because the interface between PayJoe and WooCommerce shows under 10 installations in the WordPress directory, and EDD is used even less. However, if anyone is interested, I'm happy to give the plugin away for a small donation, a simple email via the contact form will suffice. Please note that I can't provide support for it though, and I don't know how long I'll be maintaining it.