WL 1-Click Technical Concepts

Introduction

WL 1-Click Card Issuing Processing provides end-to-end and real time processing by managing debit, credit and prepaid cards. The core services allow you to launch your card product quickly and easily.

The WL 1-Click Card Issuing Processing API has been designed as a REST API.

Each resource is accessible under a clearly named URL and the HTTP response codes are used to relay status. HTTP Verbs like GET and POST are used to interact with the resources. To ease the integration with clients, main resources are identified either using issuer references either internal references generated on WL systems.

JSON is used for all payloads, including metadata information.

Authentication

WL 1-Click Card Issuing Processing API uses a secure authentication mechanism keeping the data and the interaction between the issuer and Worldline secure and reliable. In order to authenticate on the API via Oauth2, you first need to get provided with a Consumer Key and Consumer Secret to retrieve access_token by calling our Oauth2 Authentication server and then try out the APIs via the developer portal or your app.

Request:
curl --location --request POST 'https://issuing-solutions.eae.apis.svc.as8677.net/oauth/accesstoken' \
--header 'Authorization: Basic {{Consumer Key and Consumer Secret}}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials'

Response:
{
    ...
    "access_token": {{access_token}}",
    ...
}

Response codes

WL 1-Click Card Issuing Processing API uses basic HTTP response codes to indicate the resulting status of each request.

  • Codes in the 2xx range indicate success
  • Codes in the 4xx range indicate an error
  • Codes in the 5xx range indicate a server error

Metadata

WL 1-Click Card Issuing Processing API Responses contains two separate part : 

  • responseMetadata is containing technical information about the execution of the request.
  • data the functional and business data.

The responseMetadata is formatted as shown hereafter and contains the following information

  • correlationId : WL-Correlation-Id from the headers
  • statusMessage : Message about Execution Status
  • statusCode : HTTP Response Code (same than Response one)
  • responseDateTime : when response is received
  • timeTakenMs : elapsed ms time on server time (for 200 OK cases)
Response :
{
    "responseMetadata": {
        "correlationId": "8f7cb0d5-3f5b-4935-bc10-e2c45b46b5df",
        "statusMessage": "Executed successfully",
        "statusCode": 200,
        "responseDateTime": "2021-10-13T15:59:50.302+0200",
        "timeTakenMs": 129
    },
    "data": {
        ...
    }
}

Request correlation identifier

Each API request has an associated correlation identifier. This correlation identifier can be found metadata information and in WL-Correlation-ID  Request headers. This correlation identifier can be set in WL-Correlation-ID Request headers and is used to provide support about a specific request. If not provided, it's generated by WL system as an UUID.

Pagination

All of the APIs that could return a huge list of resources are supporting pagination using the page and offset parameters in the request formatted on with the following way : ?page={{page}}&offset={{offset}}

Request with default offset:
{{baseUrl}}/issuers/{{issuerId}}/accounts/{{accountReference}}/operations?page=5

Request with default offset:
{{baseUrl}}/issuers/{{issuerId}}/accounts/{{accountReference}}/operations?page=5&offset=100

Field expansion

Some of the fields can be expanded in order to retrieve additional information when retrieving the detail of one resource within the same request by using the embed request parameter. Multiple fields can be provided and should be separated by a comma (,). By default fields that can be expanded are not provided in the response

Request:
{{baseUrl}}/issuers/{{issuerId}}/cards/{{cardReference}}?embed=cardContract

Field filtering

In order to retrieve only the attributes that are relevant in the response of the APIs, the filter parameter can be used in the request. The name of the fields to be retrieved should be provided and you can filter recursively by specifying nested fields after a dot(.). Multiple fields can be provided and should be separated by a comma (,)

Request:
{{baseUrl}}/issuers/{{issuerId}}/contracts/create-consumer-contract?filter=contract.contractIdentifier,contract.cardContracts.card.cardIdentifier

Versionning

The major versions of the WL 1-Click Card Issuing Processing APIs are distinguished by the version indicator in the URLs (currently the V2 /api/v2/ ). Minor version updates will not result in a new version indicator in the API URLs. All minor updates are considered to be backwards compatible. Only when changes are not backwards compatible, will we issue a new major version of the API.

 

 

Enable "on this page" menu on doc section
On