Reply
Member
Posts: 2
Registered: ‎03-19-2019
Accepted Solution

Batching many transactions

Just curious if there is any official way with the REST api to do batching? I have been tasked with handling the capturing, voiding, and refunding of hundreds of transactions a day. Is there any way to do this currently without just sending many requests repeatedly?


Accepted Solutions
Solution
Accepted by topic author trevster344
‎03-21-2019 02:45 PM
All Star
Posts: 733
Registered: ‎11-05-2018

Re: Batching many transactions

@trevster344

 

you can automate the repeated sending. What you do is build a database to store your transactions. Then you build a custom function to refund lists of transactions at a time. There is no real limit to how many you can process in one event. I have on my clients backend a functionality to do this. They can sort transactions and create a list to capture, etc. I use server side scripts to pull the transactions and to do the API calls, and I use jQuery to sort and select the transactions. I currently have a simple “select all” checkbox that they can use to update the entire list after they have sorted down to what they want.

 

its a good bit of work setting up in the beginning. Depending on your needs could be 40 to 80 hours of programming, or more. Given the volume of transactions you have to process, I think you’d hit the break even point fast and then be smooth sailing. I would say if my client had 500 transactions to process it might take 2-3 minutes max.  If all 500 had the same action (say 500 to capture) it could be done in less than 10 seconds.

 

The basic idea is you create a version of what you want to do for one transaction and then apply a loop that will do that same thing for any sized list of transactions.

View solution in original post


All Replies
Posts: 2,765
Topics: 57
Kudos: 248
Blog Posts: 67
Registered: ‎12-05-2011

Re: Batching many transactions

Hello @trevster344 

 

We do not currently support batch operations, but we have many customers who iterate through thousands of requests without issues.

 

At the same time, I can see how this might be useful.

 

You are welcome to post this as a new feature using our Ideas forum. This will allow others to vote on and make suggestions to improve the request.

Richard

Solution
Accepted by topic author trevster344
‎03-21-2019 02:45 PM
All Star
Posts: 733
Registered: ‎11-05-2018

Re: Batching many transactions

@trevster344

 

you can automate the repeated sending. What you do is build a database to store your transactions. Then you build a custom function to refund lists of transactions at a time. There is no real limit to how many you can process in one event. I have on my clients backend a functionality to do this. They can sort transactions and create a list to capture, etc. I use server side scripts to pull the transactions and to do the API calls, and I use jQuery to sort and select the transactions. I currently have a simple “select all” checkbox that they can use to update the entire list after they have sorted down to what they want.

 

its a good bit of work setting up in the beginning. Depending on your needs could be 40 to 80 hours of programming, or more. Given the volume of transactions you have to process, I think you’d hit the break even point fast and then be smooth sailing. I would say if my client had 500 transactions to process it might take 2-3 minutes max.  If all 500 had the same action (say 500 to capture) it could be done in less than 10 seconds.

 

The basic idea is you create a version of what you want to do for one transaction and then apply a loop that will do that same thing for any sized list of transactions.

Member
Posts: 2
Registered: ‎03-19-2019

Re: Batching many transactions

Thank you everyone who chimed in. I already have an endpoint that simply sends hundreds of requests one after the other. I wanted to make sure I was not abusing the system if there was a better alternative. So as long as no one minds me sending 200+ requests for roughly 2+ minutes then I have no issues with this solution.