Skip to main content
Question

Zapier Tables: Batch Update Records in another table when a linked table is updated


I have 2 tables with the key field being TransactionID.

One table shows all line items in our transactions.  I’ll call this table “Transaction List with Unassigned Owner”.  Several line items may have the same transaction ID if they all happened at the same time… these are purchases at a register.

The second table just shows the unique values. We will call this table “Unique TransactionID”. There may be dozens of lines with the same transactionID in the first table, but only one line in the 2nd table.

In both tables, I have a field akin to “Transaction Owner”. When someone assigns an owner to a unique transaction ID in the 1st table, I would like to update “Transaction Owner” for all rows that have the same transaction ID as the one just updated.

 

I can’t seem to figure this out without it accomplishing a 1:1 record update. RecordID is required, but I want multiple records to be updated.
 

Did this topic help you find an answer to your question?

4 replies

SamB
Community Manager
Forum|alt.badge.img+11
  • Community Manager
  • 7242 replies
  • February 4, 2025

Hi there, ​@syndic8er 👋

Great question! You could use a Find Records (Output as Line Items) Tables action in a Zap to locate all the records in a table with a matching transaction ID. Then use an Update Record Tables action inside a loop to have it update each record that was found by the Find Records action.

For the loop you’d want to be sure to use the Create a loop from line items action since the Find Records action would output the records as line items. If you’ve not worked with loops in Zaps before I’d recommend checking out our Loop your Zap actions before getting started. 

Can you give that approach a try and let us know how you get on? Happy to assist further if you get stuck at any point—just let me know! 


  • Author
  • Beginner
  • 6 replies
  • February 6, 2025

@SamB I am still having a hard time with this.

So, the goal here is to update every record that matches a transaction ID in one table when another table is updated that has the same TransactionID.

 

The first step and the second step are working fine. The third and fourth, not so much.

Basically, it is supposed to do this:

1) Table #1, when Transaction Owner field is updated, find all values in table #2 that have an empty Transaction Owner field AND match the transactionID.

  1. ​​​​​​​​​​​​​​Update the Transaction Owner field in table #2 for all records that have the same tranaction ID as in Table #1.

I am not clear what goes into the “Values to Loop”.  Is that a unique name, a unique ID, a number of loops… what?

One Step #4, I choose the Record ID from Step #2, and the Transaction Owner from Step #1.

When I try to step through why it isn’t updating, I see the error on Step #3 is creating the problem.

 

 


SamB
Community Manager
Forum|alt.badge.img+11
  • Community Manager
  • 7242 replies
  • February 7, 2025

Happy to lend a hand with this, ​@syndic8er! 🙂

I am not clear what goes into the “Values to Loop”.  Is that a unique name, a unique ID, a number of loops… what?

You’d want to use the Record ID field that is output by the Find Records search action. It contains the IDs of all the records that were found (in line item format). Selecting it will ensure there’s a loop iteration created for each record:

50bfd1d1556e61bb4ac4dd536dde67c7.png
Then the Update Record would use the Record ID (mapping it from the Looping action) to ensure that the correct record is updated:

3e37a67c6852972b51064a1a0981da9f.png

Can you give that a try and let me know how you get on?


  • Author
  • Beginner
  • 6 replies
  • February 7, 2025

This is still not working for me. I made some progress because the Zaps have run successfully, whereas before, I was getting 404 errors. But, the Table 2 field is not being updated.

After stepping through the Zap runs, I am pretty confident that I am not understanding the “old” vs. “new” data after the field is updated.

1) The trigger action seems to be working fine. When the TransactionOwner field in Table 1 is updated, proceed to step 2.
2) In find records, I am filtering for TransactionID’s in Table2 that match the TransactionID in the updated step above. This seems to work. If I try to add a filter in this step, such as “new data” is different from “old data”, then it is not found.
3) In Looping, I am just looping over Record ID from the records stored in Step 2.
4) In step 4, I am attempting to update the field in Table 2 that matches the updated field in Table 1 from the 1st step. The Zap runs successfully, but the table doesn’t update. The RecordID is inherited from the looping step. In the TransactionOwner field, I am inheriting from TransactionOwner (new) in Step 1.  However, both the old and new give me no data.  ← Pretty sure this is where the problem is.