> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/classic-tokenization/es/referencia-de-la-api/api-de-la-pasarela-del-emisor/entrada-del-emisor.md).

# Entrada (del emisor)

## Get virtual card  list information

> This method can be used to retrieve the list of virtual card(s) that belongs to a funding card.

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[{"name":"Get Card Info"}],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/getCardInfo":{"post":{"summary":"Get virtual card  list information","description":"This method can be used to retrieve the list of virtual card(s) that belongs to a funding card.","operationId":"getCardInfo","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"200":{"description":"getCardInfo response payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/getCardInfoRes"}}}},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorRes"}}}},"500":{"description":"Internal Server Error"}},"tags":["Get Card Info"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/getCardInfoReq"}}},"description":"getCardInfo request payload","required":true}}}},"components":{"parameters":{},"schemas":{"getCardInfoRes":{"type":"object","required":["issuerCardRefId"],"properties":{"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"virtualCardList":{"type":"array","items":{"type":"object","required":["virtualCardId","issuerCardRefId","walletProviderId","deviceInformation","status"],"properties":{"virtualCardId":{"$ref":"#/components/schemas/virtualCardId"},"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"walletProviderId":{"$ref":"#/components/schemas/walletProviderId"},"walletCardRefId":{"$ref":"#/components/schemas/walletCardRefId"},"walletVirtualCardId":{"$ref":"#/components/schemas/walletVirtualCardId"},"deviceInformation":{"$ref":"#/components/schemas/deviceInformation"},"deviceBindingList":{"type":"array","description":"List of all device (reference) binded to the token (VTS only)","items":{"type":"object","properties":{"deviceBindingReference":{"type":"string","maxLength":64,"description":"reference of the device binding process/link to the Virtual Card.The deviceBindingReference is used only with action **UNBIND_DEVICE** and **APPROVE_DEVICE_BINDING** (VTS only. Note that this field corresponds to the deviceIndex)"}}}},"cardholderVerificationList":{"type":"array","description":"Cardholder verification list\r\n\r\nOnly applicable to VISA/VTS\r\n\r\nThe list is provided in case there is at least one pending cardholder verification session linked to the token","items":{"type":"object","properties":{"status":{"enum":["PENDING"],"description":"Status of the Cardholder verification session"},"timestamp":{"type":"string","description":"Timestamp logged when issuer has replied that wants to perform the verification\r\n\r\nIn format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**","maxLength":32},"lifeCycleTraceID":{"type":"integer","description":"A message identifier associated with the  Cardholder verification session"}}}},"provisioningTime":{"type":"string","description":"If available, the provisioning time the Virtual card<br/>\nIn format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**\n","maxLength":32},"lastReplenishTime":{"type":"string","description":"If available, the provisioning time the Virtual card<br/>\nIn format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**\n","maxLength":32},"isPrimary":{"type":"boolean","description":"It is a boolean information that inform if the Virtual card is a primary virtual card or if it is an Auxiliary virtual card"},"status":{"type":"string","description":"virtual card current status","maxLength":32,"enum":["DEPLOYMENT_ONGOING","SUSPENDING","DELETING","RESUMING","SUSPENDED","RESUMED","DELETED","INACTIVE"]},"tokenAssuranceLevel":{"$ref":"#/components/schemas/tokenAssuranceLevel"}}}}}},"issuerCardRefId":{"type":"string","maxLength":48,"description":"The unique identifier of the funding card.<br/> This value is generated and manage by the issuer.<br/> This value can be updated in case of funding PAN replacement by the issuer.<br/>\n"},"virtualCardId":{"description":"Identifier of the virtual card to update","type":"string","maxLength":64,"minLength":1},"walletProviderId":{"maxLength":64,"minLength":1,"type":"string","description":"Wallet Provider identifier, defined by Thales<br/>\n\n<b>When TSH acts as OEM Pay broker for Domestic scheme:</b>\n\n|walletProviderId  |Description|\n|-------|-------|\n|APPLE_PAY |Apple Pay Wallet|\n|SPAYHCE |Samsung Pay Wallet|\n|ANDROID_PAY |Google Pay Wallet|\n\n<b>When TSH acts as ITSP:</b>\n|walletProviderId  |Description|\n|-------|-------|\n|APPLE_PAY |Apple Pay Wallet|\n|SAMSUNG_PAY |Samsung Pay Wallet|\n|GOOGLE_PAY |Google Pay Wallet|\n|GARMIN_PAY  |Garmin Pay Wallet|\n|FITBIT_PAY |Firbit Pay Wallet|\n|FACEBOOK  |Facebook eCom Wallet|\n|VISA_CHECKOUT |Visa Checkout eCom Wallet|\n|NETFLIX |Netflix eCom Wallet|\n\nFor other wallet (such as HCE Wallet), id is provided during on-boarding\nphase\n"},"walletCardRefId":{"type":"string","description":"Wallet **funding** card unique identifier\nConditional: If provided by Wallet provider.\n","minLength":1,"maxLength":128},"walletVirtualCardId":{"type":"string","description":"Wallet **virtual** card unique identifier\nConditional: If provided by Wallet provider.\n","minLength":1,"maxLength":128},"deviceInformation":{"type":"object","properties":{"tokenStorageId":{"$ref":"#/components/schemas/tokenStorageId"},"originalTokenStorageId":{"$ref":"#/components/schemas/tokenStorageId"},"tokenStorageType":{"$ref":"#/components/schemas/tokenStorageType"},"originalTokenStorageType":{"$ref":"#/components/schemas/tokenStorageType"},"manufacturer":{"type":"string","description":"Device manufacturer name","maxLength":16,"minLength":1},"brand":{"type":"string","description":"Device brand","maxLength":16,"minLength":1},"model":{"type":"string","description":"Device model","maxLength":16,"minLength":1},"tac":{"type":"string","description":"Type Allocation Code of the device","maxLength":8,"minLength":1},"osVersion":{"type":"string","description":"Device OS version","maxLength":16,"minLength":1},"firmwareVersion":{"type":"string","description":"Device firmware version","maxLength":16,"minLength":1},"phoneNumber":{"type":"string","description":"DEvice Phone number","maxLength":20,"minLength":1},"fourLastDigitPhoneNumber":{"type":"string","description":"The 4 last digit of the device phone number","maxLength":4,"minLength":1},"deviceName":{"type":"string","description":"Device name that the device owner may use to identify it","maxLength":128,"minLength":1},"deviceId":{"type":"string","description":"Stable hardware identifier.\nUsed only for risk signal as there are some rare cases when deviceId can be reused across multiple devices or can change\n","maxLength":64,"minLength":1},"androidIdLastTwo":{"type":"string","description":"Last 2 hex characters of the Android Id.","maxLength":2,"minLength":1},"deviceParentId":{"type":"string","description":"Parent device tokenStorageId. It is used in case of wearable device","maxLength":64,"minLength":1},"language":{"type":"string","description":"Selected language on the device in ISO 639-3","maxLength":3,"minLength":1},"deviceStateFlags":{"type":"string","description":"Hexa string containing the device state flags defined in [VCON] section 7.2. There is one bit per flag.\nConditional - Mandatory in case of HCE\n","maxLength":2,"minLength":1},"serialNumber":{"type":"string","description":"Serial number of the mobile device","maxLength":24,"minLength":1},"timeZone":{"type":"string","description":"Device time zone\nTimezone abbreviation.\nExample: PST, GMT, GMT+05:00\n","maxLength":10,"minLength":1},"timeZoneSetting":{"type":"string","description":"who set the timezone","maxLength":32,"enum":["NETWORK_SET","CONSUMER_SET"]},"simSerialNumber":{"type":"string","description":"SIM serial number","maxLength":24,"minLength":1},"IMEI":{"type":"string","description":"Phone IMEI","maxLength":24,"minLength":1},"phoneLostTime":{"type":"string","description":"If available, the period, in day, the phone has been lost","maxLength":4,"minLength":1},"networkOperator":{"type":"string","description":"The network operator name","maxLength":16,"minLength":1},"networkType":{"type":"string","description":"Type of network use for enrollment","maxLength":32,"enum":["CELLULAR","WIFI"]}}},"tokenStorageId":{"type":"string","description":"Unique token storage identifier","minLength":1,"maxLength":128},"tokenStorageType":{"type":"string","description":"Identifies the type of token storage location, possible values are:\n- HCE\n- SPAY_PHONE\n- SPAY_TABLET\n- SPAY_WATCH\n- SPAY_TV\n- IPHONE\n- IWATCH\n- IPAD\n- MAC_BOOK\n- ANDROID_PHONE\n- ANDROID_TABLET\n- ANDROID_WATCH\n- MOBILE_PHONE\n- TABLET\n- WATCH\n- MOBILE_PHONE_OR_TABLET\n- BRACELET\n- PC\n- HOUSEHOLD\n- WEARABLE\n- AUTOMOBILE\n- REALITY\n- UNKNOWN","maxLength":32},"tokenAssuranceLevel":{"type":"string","title":"tokenAssuranceLevel","maxLength":2,"description":"The token assurance level indicates the level of assurance of the token.\nThis is given by the ID&V method that has been used to authenticate the consumer on the specific token for example when the token is created (during the digitization flow) or, in case of a COF token, when a binding flow is executed.\n\nFollowing values are supported:\n- 00 (ID&V not performed)\n- 10 (Card Issuer Account Verification)\n- 11 (Card Issuer Interactive Verification - 1 Factor)\n- 12 (Card Issuer Interactive Verification - 2 Factor)\n- 13 (Card Issuer Oriented Non-Interactive Cardholder Authentication)\n- 14 (Card Issuer Asserted Authentication)\n\nNOTE: applies only to VISA"},"errorRes":{"type":"object","description":"Error Information Response","required":["responseCode"],"properties":{"responseCode":{"type":"number","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|115|Unknown product|\n|116|Unknown card|\n|119|Unknown Token|\n|163|Product not supported for mobile payment|\n|164|FPAN Provisioning Count Exceeded|\n|166|Invalid FPAN|\n|167|Card already enrolled|\n|221|The device was not reachable after retries|\n|321|Operation on token already on-going|\n|322|Time to live of the operation expired|\n|431|Invalid perso data|\n|432|Current token state does not allow this operation|\n|911|Operation failed|\n|921|Unexpected server error|\n"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}},"getCardInfoReq":{"type":"object","required":["issuerCardRefId"],"properties":{"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"}}}}}}
```

## Get Token Info

> This method can be used to retrieve information associated to a specific token, including the token value itself, if available.\
> \<br/>

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/getTokenInfo":{"post":{"summary":"Get Token Info","description":"This method can be used to retrieve information associated to a specific token, including the token value itself, if available.\n<br/>","operationId":"getTokenInfo","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"200":{"description":"getTokenInfo response payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/getTokenInfoRes"}}}},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"type":"object","required":["responseCode"],"properties":{"responseCode":{"type":"string","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|116|Unknown card|\n|119|Unknown Token|could u pls share this mapping\n|911|Unexpected server error|\n|921|Operation failed|"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}}}}},"500":{"description":"Internal Server Error"}},"tags":["Get Token Info"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/getTokenInfoReq"}}},"description":"getCardInfo request payload","required":true}}}},"components":{"parameters":{},"schemas":{"getTokenInfoRes":{"type":"object","properties":{"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"virtualCardId":{"$ref":"#/components/schemas/virtualCardId"},"walletCardRefId":{"$ref":"#/components/schemas/walletCardRefId"},"walletProviderId":{"$ref":"#/components/schemas/walletProviderId"},"walletVirtualCardId":{"$ref":"#/components/schemas/walletVirtualCardId"},"tokenRequestor":{"$ref":"#/components/schemas/tokenRequestor"},"deviceInformation":{"$ref":"#/components/schemas/deviceInformationGTI"},"deviceBindingList":{"type":"array","description":"Reference of the device binding process/link to the Virtual Card.\nThe deviceBindingReference is used only with action **UNBIND_DEVICE** and **APPROVE_DEVICE_BINDING** (VTS only. Note that this field corresponds to the deviceIndex)","items":{"type":"object","properties":{"deviceBindingReference":{"type":"string","maxLength":64}}}},"tokenSuffix":{"type":"string","minLength":4,"maxLength":4,"description":"Last 4 digits of the token"},"tokenDetails":{"$ref":"#/components/schemas/tokenDetails"},"tokenType":{"$ref":"#/components/schemas/tokenType"},"productId":{"type":"string","minLength":1,"maxLength":32,"description":"Unique identifier of the card product associated to the token. Provided for domestic scheme."},"publicKeyIdentifier":{"type":"string","minLength":1,"maxLength":32,"description":"Identifier of the publick key used to secure the tokenDetails"},"provisioningTime":{"type":"string","description":"If available, the provisioning time the Virtual card. In format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**","maxLength":32},"lastReplenishTime":{"type":"string","description":"If available, the last replenishment time of the Virtual card credentials. In format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**","maxLength":32},"lastStatusChangeTime":{"type":"string","description":"If available, the time of the last change occured on the token state. In format **ISO 8601 YYYY-MM-DDThh:mm:ssTZD**","maxLength":32},"status":{"type":"string","enum":["DEPLOYMENT_ONGOING","SUSPENDING","DELETING","RESUMING","SUSPENDED","RESUMED","DELETED","INACTIVE"],"description":"Current status of the token"},"tokenAssuranceLevel":{"$ref":"#/components/schemas/tokenAssuranceLevel"},"isPrimary":{"type":"boolean","default":true,"description":"Boolean Flag indicating whether the token is primary or auxiliary."}},"required":["issuerCardRefId","virtualCardId","walletProviderId","tokenRequestor","tokenSuffix","status"]},"issuerCardRefId":{"type":"string","maxLength":48,"description":"The unique identifier of the funding card.<br/> This value is generated and manage by the issuer.<br/> This value can be updated in case of funding PAN replacement by the issuer.<br/>\n"},"virtualCardId":{"description":"Identifier of the virtual card to update","type":"string","maxLength":64,"minLength":1},"walletCardRefId":{"type":"string","description":"Wallet **funding** card unique identifier\nConditional: If provided by Wallet provider.\n","minLength":1,"maxLength":128},"walletProviderId":{"maxLength":64,"minLength":1,"type":"string","description":"Wallet Provider identifier, defined by Thales<br/>\n\n<b>When TSH acts as OEM Pay broker for Domestic scheme:</b>\n\n|walletProviderId  |Description|\n|-------|-------|\n|APPLE_PAY |Apple Pay Wallet|\n|SPAYHCE |Samsung Pay Wallet|\n|ANDROID_PAY |Google Pay Wallet|\n\n<b>When TSH acts as ITSP:</b>\n|walletProviderId  |Description|\n|-------|-------|\n|APPLE_PAY |Apple Pay Wallet|\n|SAMSUNG_PAY |Samsung Pay Wallet|\n|GOOGLE_PAY |Google Pay Wallet|\n|GARMIN_PAY  |Garmin Pay Wallet|\n|FITBIT_PAY |Firbit Pay Wallet|\n|FACEBOOK  |Facebook eCom Wallet|\n|VISA_CHECKOUT |Visa Checkout eCom Wallet|\n|NETFLIX |Netflix eCom Wallet|\n\nFor other wallet (such as HCE Wallet), id is provided during on-boarding\nphase\n"},"walletVirtualCardId":{"type":"string","description":"Wallet **virtual** card unique identifier\nConditional: If provided by Wallet provider.\n","minLength":1,"maxLength":128},"tokenRequestor":{"title":"tokenRequestor","type":"object","properties":{"id":{"type":"string","maxLength":11,"description":"Token Requestor Identifier provided and allocated by Scheme TSP.\nFor the same requestor, the identifier changes across the different Schemes."},"originalTokenRequestorId":{"type":"string","maxLength":11,"description":"VISA Only\nApplies in case of token for token provisioning"},"walletId":{"type":"string","maxLength":100,"description":"This field applies ONLY to MasterCard and American Express\\\n\nWallet Application Identifier provided and allocated by Scheme TSP"},"name":{"type":"string","maxLength":256,"description":"Readable name of the token requestor"},"tspId":{"type":"string","maxLength":11,"description":"VISA Only\nID that identifies in an unique way the couple Token Requestor - Token Service Provider. Generated by the scheme.\nNamed by VTS tokenRequestorTspID"}}},"deviceInformationGTI":{"type":"object","properties":{"tokenStorageId":{"$ref":"#/components/schemas/tokenStorageId"},"tokenStorageType":{"$ref":"#/components/schemas/tokenStorageType"},"manufacturer":{"type":"string","description":"Device manufacturer name","maxLength":16,"minLength":1},"brand":{"type":"string","description":"Device brand","maxLength":16,"minLength":1},"model":{"type":"string","description":"Device model","maxLength":16,"minLength":1},"osVersion":{"type":"string","description":"Device OS version","maxLength":16,"minLength":1},"firmwareVersion":{"type":"string","description":"Device firmware version","maxLength":16,"minLength":1},"phoneNumber":{"type":"string","description":"DEvice Phone number","maxLength":20,"minLength":1},"fourLastDigitPhoneNumber":{"type":"string","description":"The 4 last digit of the device phone number","maxLength":4,"minLength":1},"deviceName":{"type":"string","description":"Device name that the device owner may use to identify it","maxLength":128,"minLength":1},"deviceId":{"type":"string","description":"Stable hardware identifier.\nUsed only for risk signal as there are some rare cases when deviceId can be reused across multiple devices or can change\n","maxLength":64,"minLength":1},"deviceParentId":{"type":"string","description":"Parent device tokenStorageId. It is used in case of wearable device","maxLength":64,"minLength":1},"language":{"type":"string","description":"Selected language on the device in ISO 639-3","maxLength":3,"minLength":1},"serialNumber":{"type":"string","description":"Serial number of the mobile device","maxLength":24,"minLength":1},"timeZone":{"type":"string","description":"Device time zone\nTimezone abbreviation.\nExample: PST, GMT, GMT+05:00\n","maxLength":10,"minLength":1},"timeZoneSetting":{"type":"string","description":"who set the timezone","maxLength":32,"enum":["NETWORK_SET","CONSUMER_SET"]},"simSerialNumber":{"type":"string","description":"SIM serial number","maxLength":24,"minLength":1},"IMEI":{"type":"string","description":"Phone IMEI","maxLength":24,"minLength":1},"networkOperator":{"type":"string","description":"The network operator name","maxLength":16,"minLength":1},"networkType":{"type":"string","description":"Type of network use for enrollment","maxLength":32,"enum":["CELLULAR","WIFI"]}}},"tokenStorageId":{"type":"string","description":"Unique token storage identifier","minLength":1,"maxLength":128},"tokenStorageType":{"type":"string","description":"Identifies the type of token storage location, possible values are:\n- HCE\n- SPAY_PHONE\n- SPAY_TABLET\n- SPAY_WATCH\n- SPAY_TV\n- IPHONE\n- IWATCH\n- IPAD\n- MAC_BOOK\n- ANDROID_PHONE\n- ANDROID_TABLET\n- ANDROID_WATCH\n- MOBILE_PHONE\n- TABLET\n- WATCH\n- MOBILE_PHONE_OR_TABLET\n- BRACELET\n- PC\n- HOUSEHOLD\n- WEARABLE\n- AUTOMOBILE\n- REALITY\n- UNKNOWN","maxLength":32},"tokenDetails":{"type":"string","title":"tokenDetails","description":"Additional information about the token of the virtual card\nThis field is conditional to the TSP and provided only during enrolment. \nThe tokenInfo is the json (cf http://www.json.org/ ) representation of the Token.\n\nThis value is encrypted using the PKCS#7 encryption scheme defined in RFC 2315/5652 using following encryption parameters:<br/>\n* The content encryption algorithm used is AES256/CBC/PKCS7Padding using a randomly generated AES key.\n* The key encryption algorithm is either RSAES-PKCS1-v1_5 (RSA/NONE/PKCS1Padding) or RSA/NONE/OAEPWithSHA256AndMGF1Padding (with MGF1 using SHA-256), using the certificate provided during onboarding.<br/>\nThe key encryption algorithm is defined during onboarding and is by default (if ommitted) the RSA/NONE/PKCS1Padding for legacy purpose.<br/>\nIt is recommended to configure RSA/NONE/OAEPWithSHA256AndMGF1Padding (with MGF1 using SHA-256) for new issuers.\n\n* The encryption result is then encoded using base64.<br/>\n* The public key length in the certificate can be 2048-bit or 4096-bit.\n\nOnce deciphered, the cardInfo contains the following information:<br/>\n|JSON field parameter name |description |MOC |Length |\n|--------------------------|------------|----|-------|\n|pan |The token PAN |M |Up to 19 |\n|exp |The token expiry date in the format MMYY.<br/>It is not provided for UPI scheme. |C |4 |\n|fpan |The funding PAN.<br/>It is provided for Domestic scheme. |C |Up to 19 |\n|fpanExpiryDate |The card expiry date in the format MMYY.<br/>It is provided for Domestic scheme. |C |4 |\n|paymentAccountReference |The payment account reference.<br/>It can be provided for Domestic scheme. |O |58 |\n|originalToken | The device-based token used to request the digitization |O|Up to 19|\n|originalTokenReferenceID | The unique reference of the original Token |O|Up to 32|\n|originalTokenAssuranceLevel | The assurance level of the orginal Token - RFU|O|2|\n\n**NOTE**\n\noriginalToken,originalTokenReferenceID and originalTokenAssuranceLevel are provided ONLY by VISA in case of a Token for Token digitization flow.\n","minLength":1,"maxLength":8196,"contentEncoding":"base64"},"tokenType":{"type":"string","title":"tokenType","maxLength":16,"description":"The type of token the TSP has created or for which the request is sent.\nIt applies to VISA, MasterCard and UPI.\nFollowing values are supported:\n- SE (token for a secure element)\n- HCE (token for Host Card Emulated device)\n- COF (token for a card on file)\n- ECOM (token for ecommerce)\n- QRC (token for QRCode)"},"tokenAssuranceLevel":{"type":"string","title":"tokenAssuranceLevel","maxLength":2,"description":"The token assurance level indicates the level of assurance of the token.\nThis is given by the ID&V method that has been used to authenticate the consumer on the specific token for example when the token is created (during the digitization flow) or, in case of a COF token, when a binding flow is executed.\n\nFollowing values are supported:\n- 00 (ID&V not performed)\n- 10 (Card Issuer Account Verification)\n- 11 (Card Issuer Interactive Verification - 1 Factor)\n- 12 (Card Issuer Interactive Verification - 2 Factor)\n- 13 (Card Issuer Oriented Non-Interactive Cardholder Authentication)\n- 14 (Card Issuer Asserted Authentication)\n\nNOTE: applies only to VISA"},"getTokenInfoReq":{"type":"object","properties":{"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"virtualCardId":{"$ref":"#/components/schemas/virtualCardId"}},"required":["issuerCardRefId","virtualCardId"]}}}}
```

## Update funding card information

> This method can be used by the Issuer to update either the card funding data OR the card metadata information:\<br/>\
> \- new expiry date value (in case of card renewal) or new PAN and expiry date (in case of card replacement)\
> \
> OR\
> \- new productId (in case of card replacement) (Not supported for Discover)\
> \
> OR\
> \- card metadata update (Not supported for Mastercard, American Express and Discover)\
> \
> \*\*NOTE\*\*:\
> \*it is not possible to update at the same time funding card data and card metadata.\*\
> \
> \*\*The issuer receives a notifyVirtualCardChange per virtualCard (active or suspended) linked to the funding card that is updated.\*\*\<br/><br>

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[{"name":"Update Card"}],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/updateCard":{"post":{"summary":"Update funding card information","description":"This method can be used by the Issuer to update either the card funding data OR the card metadata information:<br/>\n- new expiry date value (in case of card renewal) or new PAN and expiry date (in case of card replacement)\n\nOR\n- new productId (in case of card replacement) (Not supported for Discover)\n\nOR\n- card metadata update (Not supported for Mastercard, American Express and Discover)\n\n**NOTE**:\n*it is not possible to update at the same time funding card data and card metadata.*\n\n**The issuer receives a notifyVirtualCardChange per virtualCard (active or suspended) linked to the funding card that is updated.**<br/>\n","operationId":"updateCard","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"200":{"description":"Successful (no response body)"},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorRes"}}}},"500":{"description":"Internal Server Error"}},"tags":["Update Card"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCardReq"}}},"description":"updateCard request payload","required":true}}}},"components":{"parameters":{},"schemas":{"errorRes":{"type":"object","description":"Error Information Response","required":["responseCode"],"properties":{"responseCode":{"type":"number","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|115|Unknown product|\n|116|Unknown card|\n|119|Unknown Token|\n|163|Product not supported for mobile payment|\n|164|FPAN Provisioning Count Exceeded|\n|166|Invalid FPAN|\n|167|Card already enrolled|\n|221|The device was not reachable after retries|\n|321|Operation on token already on-going|\n|322|Time to live of the operation expired|\n|431|Invalid perso data|\n|432|Current token state does not allow this operation|\n|911|Operation failed|\n|921|Unexpected server error|\n"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}},"updateCardReq":{"type":"object","properties":{"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"newIssuerCardRefId":{"type":"string","description":"New issuerCardRefId to be updated, provided only if the issuerCardRefId change after a PAN,exp or productId replacement.<br/>\nNote, the **newIssuerCardRefId** is not mandatory and it is preferable to keep the same issuerCardRefId after updateCard<br/>\nThis field has been added to the API for issuers that are not able to manage the same identifier following a PAN/exp date update. \n","minLength":1,"maxLength":48},"fpanDetails":{"type":"string","description":"Old and new FPAN details (for example in case of card renewal)<br/>\nThis value is encrypted using the PKCS#7 encryption scheme defined in RFC 2315/5652 using following encryption parameters:<br/>\n\n* The content encryption algorithm used is AES256/CBC/PKCS7Padding\n* The key encryption algorithm is RSA/NONE/OAEPWithSHA256AndMGF1Padding (with MGF1 using SHA-256) using the TSH certificate provided during onboarding.\n* The encryption result shall be provided as hexadecimal string.<br/>\n\n\nThe format of the data is:<br/>\n  {<br/>\n   \"oldFPAN\": \"[0-9]{16,19}\",<br/>\n   \"oldExpDate\": \"MMYY\",<br/>\n \"oldPSN\": \"[a-fA-F0-9]{2}\",<br/>\n  \"newFPAN\": \"[0-9]{16,19}\", <br/>\n   \"newExpDate\": \"MMYY\",<br/>\n \"newPSN\": \"[a-fA-F0-9]{2}\"<br/>\n  }<br/>\nNOTE1: all fields are MANDATORY...<br/>\nNOTE2: oldPSN and newPSN apply ONLY to AMEX","maxLength":8192,"pattern":"^[a-fA-F0-9]+"},"publicKeyIdentifier":{"type":"string","maxLength":32,"minLength":1,"description":"Identifier of the key used to encrypt fpanDetails.<br/>Provided by Thales to Issuer during onboarding."},"newProductId":{"type":"string","description":"New ProductId to be used for digital card (for example: product upgrade).<br/>\nThis field is mutually exclusive to \"fpanDetails\" AND \"metadata\".<br/>\n\n NOTE: \n-  UPI: not applicable.\n-  Mastercard: the supported range is 0-10\n","maxLength":32,"minLength":1},"metadata":{"$ref":"#/components/schemas/metadata"},"newCardMetadata":{"$ref":"#/components/schemas/newCardMetadata"}},"required":["issuerCardRefId"]},"issuerCardRefId":{"type":"string","maxLength":48,"description":"The unique identifier of the funding card.<br/> This value is generated and manage by the issuer.<br/> This value can be updated in case of funding PAN replacement by the issuer.<br/>\n"},"metadata":{"type":"object","description":"Metadata Information to be provided for product upgrade.\nThis field is mutually exclusive to \"fpanDetails\" and \"newProductId\". \n\nNOTE: applicable ONLY to VISA\n","properties":{"cardIssuer":{"type":"string","maxLength":128,"description":"The name of the issuer\n"},"foregroundColor":{"type":"string","maxLength":32,"description":"Foreground color of the card display in the wallet\n"},"backgroundColor":{"type":"string","maxLength":32,"description":"BackgroundColor color of the card display in the wallet\n"},"labelColor":{"type":"string","maxLength":32,"description":"Label color of the card display in the wallet\n"},"shortDescription":{"type":"string","maxLength":32,"description":"A short description of the card to be used for notifications on the\nmobile device\n"},"longDescription":{"type":"string","maxLength":64,"description":"A longer description of the card that could appear inside the Digital\nWallet.\n"},"contactWebsite":{"type":"string","maxLength":128,"description":"Customer Service website URL of the issuing bank\n"},"contactName":{"type":"string","maxLength":32,"description":"Name of the issuing bank display in the wallet\n"},"contactEmail":{"type":"string","maxLength":32,"description":"Customer service email address of the issuing bank.\n"},"contactNumber":{"type":"string","maxLength":32,"description":"Customer service phone number of the issuing bank.\n"},"privacyPolicyURL":{"type":"string","maxLength":128,"description":"URL pointing to issuing bank privacy policy\n"},"termsAndConditionsURL":{"type":"string","maxLength":128,"description":"URL pointing to issuing bank terms and conditions for card\n"},"supportsTokenNotifications":{"type":"string","maxLength":32,"description":"<b>true</b> : If the support transaction notification for token transaction\n<b>false</b> otherwise "},"supportsFPANNotifications":{"type":"string","maxLength":32,"description":"<b>true</b> : If the support transaction notification for funding card transaction\n<b>false</b> otherwise "},"appLaunchURL":{"type":"string","maxLength":128,"description":"A URL to be passed to the associated issuer mobile app when launching\nit\n"},"appLaunchURLScheme":{"type":"string","maxLength":128,"description":"URL scheme that app is registered for to deep link from transaction\nnotifications and show all transaction notifications\n"},"transactionServiceURL":{"type":"string","maxLength":128,"description":"The URL of the issuer Transaction History (Transaction Details) Web\nService\n"},"transactionPushTopic":{"type":"string","maxLength":128,"description":"The push topic the issuer will use to notify the device that new\ntransactions are available\n"},"messageServiceURL":{"type":"string","maxLength":128,"description":"The URL of the message/offer web service that conforms to the API\ndescribed to PNOs and issuers in the Card Notification Services API\n"},"messagePushTopic":{"type":"string","maxLength":128,"description":"The push topic, the notification provider will use to notify the\ndevice that new messages are available.\n"}}},"newCardMetadata":{"type":"object","description":"New metadata of a physical card, such as FPAN last digits or expiry date.\n\nNOTE: NOT applicable to ITSP/VISA/MasterCard","properties":{"cardholderName":{"type":"string","maxLength":256,"description":"Name displayed on the card"},"fpanLastDigits":{"type":"string","pattern":"^[0-9]{4,5}$","description":"Last digits of the funding PAN (V/MC-4, Amex-5).<br/>Used by the Wallet Application to be display close to or on top of Card Art"},"fpanBin":{"type":"string","pattern":"^[0-9]{6}$","description":"6 digits of the funding card BIN"},"fpanExpiryDate":{"type":"string","pattern":"^(0[1-9]|1[0-2])/[0-9]{2}$","description":"Expiry Date to be display close to or on top of Card Art in format 'mm/yy'"}}}}}}
```

## Update virtual card state

> This method is used by the Issuer to update the status of:\
> \- a specific virtual card \
> \- all the virtual cards associated to a funding PAN on every device\
> \
> \
> The issuer can use the request GetCardInfo to retrieve id of the card or virtual card etc of user in order to call UpdateCardState.\
> \
> Status of operation is notified to the Issuer through NotifyCardStatusChange <br>

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[{"name":"Update Card State"}],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/updateCardState":{"post":{"summary":"Update virtual card state","description":"This method is used by the Issuer to update the status of:\n- a specific virtual card \n- all the virtual cards associated to a funding PAN on every device\n\n\nThe issuer can use the request GetCardInfo to retrieve id of the card or virtual card etc of user in order to call UpdateCardState.\n\nStatus of operation is notified to the Issuer through NotifyCardStatusChange \n","operationId":"updateCardState","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"200":{"description":"Successful (no response body)"},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorRes"}}}},"500":{"description":"Internal Server Error"}},"tags":["Update Card State"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCardStateReq"}}},"description":"updateCardState request payload","required":true}}}},"components":{"parameters":{},"schemas":{"errorRes":{"type":"object","description":"Error Information Response","required":["responseCode"],"properties":{"responseCode":{"type":"number","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|115|Unknown product|\n|116|Unknown card|\n|119|Unknown Token|\n|163|Product not supported for mobile payment|\n|164|FPAN Provisioning Count Exceeded|\n|166|Invalid FPAN|\n|167|Card already enrolled|\n|221|The device was not reachable after retries|\n|321|Operation on token already on-going|\n|322|Time to live of the operation expired|\n|431|Invalid perso data|\n|432|Current token state does not allow this operation|\n|911|Operation failed|\n|921|Unexpected server error|\n"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}},"updateCardStateReq":{"type":"object","required":["action"],"properties":{"issuerCardRefId":{"type":"string","maxLength":48,"description":"The unique identifier of the funding card state to update.<br/>\nIf provided, it update the state of all active or suspended tokens that belongs to the funding card identified by issuerCardRefId\nmandatory if virtualCardId is not provided\n"},"virtualCardId":{"type":"string","maxLength":64,"description":"The unique identifier of the virtual card state to update.<br/>\nmandatory if issuerCardRefId is not provided\n"},"deviceBindingReference":{"type":"string","maxLength":64,"description":"reference of the device binding process/link to the Virtual Card.The deviceBindingReference is used only with action **UNBIND_DEVICE** and **APPROVE_DEVICE_BINDING** (VTS only. Note that this field corresponds to the deviceIndex)"},"action":{"type":"string","description":"action to update the state\nNote: ERASE aims to be use in the context of GDPR compliancy, TSH will take care of erasing everything related to the given card/tokens when receiving this action.\n","maxLength":32,"enum":["SUSPEND","RESUME","DELETE","ERASE","UNBIND_DEVICE","APPROVE_DEVICE_BINDING","CARDHOLDER_STEPUP_CALL_CENTER","CARDHOLDER_STEPUP_ISSUER_APP"]},"reason":{"type":"integer","description":"Reason of the token(s) state update<br/>Here is the possible values:<br/><ul><li>11 : User decision</li><li>21 : Issuer decision</li><li>31 : Device lost</li><li>32 : Device stolen</li></ul>"}}}}}}
```

## send a text message to the wallet

> \# Overview\
> This method is used by the Issuer to send a textual message to the user, handle by the wallet application\
> \
> \*\*This feature is only supported by Apple Pay and when Thales acts as a OEM broker for domestic schemes\*\*\
> \# Deep Link\
> The "Deep Link mechanism" consist in having the wallet application launching issuer mobile banking application when the end user press on message displayed .\
> The Wallet application will launch the application and provides, as a parameter, the 'messageToken' to the issuer application so it can identifyc the message.<br>

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[{"name":"Send Message"}],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/sendMessage":{"post":{"summary":"send a text message to the wallet","description":"# Overview\nThis method is used by the Issuer to send a textual message to the user, handle by the wallet application\n\n**This feature is only supported by Apple Pay and when Thales acts as a OEM broker for domestic schemes**\n# Deep Link\nThe \"Deep Link mechanism\" consist in having the wallet application launching issuer mobile banking application when the end user press on message displayed .\nThe Wallet application will launch the application and provides, as a parameter, the 'messageToken' to the issuer application so it can identifyc the message.\n","operationId":"sendMessage","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"200":{"description":"sendMessage response payload"},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorRes"}}}},"500":{"description":"Internal Server Error"}},"tags":["Send Message"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/sendMessageReq"}}},"description":"sendMessage request payload","required":true}}}},"components":{"parameters":{},"schemas":{"errorRes":{"type":"object","description":"Error Information Response","required":["responseCode"],"properties":{"responseCode":{"type":"number","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|115|Unknown product|\n|116|Unknown card|\n|119|Unknown Token|\n|163|Product not supported for mobile payment|\n|164|FPAN Provisioning Count Exceeded|\n|166|Invalid FPAN|\n|167|Card already enrolled|\n|221|The device was not reachable after retries|\n|321|Operation on token already on-going|\n|322|Time to live of the operation expired|\n|431|Invalid perso data|\n|432|Current token state does not allow this operation|\n|911|Operation failed|\n|921|Unexpected server error|\n"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}},"sendMessageReq":{"type":"object","required":["language","message"],"properties":{"virtualCardId":{"$ref":"#/components/schemas/virtualCardId"},"issuerCardRefId":{"$ref":"#/components/schemas/issuerCardRefId"},"language":{"type":"string","minLength":1,"maxLength":16,"description":"The value for this language localization code is an IETF Language (https://en.wikipedia.org/wiki/IETF_language_tag)\nTag, such as “en-us”.\nRegion Designator should be one of the valid ISO 3166-1 alpha-2 codes, which can be found in this link: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2\nLanguage Designator should use the two-letter ISO 639-1 standard (preferred) or the three-letter ISO 639-2 standard, which can be found in this link : https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes\n"},"message":{"type":"string","minLength":1,"maxLength":128,"description":"Textual message that must be sent to end user"},"messageToken":{"type":"string","minLength":1,"maxLength":64,"description":"An optional value provided in case the issuer mobile application support deep link\nIf messageToken is provided, the wallet application will enable the deep link feature for this particular message\n"},"expirationDate":{"type":"string","minLength":1,"maxLength":32,"description":"Expiration date of the message RFC3339 format."}}},"virtualCardId":{"description":"Identifier of the virtual card to update","type":"string","maxLength":64,"minLength":1},"issuerCardRefId":{"type":"string","maxLength":48,"description":"The unique identifier of the funding card.<br/> This value is generated and manage by the issuer.<br/> This value can be updated in case of funding PAN replacement by the issuer.<br/>\n"}}}}
```

## check if TSH is healthy

> This method is used by TSH to monitor Issuer health for monitoring purpose

```json
{"openapi":"3.1.1","info":{"title":"Gemalto TSH Issuer Gateway  API","version":"2.8.7"},"tags":[{"name":"Health check"}],"servers":[{"url":"https://api.dbp.thalescloud.io/gtep/igwapi/v2.0"}],"paths":{"/healthCheck":{"get":{"summary":"check if TSH is healthy","description":"This method is used by TSH to monitor Issuer health for monitoring purpose","operationId":"healthCheck","parameters":[{"$ref":"#/components/parameters/x-correlation-id-header"},{"$ref":"#/components/parameters/x-issuer-id-header"}],"responses":{"204":{"description":"succesfull"},"400":{"description":"Bad Request, Invalid request URI or header, or unsupported nonstandard parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorRes"}}}},"500":{"description":"Internal Server Error"}},"tags":["Health check"]}}},"components":{"parameters":{},"schemas":{"errorRes":{"type":"object","description":"Error Information Response","required":["responseCode"],"properties":{"responseCode":{"type":"number","description":"Error Response code to the request\n|Error code | Description|\n|-------|-------|\n|111|Missing mandatory parameter|\n|112|Bad parameter format|\n|113|Unknown issuer|\n|115|Unknown product|\n|116|Unknown card|\n|119|Unknown Token|\n|163|Product not supported for mobile payment|\n|164|FPAN Provisioning Count Exceeded|\n|166|Invalid FPAN|\n|167|Card already enrolled|\n|221|The device was not reachable after retries|\n|321|Operation on token already on-going|\n|322|Time to live of the operation expired|\n|431|Invalid perso data|\n|432|Current token state does not allow this operation|\n|911|Operation failed|\n|921|Unexpected server error|\n"},"errorMessage":{"type":"string","maxLength":256,"description":"Textual error message"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payments.thalescloud.io/classic-tokenization/es/referencia-de-la-api/api-de-la-pasarela-del-emisor/entrada-del-emisor.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
