Tokenization is vital in this age of cybermiscreants. Ya don't want customer payment card data in your dbms.
The stripe.com API offers tokenization, and it offers the ability to send and validate data like zip/postcode, cvv and street address to cut fraud. They have an api for chargeback disputes, too. (The business I serve doesn't use it, instead we use the forms on their web site. We have dozens of disputes per decade, not worth programming.)
Squareup.com (Square) does a good job with card-present transactions.
And these service providers offer predictable processing fees.
I wonder what's special about the AMEX APIs? Maybe somebody from AMEX can explain? Some of us are always looking for better ways to serve customers and handle payments efficiently.