Migrating the American express payment network, twice
67 points
8 hours ago
| 5 comments
| americanexpress.io
| HN
alberth
5 hours ago
[-]
Re: transition to micro services (from monolith).

I’m surprised a network so sensitive to latency (as are payment networks), was able to achieve their latency SLAs with micro services.

Maybe Amex being a closed-loop network helps with latency?

reply
skrtskrt
2 hours ago
[-]
Every major high-throughput database now runs as microservices, not sure why people still act like things just grind to a halt when the network is involved.
reply
usrnm
26 minutes ago
[-]
High-throughput is not the same thing as low latency. In fact, they're often at odds with each other
reply
bob1029
40 minutes ago
[-]
> Maybe Amex being a closed-loop network helps with latency?

Yes, this is a huge deal. VisaNet and friends have to wait on the actual bank cores in order to perform online authorization. Amex can guarantee end to end latency.

reply
mattclarkdotnet
4 hours ago
[-]
Since when were payment networks latency sensitive? It’s usually 2 or more seconds to even get a payment up on the card terminal from the merchant POST system, then 2-5 seconds more from card presentation to getting approval back.
reply
compounding_it
25 minutes ago
[-]
>Since when were payment networks latency sensitive?

Apple Pay is extremely fast from my experience (at least the web version). There is a high percentage of market loss if payments take long or fail. Im sure there must be a graph for where it plateaus with diminishing returns when it comes to speed but faster payments definitely help with sales.

reply
alberth
4 hours ago
[-]
I’m fairly certain that’s a POS issue, not the payment network.

I’ve heard anecdotally that it’s < 140 ms for payment networks.

Anyone, please correct me if you know better.

reply
solumos
4 hours ago
[-]
It's definitely not 140ms round-trip. Issuer processors typically have a ~2.5s window for approval.

In practice, the POS sends a message to the acquirer processor -> hits the network -> is sent to the issuer processor, and back again.

https://medium.com/wharton-fintech/the-anatomy-of-the-swipe-...

reply
felipellrocha
3 hours ago
[-]
140ms is still a ton of time to do a simple transaction
reply
ivlozada
3 hours ago
[-]
It's not simple though. In that 140ms the network is checking fraud rules, validating the card, checking available credit, applying rewards logic, and routing across multiple parties. The actual subtract-one-number-from-another takes microseconds. The rest is trust verification across organizational boundaries — which is the hard part of any payment system.
reply
inkyoto
1 hour ago
[-]
> Since when were payment networks latency sensitive?

Since the advent of e-commerce, POS-networking and fraud detection systems in 1990's-2000's.

User-facing and authorisation path are highly latency sensitive. It includes tap-to-pay, online checkout, issuer authorisation, fraud decisioning, and instant payment confirmation – even moreso for EFT payments.

> […] 2-5 seconds more from card presentation to getting approval back.

This is the mid-1990's level QoS when smaller merchants connected the acquirer bank via a modem connection, and larger ones via ISDN.

Today, payments are nearly instant in most cases, with longer than one-second card payment flows falling into the exceptions territory or inadequate condition of the payment infrastructure.

reply
3x35r22m4u
4 hours ago
[-]
Norton Antivirus for Android doesn't allow me to access the site. Hmm.
reply
solumos
4 hours ago
[-]
My ISP (Spectrum) is also blocking it as suspicious...it's kind of funny that they haven't migrated the blog to SSL
reply
nickphx
48 minutes ago
[-]
why would you trust those charlatans
reply
triyambakam
1 hour ago
[-]
> Norton Antivirus for Android

I had no idea that was a thing

reply
e-dant
5 hours ago
[-]
A fascinating en dash, used as an em dash, followed by two em dashes.

Hmmm.

reply
mitchellh
5 hours ago
[-]
Cmd+F "Kubernetes".

Oh Jesus Christ.

reply
themafia
6 hours ago
[-]
This is cool, but a part of me has to be flip, and humanity is kind of hilarious to me. All of this amazing infrastructure and hard work to essentially just very carefully and accurately subtract one number from another in a way that makes auditing easy.
reply
mikepurvis
4 hours ago
[-]
"Rebuilding the full payments network from scratch was a significant, multi-year effort. It involves complex processing logic, extensive edge cases, and exception handling."

Quite apart from fraud/abuse prevention, I expect part of this is stuff like juggling all the different rewards and points systems plus handling time-based offers ("spend $x at y retailer by z date, get $10 cash back" type thing) plus ensuring that all those things are correctly unwound in the case of refunds being issued.

As someone who recently got an Amex card (primarily for Air Canada lounge access), I've been impressed at how nice their app is compared to the five previous Canadian bank apps I've been exposed to in recent years (Scotia, BMO, RBC, Tangerine, CIBC). Some nice things I noticed in the Amex CA app that I haven't previously experienced:

- instant alerts on use, even when it was a non mobile pay transaction

- up to the minute transaction history in-app, including Aeroplan point accrual; all my other credit cards have a delay before new items appear.

- an in-app button to debit my bank for the balance without me having to go to my bank's app to send a bill pay.

reply
quesera
4 hours ago
[-]
Apple Card has the same features, currently issued and operated by Goldman Sachs but to be transferred to Chase within the next two years. Hopefully the features and functionality will survive. I don't think Chase has them today, so I wonder.

It's atrocious how bad most bank and card apps are. I'm planning a switch to a new bank, and mobile app quality is a huge criterion. Bank of America and Wells Fargo get zero points from me.

reply