Skip to main content

Card

This module contains endpoints for creating and managing virtual cards.
Each user card will be charged a monthly fee from the partner's EUR balance. The fee for one card is €0,25 per month.

List of countries for which we support virtual card generation:

  • AT
  • BE
  • BG
  • CY
  • CZ
  • DE
  • DK
  • EE
  • ES
  • FI
  • FR
  • GR
  • HR
  • HU
  • IE
  • IT
  • LT
  • LU
  • LV
  • MT
  • NL
  • PL
  • PT
  • RO
  • SE
  • SI
  • SK

A customer can have a maximum of 10 cards at one time.
Each user has a card creation limit:

  • 5 cards per 24 hours
  • 10 cards per 30 days
  • 20 cards per year

Create virtual card​

Method: POST
Endpoint: /v1/card/virtual

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
labelstringYesCard label, min length 3, max length 30
pinstringYesCard pin, 4 digits

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"label": "Shopping",
"pin": "1234"
}

Response​

Code: 200
Description: Returns card details

 

Example response​

{
"cardId": "7018ac87-455f-4bf4-851a-0f6bcf82b84d",
"cardNumber": "1234123412341234",
"cvv": "123",
"exp": "01/30"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: User of this country cannot have card

Example response​

{
"errorCode": "P451",
"errorName": "forbidden-country-card"
}

 

Code: 400
Description: User suspended

Example response​

{
"errorCode": "P455",
"errorName": "user-suspended"
}

Get all user cards​

Method: GET
Endpoint: /v1/card/all/:externalUserId

Request​

Parameters - required​

NameTypeRequiredExampleDescription
externalUserIdstringYesf9b430dc-7e1a-42a0-bbb4-9003935ea9f9External user id (from your system)

Response​

Code: 200
Description: Returns all user cards

Example response​

{
"cards": [
{
"cardId": "7018ac87-455f-4bf4-851a-0f6bcf82b84d",
"status": "ACTIVE",
"label": "Shopping",
"cardLastDigits": "1234"
},
{
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7",
"status": "LOCKED_BY_USER",
"label": "Virtual",
"cardLastDigits": "4321"
}
]
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

Get card details​

Method: GET
Endpoint: /v1/card/details/:externalUserId/:cardId

Request​

Parameters - required​

NameTypeRequiredExampleDescription
externalUserIdstringYesf9b430dc-7e1a-42a0-bbb4-9003935ea9f9External user id (from your system)
cardIdstringYes8c394557-ba48-4ab4-9349-84d396b4a7f7Card id (from our system)

Response​

Code: 200
Description: Returns card details

Example response​

{
"status": "ACTIVE",
"cardNumber": "1234123412341234",
"cvv": "123",
"exp": "01/30"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Update card pin​

Method: PATCH
Endpoint: /v1/card/pin

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
cardIdstringYesCard id (from our system)
pinstringYesCard pin, 4 digits

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7",
"pin": "1234"
}

Response​

Code: 200
Description: Card pin updated

 

Example response​

{
"message": "Card pin updated successfully"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Block card​

Method: PATCH
Endpoint: /v1/card/block

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
cardIdstringYesCard id (from our system)

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7"
}

Response​

Code: 200
Description: Card blocked

 

Example response​

{
"message": "Card blocked successfully"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Unblock card​

Method: PATCH
Endpoint: /v1/card/unblock

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
cardIdstringYesCard id (from our system)

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7"
}

Response​

Code: 200
Description: Card unblocked

 

Example response​

{
"message": "Card unblocked successfully"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Get card limits​

Method: GET
Endpoint: /v1/card/limits/:externalUserId/:cardId

Request​

Parameters - required​

NameTypeRequiredExampleDescription
externalUserIdstringYesf9b430dc-7e1a-42a0-bbb4-9003935ea9f9External user id (from your system)
cardIdstringYes8c394557-ba48-4ab4-9349-84d396b4a7f7Card id (from our system)

Response​

Code: 200
Description: Returns card limits

Response body explanation​

{
"monthlyTrxAll": "Total monthly limit",
"dailyTrxAll": "Total daily limit",
"monthlyTrxAtm": "ATM monthly limit",
"dailyTrxAtm": "ATM daily limit",
"monthlyTrxEcom": "Ecommerce monthly limit",
"dailyTrxEcom": "Ecommerce daily limit"
}

 

Example response​

{
"monthlyTrxAll": 7500,
"dailyTrxAll": 1500,
"monthlyTrxAtm": 2500,
"dailyTrxAtm": 500,
"monthlyTrxEcom": 5000,
"dailyTrxEcom": 1000
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Update card limits​

Method: PATCH
Endpoint: /v1/card/limits

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
cardIdstringYesCard id (from our system)
monthlyTrxAllnumberYesTotal monthly limit
dailyTrxAllnumberYesTotal daily limit
monthlyTrxAtmnumberYesATM monthly limit
dailyTrxAtmnumberYesATM daily limit
monthlyTrxEcomnumberYesEcommerce monthly limit
dailyTrxEcomnumberYesEcommerce daily limit

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7",
"monthlyTrxAll": 7500,
"dailyTrxAll": 1500,
"monthlyTrxAtm": 2500,
"dailyTrxAtm": 500,
"monthlyTrxEcom": 5000,
"dailyTrxEcom": 1000
}

Response​

Code: 200
Description: Card limits updated

 

Example response​

{
"message": "Card limits updated successfully"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}

Delete card​

Method: DELETE
Endpoint: /v1/card

Request​

Request body - required​

NameTypeRequiredDescription
externalUserIdstringYesExternal user id (from your system)
cardIdstringYesCard id (from our system)

 

Example body request​

{
"externalUserId": "bca65c48-df49-4831-a7b2-de7903321581",
"cardId": "8c394557-ba48-4ab4-9349-84d396b4a7f7"
}

Response​

Code: 200
Description: Card deleted

 

Example response​

{
"message": "Card deleted successfully"
}

 

Code: 400
Description: User does not exist

Example response​

{
"errorCode": "P412",
"errorName": "invalid-user"
}

 

Code: 400
Description: Card does not exist

Example response​

{
"errorCode": "P434",
"errorName": "invalid-card"
}