Comparing addresses

I understand NW has improved its algorithm for comparing addresses, so that e.g. a missing “county” on one record would not preclude 2 records from matching. Does that mean that two records in the database that previously would not have been considered a match might now be considered a match? Could we see “duplicate address” errors when making unrelated edits?

Also is an LB we can use to find matches before we try to insert a new address? We have 3rd-party-facing APIs and want to avoid them having to avoid dealing errors related to duplicate addresses when adding customers with addresses.

Yes

Not to my understanding.

No, this is actually a change in logic block actions themselves which will change how conditionals compare addresses.

Patch note PN-25.1.07-[Nextbot]-5250 gets into this:

For a working example, consider this address:
Street: 123 Main St
City: Parker
State: CO
County: Douglas County
Zip: 80134

Also consider 2 format definitions, the first of which constructs a 1 line address (Nextworld calls this the AddressFull) as Street-City-State-County-Zip and another format definition which excludes county and constructs the AddressFull as just Street-City-State-Zip

When the above address is passed into Nextworld, Nextworld will save the components plus the AddressFull version of it to the DB using whatever the format is at the time. Up until now, that saved AddressFull version is what would have been used for future comparisons to see if another address is the same as it.

Assuming the above address had already been created using the old format definition, and you wanted to see if it already existed in the database after switching to the new format definition, the answer from Nextworld in the past would have been No because the Addressfull in the database would have been 123 Main St Parker CO Douglas County 80134 and the AddressFull passed in would have been constructed as 123 Main St Parker CO 80134. In a comparison use case prior to now, Nextworld would say these are not the same address, even though at a component level, they are identical.

With this enhancement, that changes, because the version in the database can be dynamically re-interpreted by a logic block applying the current format which will have it evaluate to 123 Main St Parker CO 80134 so Nextworld will tell you the address already exists, or in a comparison use case, the address passed in is the same address as one that already exists.

3 Likes

@ian.p we do do deliver a logic block called WriteAddress that fetches to the Addresses table using AddressFull — does this enhancement make this usable?

Check me please @joe.graff. I don’t think anything changes about that LB because I don’t think this change affects fetches, it only affects conditionals. Is that a correct? Implicit to that is you already have an address you’re wanting to compare against - maybe a Bill To address that was saved on a sales order previously that you want to compare some other address against. I don’t think this is good for de-duplicating data like this logic attempts to do, meaning there would be no change in what happens at 004.

2 Likes

@ian.p correct, this enhancement was only for the conditional action when comparing two AddressFull values. Fetches should not have changed

2 Likes