# Client Integration We return all the data after OTP and you use it in your UI ```js if(braintree.axo.lookupCustomerByEmail(email)) { braintree.axo.triggerAuthenticationFlow({ ...axoConfiguration }) .then({ axoAddresses, axoFundingInstruments} => updateUI(axoAddresses)) .catch(err => showErr(err)) } ``` # Server Integration We return a buyer access token, you send it to your server, execute an api to receive addresses, send them back to update your UI ## Client ```js if(braintree.connect.lookupCustomerByEmail(email)) { braintree.connect.triggerAuthenticationFlow({ ...axoConfiguration }) .then({ buyerAccessToken } => fetchAddresses(axoAddresses)) .then(axoAddresses => updateUI(axoAddresses))) .catch(err => showErr(err)) } function fetchAddresses(buyerAccessToken) { return fetch(`https://www.bigcommerce/axoAddresses/${buyerAccessToken}`) .then(res => res.json()) } ``` ## Server ```js import express from 'express'; const app = express(); import fetch from 'node-fetch'; app.get('/axoAddress/:token', async (req, res) => { return fetch(`https://api.paypal.com/v2/vault/addresses/${token}`) .then( res => res.json()) } ```