# Frequently Asked Questions

Follows the list of the most common questions:

|FAQ #|Question|Answer|
|--|--|--|
|1|Do I need a different `Client ID` and `Client Secret` for each merchant?|No, each integrating partner only needs one `Client ID` and `Client Secret` to be used by the application. **The merchant should never have access to this information.** For authentication, merchants will use their own Teya IDs.|
|2|What is Teya ID?|The Teya ID is the user's account used for authentication within the Teya Ecosystem. It should not be confused with the Client Id and Client Secret generated in the [developer portal](/epos-sdk/setup-and-authentication#1-get-your-credentials). A user can create his Teya ID [here](https://id.teya.com/authn/registration/email-password).|
|3|When we create authorization URL for merchant to authorize, how does Teya system differentiate which merchant is it - how does merchant authenticate?|The merchant authenticates using his Teya ID when they sign up to their first Teya product.|
|4|How can we ensure that merchants will not see other merchants' stores?|Merchants can only view the stores that are associated with their Teya ID.|
|5|When we perform the refresh of a token is the `Refresh Token` duration also refreshed or it is always 30 days since authentication?|The `Refresh Token` is also refreshed, more info [here](/poslink/authenticate#refresh-the-access-token).|
|6|What happens when merchant authenticates from multiple stores at the same time, are all tokens valid or do they get same tokens?|- The accesses are at a company level, so if these stores are grouped together under one company it would be one Teya ID token, else multiple.<br>-In the same browser, the first authentication will create an SSO session, and the app will get a token. When the other apps authenticate, they will use the same sso session, but will each still receive a different token.<br>-At different browser sessions, the tokens work independently, the activity in one shouldn’t affect the other for token/sessions.|
|7|When a merchant calls the oauth-token endpoint will the previous token expire?|A new token will be issued. The others remain valid, since our token invalidation function is not yet live.|
|8|Is it possible to perform authentication on behalf of the merchant?|The merchant can add whoever they want through the Business Portal, and than this person would have the power to authorise on their behalf.|
|9|What is `expires_in` value in oauth-token response?|The `expires_in` is the duration of the Access Token and the value is displayed in `seconds`|
|10|The `Access Token` lasts for 15 minutes. If I call an endpoint with that token after 10 minutes (which is an activity), does the token now last for another 15 minutes or just the remaining 5 minutes?|Only last the remaining 5 minutes.|
|11|When we redirect merchant to authorization, we do SHA256 hash we have to get bytes from code_verifier. In order to do this we can do Encoding.UTF8.GetBytes(codeVerifier) or Encoding.ASCII.GetBytes(codeVerifier). Which one we should use, since in the following request to fetch token we are sending plain code_verifier that your server will then convert and compare with previous code_challenge?|Either can be used, but please make sure the code verifier doesn’t have any non-ASCII characters.|
|12|Is there any way for us to test authentication without registering a merchant first? I see that we can use mock service for POS API calls, but for authentication it seems that we must have merchant registered? Can we maybe register ourselves as merchant in order to test?|In order to login with a given user (_email and password)_, this user has to be registered first. The partner can use the self-registration form to register.|
|13|I have selected to pay on the ePOS, but the card machine didn't prompt for payment|The most common reasons are:<br>1.Card Machine is not configured correctly (Enable `Pay at Counter` mode in the feature menu).<br>2. Check Network Connection (card machine needs to be connected to internet to communicate with POSLink).<br>3. ePOS authentication has timed out or had an issue, merchant needs to log out and back into his Teya ID account.|
|14|Why I can't see a transaction in the ePOS?|If the original transaction was started on card machine, the ePOS won’t know about it.|
|15|Payment was successful/declined in the Card Machine, but in the ePOS still says it's In Progress?|1. Check network connection of ePOS and Card Machine<br>- Card Machine could lose connection after successful communication with acquiring gateway but before it sends update to POSLink.<br>- If card machine states success/decline, this is the true indicator as to whether customer has been charged or not.<br>2. If network connection is slow, it can take longer for status to reach ePOS via POSLink.|
