Prerequisites
Before you begin, ensure you have the following credentials and connectivity in place:- Tietoevry access: An active account in the Tietoevry environment.
- Network connectivity: Confirmed routing between Tietoevry and the Grand Central (GC) iPaaS.
- Device Administration Connector and the Card Authorization Connector require a secret file containing the Tietoevry private key shared by Tietoevry. This private key is mandatory for authenticating and invoking the Tietoevry APIs.
- Namespace:
gc-tietoevryto deploy connectors. - Environment details: The following environment variables are needed from Tietoevry to configure the connector:
| Key | Description |
|---|---|
| X-EVRY-ORIGIN | Specifies the source platform of the request (for example, Mobile or Web). |
| X-EVRY-USERORGID | Defines the institution that the user (X-EVRY-USERID) belongs to. Typically used in combination with X-EVRY-DATAOWNERORGID to manage access control to institution data. |
| X-EVRY-CLIENT-CLIENTNAME | Identifies the source sending the request. Used to separate different service consumers. The name should identify the institution and consumer application. |
| X-EVRY-DATAOWNERORGID | Identifies the organization that owns the requested data. Used to ensure that the authenticated institution has access to the requested institution’s data. Financial institution registered in the banking infrastructure. |
| Private Key | Tietoevry private key used for generating signature and digest. |
The logic for generating signature and digest is pre-configured in the Tietoevry SDK. See GenerateDigestAndSignatureProcessor.java.
Configuration guide
Follow these steps to initialize and authorize your Tietoevry connector. 1. Establish connectivity Share the following details with the Grand Central team to establish secure connectivity between Grand Central and Tietoevry:- Environment details: The
baseUrland IP address of the Tietoevry application.
gc-applications-live repository within the device-administration-v2.values.yaml file. Configure the following parameters:
-
device-administration-v2.values.yaml and card-authorization-v1.values.yaml
Key Description tietoevry.baseUrl Base URL of Tietoevry. tietoevry.client.clientname Identifies the source sending the request. Used to separate different service consumers. The name should identify the institution and consumer application. tietoevry.dataownerorgid Data owner InstId. Identifies the organization that owns the requested data. Used to ensure that the authenticated institution has access to the requested institution’s data. Financial institution registered in the banking infrastructure. tietoevry.client.ismobile Indicates whether the request is coming from the mobile channel. Values: trueorfalse.tietoevry.origin Origin. Used to distinguish request origins from Open Banking (third parties), Open Banking under PSD2 (third parties), and the bank’s internal use. tietoevry.userorgid User OrgId. Defines the institution that the user (X-EVRY-USERID) belongs to. Typically used in combination with X-EVRY-DATAOWNERORGID to manage access control to institution data. tietoevry.channel Used to differentiate business logic based on which channel was the origin of the request. tietoevry.user.ipaddress Client IP address or DNS address from the device sending the request. Used to separate requests from different devices. signature.algorithm Algorithm used for generating the signature. Default: rsa-sha256. -
card-ecommerce-gateway-webhooks-v1.values.yaml
Key Description ebp.baseUrl Base URL of the EBP. ebp.challenge.endpoint Relative path of the authentication challenge endpoint. This endpoint initiates the authentication flow and generates a challenge for the user or client. ebp.completion.endpoint Relative path of the authentication completion endpoint. This endpoint completes or validates the authentication challenge and finalizes the authentication process.
card-ecommerce-gateway-webhooks-v1.values.yaml), configure the following:
- Inbound configuration (Tietoevry to Grand Central):
- Share the inbound webhook URL with Tietoevry, along with the required API key.
- Obtain this webhook URL from Azure APIM.
- The webhook specification is defined in the card-ecommerce-gateway-webhooks API contract.
- Outbound configuration (Grand Central to EBP):
- Configure the EBP API endpoint for outbound 3DS-related calls.
- The outbound API contract is defined in the card-ecommerce-gateway API specification.
Test your integration
To access the Cards Unified API, include your Grand Central subscription key in the request header. If you don’t have a key, contact the Grand Central Support Team to have one provisioned.| Key | Value |
|---|---|
| api-key | <your_subscription_key> |
Troubleshooting
If your connector isn’t responding as expected, review the following common scenarios.5XX: Internal server error / Core system is down
5XX: Internal server error / Core system is down
Cause: The Grand Central (GC) gateway cannot establish a handshake with the Tietoevry Cardbase endpoint. This typically indicates an upstream service outage at Tietoevry or a network routing failure.Solution: Verify the operational status of the Tietoevry Cardbase environment with Tietoevry. If the service is operational, contact the GC Support team.
5XX: Timeout from core / Read timeout / SocketTimeoutException
5XX: Timeout from core / Read timeout / SocketTimeoutException
Cause: The Grand Central (GC) gateway cannot establish a handshake with the Tietoevry Cardbase endpoint. This typically indicates an upstream service outage at Tietoevry or a network routing failure.Solution: Verify the operational status of the Tietoevry Cardbase environment with Tietoevry. If the service is operational, contact the GC Support team.
Invalid OAuth token
Invalid OAuth token
Cause
Request authentication failed due to an invalid or mismatched HTTP signature or digest. This can occur if one or more of the following conditions are met:- The RSA signature does not match the signed headers or request payload.
- The digest value was calculated on a request body that differs (even by whitespace or encoding) from the body sent to Tietoevry.
- One or more mandatory X-EVRY-* headers are missing, incorrectly populated, or not included in the signature.
- The keyId used in the Signature header does not match the public key registered with Tietoevry.
- The (request-target) or (created) values used during signature generation do not align with the actual request.
- Clock skew between client and Tietoevry systems causes the created timestamp to fall outside the accepted window.
Solution
- Regenerate the HTTP signature, ensuring that:
- All required headers (X-EVRY-*, (request-target), (created), and digest) are included and signed in the correct order.
- The digest is computed using the exact request body bytes sent over the wire (no formatting or whitespace differences).
- The keyId corresponds to the RSA key pair registered with Tietoevry.
- Verify that the request body encoding is UTF-8 and that the Content-Type header is correctly set.
- Ensure system clocks are synchronized to avoid timestamp validation issues.
- If the issue persists, verify the encryption and signing logic with Tietoevry. Tietoevry will provide or validate the expected signature and digest generation logic as part of the integration support process.
429: Rate limit exceeded
429: Rate limit exceeded
Cause: The number of incoming requests has exceeded the defined threshold for your subscription tier. This 429 Too Many Requests response is a protective measure to ensure the stability of the Grand Central and core banking infrastructure.Solution: Review your application’s request patterns to identify unexpected spikes. If your business requirements have evolved and you require higher throughput, contact the Grand Central team to request an adjustment to your APIM rate limit policy.
Need help?
Contact Support
Reach out to the Grand Central team for assistance with environment setup or rate limit increases.