Everest Card — API reference
  • Credit
  • Debit
  • Prepaid
  • Common Methods
  • OAuth2
  • Delivery
Information
Cards
    Card applications
      getCardApplicationListpostgetDebitApplicationIdByFromShadowCardNumberpostsubmitCardApplicationExtStatuspost
    Card issuance and personalisation
      getApplicableProductsByCustomerNumberpostcreateIndividualCardpostcreateIndividualSupplementaryCardpostcreateCorporateCardpostcreateDummyCorporateCardpostcreateVirtualCardpostgetPendingCardEmbossListpostcancelCardEmbossByShadowCardNumberpost
    Card lifecycle
      getCustomerDebitCardListByTenantIdpostgetCustomerDebitShadowCardsByTenantIdpostchangeCardStatuspostgetCardListpostgetCardListNewpostgetCardInfopostreplaceCardpostchangeAndReplaceCardpostisCardFoundInpostaddDebitCardLogpost
    No-name cards
      createNoNameCardApplicationpostcancelNoNameCardApplicationpostupdateNoNameCardApplicationpostactivateNoNameCardpostcreateCardUsingNoNameApplicationpostcreateAndProcessNoNameCardApplicationpostreplaceNoNameCardpostreplaceCardUsingNoNameApplicationpostchangeAndReplaceNoNameCardpost
Customers and accounts
    Branch management
      changeCardBranchpostchangeCustomerBranchposttransferBranchCustomerpostgetDebitCustomerLisfOfBranchpost
    Customers
      getCorporateCustomerInfoByIndividualCustomerpostgetCustomerAssetpostisCustomerConvertToRipperpostgetCustomerAssetsSummaryDebitpost
    Account linking
      attachCardAccountpostdetachCardAccountpostdetachCardAccountByAccountNumberpostmodifyCardAccountpostlistCardAccountByAccountNumberpostlistCardAccountByShadowCardNumberpostrecreateCustomerCardAccountspostsaveCardAccountCurrencyConversionpostgetCardAccountCurrencyConversionpost
Transactions
    getDebitCardTransactionByUtidpostgetDebitCardTransactionByUtidNewpostgetDebitTransactionAllpostupdateTransactionForBNPLpostgetDigitalSlipReceiptpostgetAuthorizationListByBegindateEnddatepostgetDbttransactionByCardrefCustomernumpost
Limits and controls
    Card and customer limits
      getAvailableECommerceLimitpost
    Operation limits
      getCardLimitationParameterDatapostgetCardOperationLimitpostsetCardOperationLimitpostremoveCardOperationLimitpostgetCustomerOperationLimitpostsetCustomerOperationLimitpostremoveCustomerOperationLimitpostgetCustomerLimitationParameterDatapost
    Permissions and restrictions
      getCardPermissionspostsaveCardPermissionspostsaveCardBnplPermissionpostchangeCardMiscOptionpostgetCardMiscOptionpost
Security
    PIN and card security
      setCardPinpostchangeCardPinpostverifyCardPinpostverifyRsaPinpostsetRsaPinpostchangeRsaPinpostincreasePinTryCountpostverifyRsaPinWithStaticSaltpostverifyCVVpostverifyCVVPartialpostgenerateCVVpostgetCardPinOperationHistorypostresetCvvCounterpost
Disputes
    Disputes and chargebacks
      createDisputeCasepostgetDisputeListpostaddDocumentByCaseNumberpostcancelDisputeCasepost
Platform
    Platform operations
      healthCheckpostrefreshCachepost
    Reference data
      getCardTypeByBinpost
SchemasError codesChannels
powered by Zudoku
Debit Digital Channels Integration
Debit Digital Channels Integration

Card lifecycle

Move a card through its states after issuance — status changes, replacement, renewal, blocking and closure.


getCustomerDebitCardListByTenantId

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitCardListByTenantId

Returns the list of debit cards for a customer filtered by tenant. Retrieves card data via GetCustomerDebitCardListByTenant, enriches results with account balance information from Core Banking, and determines pending replace status based on renewal flags. Performs request validation and returns GetCustomerDebitCardListByTenantIdResponse containing customer debit card details.

getCustomerDebitCardListByTenantId › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

getCustomerDebitCardListByTenantId › Request Body

GetCustomerDebitCardListByTenantIdRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

customerNumber
​integer · int64 · required

Customer whose cards are listed. A real null check — the field is nullable, so absence is refused rather than read as zero.

tenantId
​string · maxLength: 30 · optional

Which tenant's cards to list. Its check is commented out in the facade, and absence is not an error: the query runs instead with a marker the service substitutes for a missing tenant, which asks a different question rather than a wider one. Send it to ask about a named tenant.

getCustomerDebitCardListByTenantId › Responses

Success

GetCustomerDebitCardListByTenantIdResponse
​array · optional
POST/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitCardListByTenantId
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitCardListByTenantId \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channel": "channel", "customerNumber": 0, "tenantId": "tenantId" }'
Example Request Body
{ "channel": "channel", "customerNumber": 0, "tenantId": "tenantId" }
json
application/json
Example Responses
{ "customerDebitCardList": [ { "bin": "bin", "keyDerivationIndex": 0, "encryptedCardNumber": "encryptedCardNumber", "toShadowCardNumber": "toShadowCardNumber", "accountNumber": 0, "barcode": "barcode", "cardRenewStatus": "cardRenewStatus", "cardRenewSubStatus": "cardRenewSubStatus", "cardStatusCode": "cardStatusCode", "cardStatusCodeDesc": "cardStatusCodeDesc", "cardStatusReasonCode": "cardStatusReasonCode", "cardStatusReasonCodeDesc": "cardStatusReasonCodeDesc", "customerNumber": 0, "digitalCardFlag": true, "firstPinSetDate": "2026-10-16T14:30:00Z", "mainCardRefNumber": "mainCardRefNumber", "maskedCardNumber": "maskedCardNumber", "noNameFlag": true, "productNumber": "productNumber", "productShortName": "productShortName", "shadowCardNumber": "shadowCardNumber", "usableBalance": 0, "currencyCode": "currencyCode", "pendingReplaceApplicationExists": true, "expiryDateStr": "expiryDateStr" } ] }
json
application/json

getCustomerDebitShadowCardsByTenantId

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitShadowCardsByTenantId

Returns the list of debit shadow cards for a customer filtered by tenant. Retrieves shadow card information via GetCustomerDebitShadowCardsByTenant and returns card type, masked and shadow card numbers, product details, and card status information after request validation.

getCustomerDebitShadowCardsByTenantId › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

getCustomerDebitShadowCardsByTenantId › Request Body

GetCustomerDebitShadowCardsByTenantIdRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

customerNumber
​integer · int64 · required

Customer whose shadow cards are listed. A real null check.

tenantId
​string · maxLength: 30 · required

Which tenant's cards to list. Demanded here, unlike on getCustomerDebitCardListByTenantId, where the same check is commented out. The two operations differ on this field.

getCustomerDebitShadowCardsByTenantId › Responses

Success

GetCustomerDebitShadowCardsByTenantIdResponse
​array · optional
POST/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitShadowCardsByTenantId
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/getCustomerDebitShadowCardsByTenantId \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channel": "channel", "customerNumber": 0, "tenantId": "tenantId" }'
Example Request Body
{ "channel": "channel", "customerNumber": 0, "tenantId": "tenantId" }
json
application/json
Example Responses
{ "customerDebitShadowCardList": [ { "cardType": "cardType", "customerNumber": 0, "maskedCardNumber": "maskedCardNumber", "shadowCardNumber": "shadowCardNumber", "productNumber": "productNumber", "productShortName": "productShortName", "cardStatusCode": "cardStatusCode", "cardStatusCodeDesc": "cardStatusCodeDesc", "cardStatusReasonCode": "cardStatusReasonCode", "cardStatusReasonCodeDesc": "cardStatusReasonCodeDesc" } ] }
json
application/json

changeCardStatus

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/changeCardStatus

Changes the status of a debit card using status code, reason, and optional transaction information. Returns whether the card status is active after the change.

changeCardStatus › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

changeCardStatus › Request Body

ChangeCardStatusRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

shadowCardNumber
​string · maxLength: 19 · required

The card whose status changes.

statusCode
​string · maxLength: 2 · required

The status to move to. Must be a status the platform defines, and the move must be permitted for this channel group.

Values:

  • A — valid
  • B — pending
  • C — stolen
  • D — cancelled by the bank
  • F — fraud
  • G — temporarily blocked
  • I — cancelled
  • L — lost
  • M — cancelled by the customer
  • T — corporate dummy
statusReasonCode
​string · maxLength: 2 · required

Dependent — The reason for the new status. Must be a reason defined for statusCode.

transactionId
​string · maxLength: 50 · optional

The caller's own id. Echoed back in the error body.

closeRequestDate
​string · optional

The date the closure was requested.

A date and time as a string, in RFC 3339 form: 2026-10-16T14:30:00Z, or with an offset, 2026-10-16T17:30:00+03:00.

Example: 2026-10-16T14:30:00Z

changeCardStatus › Responses

Success

ChangeCardStatusResponse
toStatusActive
​boolean · required

Whether the card ends this operation in an active status.

POST/IntegrationDigitalChannelDebit/debit/api/changeCardStatus
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/changeCardStatus \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "shadowCardNumber": "1202262320000355560", "statusCode": "G", "statusReasonCode": "GK", "channel": "102" }'
Example Request Body
{ "shadowCardNumber": "1202262320000355560", "statusCode": "G", "statusReasonCode": "GK", "channel": "102" }
json
application/json
Example Responses
{ "toStatusActive": true }
json
application/json

getCardList

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/getCardList

Retrieves the list of debit cards based on multiple filters such as ShadowCardNumber, CustomerNumber, MainCustomerNumber, Barcode, AccountNumber, BranchCode, CustomerNameSurname, IdentificationNumber, and CourierStatus. Supports corporate cards, active cards, and digital card flags. Returns a list of DebitCardModel including card details, sensitive data when applicable, account information via ListCardAccountByShadowCardNumber, card status logs, delivery information, and PIN setup status. Uses _dcidRepository.GetSearchByCustomernumberCardnumber for searching, _dbtServiceProxy for account and permission operations, _customerServiceProxy for card and PAN retrieval, and GetSensitiveData for retrieving sensitive card data such as CVV2.

getCardList › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

getCardList › Request Body

GetCardListRequest
channelCode
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

customerNumber
​integer · int64 · optional

The customer at the bank's core banking system, as a number. The platform stores it rather than issuing it, so it comes from the core.

mainCustomerNumber
​integer · int64 · optional

The main customer of a corporate relationship, as a number. The employees and supplementary holders under it carry their own customerNumber.

shadowCardNumber
​string · maxLength: 19 · optional

The platform's own handle for a card, and the identifier most operations take. It is returned by every operation that creates a card and by the card listings; a caller does not compose one.

barcode
​string · maxLength: 13 · optional

The delivery barcode the consignment is tracked by.

accountNumber
​integer · int64 · optional

The account at the bank's core banking system that the card draws on. It must already exist, belong to the card's customer, and be neither shared nor a foreign-currency account.

cardNumber
​string · minLength: 12 · maxLength: 19 · optional

The card number, which this API neither stores nor searches on. The facade resolves it through the customer service and searches on the shadowCardNumber that comes back.

purpose
​string · maxLength: 1 · optional

Narrows the list by what the cards are wanted for. One letter, compared in the query itself; anything that is not one of the five below filters nothing rather than being refused.

  • B — cards in a valid status
  • C — open cards, status A
  • D — usable cards, and cards in status G
  • E — closed cards other than G
  • F — cards that may be reissued
tenantId
​string · maxLength: 30 · optional

Which tenant's records to read. Omitting it reads the rows that belong to no tenant rather than all of them.

isCorporateAllCardList
​boolean · optional

Whether to return every card of the corporate relationship rather than the customer's own.

branchCode
​integer · int32 · optional

The branch the card is opened at, as a number. Held as a number rather than text throughout.

customerNameSurname
​string · optional

Meant to match part of the cardholder's name.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

identificationNumber
​string · optional

Meant to match the customer's tax or national identity number.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

courierStatus
​string · optional

Meant to narrow the list to cards whose consignment is at this courier status.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

getCardList › Responses

Success.

No field of this request is mandatory and none is validated. The operation is a search: it builds a query from whatever filters are supplied, and a request that supplies none asks for everything the channel may see.

A search that matches nothing is a 200 with an empty list, not a refusal. The facade returns as soon as the card query comes back empty, so there is no business code for "no cards found" and a client must test the list rather than branch on an error.

The answer is assembled from the debit lifecycle and pin services, the CIS online customer service and the facade's own store, so a field being empty can mean the card has no such value or that the source holding it returned nothing. The linked accounts are the clearest case: a card with none and a card whose account lookup came back empty read the same.

GetCardListResponse
​array · optional

The cards the search matched.

POST/IntegrationDigitalChannelDebit/debit/api/getCardList
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/getCardList \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channelCode": "channelCode", "customerNumber": 0, "mainCustomerNumber": 0, "shadowCardNumber": "shadowCardNumber", "barcode": "barcode", "accountNumber": 0, "cardNumber": "cardNumber", "purpose": "purpose", "tenantId": "tenantId", "isCorporateAllCardList": true, "branchCode": 0, "customerNameSurname": "customerNameSurname", "identificationNumber": "identificationNumber", "courierStatus": "courierStatus" }'
Example Request Body
{ "channelCode": "channelCode", "customerNumber": 0, "mainCustomerNumber": 0, "shadowCardNumber": "shadowCardNumber", "barcode": "barcode", "accountNumber": 0, "cardNumber": "cardNumber", "purpose": "purpose", "tenantId": "tenantId", "isCorporateAllCardList": true, "branchCode": 0, "customerNameSurname": "customerNameSurname", "identificationNumber": "identificationNumber", "courierStatus": "courierStatus" }
json
application/json
Example Responses
{ "listOfCard": [ { "shadowCardNumber": "shadowCardNumber", "maskedCardNumber": "maskedCardNumber", "cardRefNumber": "cardRefNumber", "mainCardRefNumber": "mainCardRefNumber", "customerNumber": 0, "mainCustomerNumber": 0, "relatedCardRefNumber": "relatedCardRefNumber", "supplementaryCardFlag": true, "cardRefCurrentCardFlag": true, "branchCode": 0, "branchName": "branchName", "ownerName": "ownerName", "ownerSecondName": "ownerSecondName", "ownerSurname": "ownerSurname", "embossName": "embossName", "productNumber": "productNumber", "productSegmentCode": "productSegmentCode", "cardStatusCode": "cardStatusCode", "cardStatusDscr": "cardStatusDscr", "cardStatusReasonCode": "cardStatusReasonCode", "cardStatusReasonDscr": "cardStatusReasonDscr", "virtualFlag": true, "digitalCardFlag": true, "productName": "productName", "productShortName": "productShortName", "tenantId": "tenantId", "emvFlag": true, "magneticStripeFlag": true, "contactlessFlag": true, "rewardEarningFlag": true, "cardBrand": "cardBrand", "cardBrandDescription": "cardBrandDescription", "cardDeliveryType": "cardDeliveryType", "expiryDateStr": "expiryDateStr", "provisionStatusFlag": true, "cardFormType": "cardFormType", "insertDate": "2026-10-16T14:30:00Z", "cvv2RetryCount": 0, "pinRetryCount": 0, "barcode": "barcode", "fromShadowCardNumber": "fromShadowCardNumber", "toShadowCardNumber": "toShadowCardNumber", "requestDate": "2026-10-16T14:30:00Z", "requestChannel": "requestChannel", "embossReasonCode": "embossReasonCode", "embossReasonDescription": "embossReasonDescription", "embossReasonSubCode": "embossReasonSubCode", "embossReasonSubDesc": "embossReasonSubDesc", "cardStatusChangeDate": "2026-10-16T14:30:00Z", "firstTrnDate": "2026-10-16T14:30:00Z", "lastTrnDate": "2026-10-16T14:30:00Z", "firstPinSetDate": "2026-10-16T14:30:00Z", "lastPinSetDate": "2026-10-16T14:30:00Z", "lastPinChangeDate": "2026-10-16T14:30:00Z", "deliveryAddress": "deliveryAddress", "isFirstPinSet": "isFirstPinSet", "sendingBranchCode": "sendingBranchCode", "sendingAddressType": "sendingAddressType", "productGroupCode": "productGroupCode", "productGroupDescription": "productGroupDescription", "fromMaskedCardNumber": "fromMaskedCardNumber", "toMaskedCardNumber": "toMaskedCardNumber", "disabledFlag": true, "cardAccountInfoList": [ { "accountNumber": 0, "cardAccountType": "cardAccountType", "accountType": "accountType", "accountSubType": "accountSubType", "accountBranchId": 0, "accountOrderFlag": true, "fecCode": 0, "currencyCode": "currencyCode", "balance": 0, "usableBalance": 0, "iBAN": "iBAN", "errorDescription": "errorDescription" } ], "sensitiveData": { "pan": "pan", "cvv2": "cvv2" }, "pendingReplaceApplicationExists": true, "pinStatus": "pinStatus", "cardStatusChangeChannel": "cardStatusChangeChannel", "securityFlag": true, "citizenshipNumber": "citizenshipNumber", "taxNumber": "taxNumber", "customerNameSurname": "customerNameSurname", "cardSeqNumber": 0, "isDelivered": true } ] }
json
application/json

getCardListNew

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/getCardListNew

Retrieves the list of debit cards based on multiple filters such as ShadowCardNumber, CustomerNumber, MainCustomerNumber, Barcode, AccountNumber, BranchCode, CustomerNameSurname, IdentificationNumber, and CourierStatus. Supports corporate cards, active cards, and digital card flags. Returns a list of DebitCardModel including card details, sensitive data when applicable, account information via ListCardAccountByShadowCardNumber, card status logs, delivery information, and PIN setup status. Uses _dcidRepository.GetSearchByCustomernumberCardnumber for searching, _dbtServiceProxy for account and permission operations, _customerServiceProxy for card and PAN retrieval, and GetSensitiveData for retrieving sensitive card data such as CVV2.

getCardListNew › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

getCardListNew › Request Body

GetCardListRequest
channelCode
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

customerNumber
​integer · int64 · optional

The customer at the bank's core banking system, as a number. The platform stores it rather than issuing it, so it comes from the core.

mainCustomerNumber
​integer · int64 · optional

The main customer of a corporate relationship, as a number. The employees and supplementary holders under it carry their own customerNumber.

shadowCardNumber
​string · maxLength: 19 · optional

The platform's own handle for a card, and the identifier most operations take. It is returned by every operation that creates a card and by the card listings; a caller does not compose one.

barcode
​string · maxLength: 13 · optional

The delivery barcode the consignment is tracked by.

accountNumber
​integer · int64 · optional

The account at the bank's core banking system that the card draws on. It must already exist, belong to the card's customer, and be neither shared nor a foreign-currency account.

cardNumber
​string · minLength: 12 · maxLength: 19 · optional

The card number, which this API neither stores nor searches on. The facade resolves it through the customer service and searches on the shadowCardNumber that comes back.

purpose
​string · maxLength: 1 · optional

Narrows the list by what the cards are wanted for. One letter, compared in the query itself; anything that is not one of the five below filters nothing rather than being refused.

  • B — cards in a valid status
  • C — open cards, status A
  • D — usable cards, and cards in status G
  • E — closed cards other than G
  • F — cards that may be reissued
tenantId
​string · maxLength: 30 · optional

Which tenant's records to read. Omitting it reads the rows that belong to no tenant rather than all of them.

isCorporateAllCardList
​boolean · optional

Whether to return every card of the corporate relationship rather than the customer's own.

branchCode
​integer · int32 · optional

The branch the card is opened at, as a number. Held as a number rather than text throughout.

customerNameSurname
​string · optional

Meant to match part of the cardholder's name.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

identificationNumber
​string · optional

Meant to match the customer's tax or national identity number.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

courierStatus
​string · optional

Meant to narrow the list to cards whose consignment is at this courier status.

Not read on this API. The debit card-list query declares the parameter and then has no block that uses it, so CheckAndChangeDynamicParameter strips it before the statement runs. Credit and prepaid filter on it; here it is accepted and ignored.

getCardListNew › Responses

Success

GetCardListResponse
​array · optional

The cards the search matched.

POST/IntegrationDigitalChannelDebit/debit/api/getCardListNew
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/getCardListNew \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channelCode": "channelCode", "customerNumber": 0, "mainCustomerNumber": 0, "shadowCardNumber": "shadowCardNumber", "barcode": "barcode", "accountNumber": 0, "cardNumber": "cardNumber", "purpose": "purpose", "tenantId": "tenantId", "isCorporateAllCardList": true, "branchCode": 0, "customerNameSurname": "customerNameSurname", "identificationNumber": "identificationNumber", "courierStatus": "courierStatus" }'
Example Request Body
{ "channelCode": "channelCode", "customerNumber": 0, "mainCustomerNumber": 0, "shadowCardNumber": "shadowCardNumber", "barcode": "barcode", "accountNumber": 0, "cardNumber": "cardNumber", "purpose": "purpose", "tenantId": "tenantId", "isCorporateAllCardList": true, "branchCode": 0, "customerNameSurname": "customerNameSurname", "identificationNumber": "identificationNumber", "courierStatus": "courierStatus" }
json
application/json
Example Responses
{ "listOfCard": [ { "shadowCardNumber": "shadowCardNumber", "maskedCardNumber": "maskedCardNumber", "cardRefNumber": "cardRefNumber", "mainCardRefNumber": "mainCardRefNumber", "customerNumber": 0, "mainCustomerNumber": 0, "relatedCardRefNumber": "relatedCardRefNumber", "supplementaryCardFlag": true, "cardRefCurrentCardFlag": true, "branchCode": 0, "branchName": "branchName", "ownerName": "ownerName", "ownerSecondName": "ownerSecondName", "ownerSurname": "ownerSurname", "embossName": "embossName", "productNumber": "productNumber", "productSegmentCode": "productSegmentCode", "cardStatusCode": "cardStatusCode", "cardStatusDscr": "cardStatusDscr", "cardStatusReasonCode": "cardStatusReasonCode", "cardStatusReasonDscr": "cardStatusReasonDscr", "virtualFlag": true, "digitalCardFlag": true, "productName": "productName", "productShortName": "productShortName", "tenantId": "tenantId", "emvFlag": true, "magneticStripeFlag": true, "contactlessFlag": true, "rewardEarningFlag": true, "cardBrand": "cardBrand", "cardBrandDescription": "cardBrandDescription", "cardDeliveryType": "cardDeliveryType", "expiryDateStr": "expiryDateStr", "provisionStatusFlag": true, "cardFormType": "cardFormType", "insertDate": "2026-10-16T14:30:00Z", "cvv2RetryCount": 0, "pinRetryCount": 0, "barcode": "barcode", "fromShadowCardNumber": "fromShadowCardNumber", "toShadowCardNumber": "toShadowCardNumber", "requestDate": "2026-10-16T14:30:00Z", "requestChannel": "requestChannel", "embossReasonCode": "embossReasonCode", "embossReasonDescription": "embossReasonDescription", "embossReasonSubCode": "embossReasonSubCode", "embossReasonSubDesc": "embossReasonSubDesc", "cardStatusChangeDate": "2026-10-16T14:30:00Z", "firstTrnDate": "2026-10-16T14:30:00Z", "lastTrnDate": "2026-10-16T14:30:00Z", "firstPinSetDate": "2026-10-16T14:30:00Z", "lastPinSetDate": "2026-10-16T14:30:00Z", "lastPinChangeDate": "2026-10-16T14:30:00Z", "deliveryAddress": "deliveryAddress", "isFirstPinSet": "isFirstPinSet", "sendingBranchCode": "sendingBranchCode", "sendingAddressType": "sendingAddressType", "productGroupCode": "productGroupCode", "productGroupDescription": "productGroupDescription", "fromMaskedCardNumber": "fromMaskedCardNumber", "toMaskedCardNumber": "toMaskedCardNumber", "disabledFlag": true, "cardAccountInfoList": [ { "accountNumber": 0, "cardAccountType": "cardAccountType", "accountType": "accountType", "accountSubType": "accountSubType", "accountBranchId": 0, "accountOrderFlag": true, "fecCode": 0, "currencyCode": "currencyCode", "balance": 0, "usableBalance": 0, "iBAN": "iBAN", "errorDescription": "errorDescription" } ], "sensitiveData": { "pan": "pan", "cvv2": "cvv2" }, "pendingReplaceApplicationExists": true, "pinStatus": "pinStatus", "cardStatusChangeChannel": "cardStatusChangeChannel", "securityFlag": true, "citizenshipNumber": "citizenshipNumber", "taxNumber": "taxNumber", "customerNameSurname": "customerNameSurname", "cardSeqNumber": 0, "isDelivered": true } ] }
json
application/json

getCardInfo

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/getCardInfo

Retrieves detailed information for a debit card using either the CardNumber (PAN) or ShadowCardNumber. Includes card metadata (status, branch, product, owner, expiry, virtual/digital flags, embossing info, sensitive data) and the list of attached accounts with account balances, usable balances, IBAN, currency, account type/subtype, and error info if fetching fails.
Uses _customerServiceProxy to map PAN to ShadowCardNumber, _dcidRepository for card search, and _coreBankingIntegrationOutdoor for account info.

getCardInfo › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

getCardInfo › Request Body

GetCardInfoRequest
shadowCardNumber
​string · maxLength: 19 · optional

One-of — The card to read. Send this or cardNumber; sending neither is refused.

cardNumber
​string · minLength: 12 · maxLength: 19 · optional

One-of — The card's PAN. Resolved to a shadow card number first, and refused if it matches none. When both are sent this one is used.

getCardInfo › Responses

Success.

cardInfo can come back empty with a 200: the card is looked up, and if what comes back is not the shadowCardNumber that was asked for, the response is returned unfilled rather than refused.

GetCardInfoResponse
​object · optional

The card the operation is answering about.

POST/IntegrationDigitalChannelDebit/debit/api/getCardInfo
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/getCardInfo \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "shadowCardNumber": "shadowCardNumber", "cardNumber": "cardNumber" }'
Example Request Body
{ "shadowCardNumber": "shadowCardNumber", "cardNumber": "cardNumber" }
json
application/json
Example Responses
{ "cardInfo": { "shadowCardNumber": "shadowCardNumber", "maskedCardNumber": "maskedCardNumber", "cardRefNumber": "cardRefNumber", "mainCardRefNumber": "mainCardRefNumber", "customerNumber": 0, "mainCustomerNumber": 0, "relatedCardRefNumber": "relatedCardRefNumber", "supplementaryCardFlag": true, "cardRefCurrentCardFlag": true, "branchCode": 0, "branchName": "branchName", "ownerName": "ownerName", "ownerSecondName": "ownerSecondName", "ownerSurname": "ownerSurname", "embossName": "embossName", "productNumber": "productNumber", "productSegmentCode": "productSegmentCode", "cardStatusCode": "cardStatusCode", "cardStatusDscr": "cardStatusDscr", "cardStatusReasonCode": "cardStatusReasonCode", "cardStatusReasonDscr": "cardStatusReasonDscr", "virtualFlag": true, "digitalCardFlag": true, "productName": "productName", "productShortName": "productShortName", "tenantId": "tenantId", "emvFlag": true, "magneticStripeFlag": true, "contactlessFlag": true, "rewardEarningFlag": true, "cardBrand": "cardBrand", "cardBrandDescription": "cardBrandDescription", "cardDeliveryType": "cardDeliveryType", "expiryDateStr": "expiryDateStr", "provisionStatusFlag": true, "cardFormType": "cardFormType", "insertDate": "2026-10-16T14:30:00Z", "cvv2RetryCount": 0, "pinRetryCount": 0, "barcode": "barcode", "fromShadowCardNumber": "fromShadowCardNumber", "toShadowCardNumber": "toShadowCardNumber", "requestDate": "2026-10-16T14:30:00Z", "requestChannel": "requestChannel", "embossReasonCode": "embossReasonCode", "embossReasonDescription": "embossReasonDescription", "embossReasonSubCode": "embossReasonSubCode", "embossReasonSubDesc": "embossReasonSubDesc", "cardStatusChangeDate": "2026-10-16T14:30:00Z", "firstTrnDate": "2026-10-16T14:30:00Z", "lastTrnDate": "2026-10-16T14:30:00Z", "firstPinSetDate": "2026-10-16T14:30:00Z", "lastPinSetDate": "2026-10-16T14:30:00Z", "lastPinChangeDate": "2026-10-16T14:30:00Z", "deliveryAddress": "deliveryAddress", "isFirstPinSet": "isFirstPinSet", "sendingBranchCode": "sendingBranchCode", "sendingAddressType": "sendingAddressType", "productGroupCode": "productGroupCode", "productGroupDescription": "productGroupDescription", "fromMaskedCardNumber": "fromMaskedCardNumber", "toMaskedCardNumber": "toMaskedCardNumber", "disabledFlag": true, "cardAccountInfoList": [ { "accountNumber": 0, "cardAccountType": "cardAccountType", "accountType": "accountType", "accountSubType": "accountSubType", "accountBranchId": 0, "accountOrderFlag": true, "fecCode": 0, "currencyCode": "currencyCode", "balance": 0, "usableBalance": 0, "iBAN": "iBAN", "errorDescription": "errorDescription" } ], "sensitiveData": { "pan": "pan", "cvv2": "cvv2" }, "pendingReplaceApplicationExists": true, "pinStatus": "pinStatus", "cardStatusChangeChannel": "cardStatusChangeChannel", "securityFlag": true, "citizenshipNumber": "citizenshipNumber", "taxNumber": "taxNumber", "customerNameSurname": "customerNameSurname", "cardSeqNumber": 0, "isDelivered": true } }
json
application/json

replaceCard

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/replaceCard

Replaces an existing card with a new one. Accepts details such as card emboss reason, product number, delivery information, and optional permissions. Returns the new card information, including masked number, shadow card number, and any warnings.

replaceCard › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

replaceCard › Request Body

ReplaceCardRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

shadowCardNumber
​string · maxLength: 19 · required

The card being replaced.

cardEmbossReason
​string · maxLength: 3 · required

Why the card is reissued. Renew is the only value this operation accepts; anything else is refused.

Values:

  • N — new card
  • Y — renewal
cardEmbossSubReason
​string · maxLength: 3 · required

The sub-reason under cardEmbossReason.

Values:

  • BRK — broken card
  • CHF — damaged chip
  • EXP — renewal at maturity
  • FRD — fraud
  • MGF — magnetic stripe error
  • NSU — name update
  • OTH — other
  • EXO — bulk renewal at maturity
  • LST — lost card
  • STL — stolen card

Not set is ---.

embossName
​string · optional

The name printed on the card.

Declared at 26 on the card master and 30 on the customer asset, so no single width is published. nameOnCard, which the services truncate to 26 before writing, is the field to send a name on.

deliveryType
​string · enum · maxLength: 1 · optional

How the card reaches the cardholder. Branch makes deliveryBranchCode mandatory.

Values:

  • P — by post
  • S — to the branch

Not set is "".

deliveryBranchCode
​integer · int32 · optional

Conditional — The branch the card is delivered to. Mandatory when deliveryType is Branch.

deliveryAddressType
​string · enum · maxLength: 2 · optional

The address type the card is sent to.

Values:

  • RA — home
  • AL — business
  • EA — employer
  • OO — alternative
  • WA — previous
  • SW — SWIFT
  • SS — SWIFT name and address
  • MR — Mernis, registered
  • MS — Mernis, stated

Not set is --.

productNumber
​string · maxLength: 5 · optional

Reissue onto a different product. If sent it must be a product the platform defines; the product change scenario must exist too.

cardSendAddressId
​integer · int64 · optional

The stored address the card is sent to.

enrollMasterpass
​boolean · optional

Enrol the new card in Masterpass.

​object · optional

Permissions to carry onto the new card.

replaceCard › Responses

Success

ReplaceCardResponse
newCardGenerated
​boolean · required

Whether the change produced a new card.

productChanged
​boolean · required

Whether the change moved the card to another product.

shadowCardNumber
​string · optional

The platform's own handle for a card, and the identifier most operations take. It is returned by every operation that creates a card and by the card listings; a caller does not compose one.

maskedCardNumber
​string · optional

The card number with its middle digits masked, as the platform stores it. It is a display form, not a key: operations take the shadow number.

cardRefNumber
​string · optional

The card reference, which identifies one issued card including its renewals. Returned by the create and listing operations alongside the shadow number.

​object · optional

What the operation wants to say about work it did anyway. A warning does not mean the operation failed.

POST/IntegrationDigitalChannelDebit/debit/api/replaceCard
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/replaceCard \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channel": "channel", "shadowCardNumber": "shadowCardNumber", "embossName": "embossName", "deliveryType": "deliveryType", "deliveryBranchCode": 0, "deliveryAddressType": "deliveryAddressType", "cardEmbossReason": "cardEmbossReason", "cardEmbossSubReason": "cardEmbossSubReason", "productNumber": "productNumber", "cardSendAddressId": 0, "enrollMasterpass": true, "permissions": { "eCommercePermitted": true, "mailOrderPermitted": true } }'
Example Request Body
{ "channel": "channel", "shadowCardNumber": "shadowCardNumber", "embossName": "embossName", "deliveryType": "deliveryType", "deliveryBranchCode": 0, "deliveryAddressType": "deliveryAddressType", "cardEmbossReason": "cardEmbossReason", "cardEmbossSubReason": "cardEmbossSubReason", "productNumber": "productNumber", "cardSendAddressId": 0, "enrollMasterpass": true, "permissions": { "eCommercePermitted": true, "mailOrderPermitted": true } }
json
application/json
Example Responses
{ "shadowCardNumber": "shadowCardNumber", "newCardGenerated": true, "productChanged": true, "maskedCardNumber": "maskedCardNumber", "cardRefNumber": "cardRefNumber", "warnings": { "key": "string" } }
json
application/json

changeAndReplaceCard

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/changeAndReplaceCard

Changes the status of a debit card and optionally replaces it with a new card, handling embossing, delivery, and permissions. Returns the updated status and replacement card details.

changeAndReplaceCard › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

changeAndReplaceCard › Request Body

ChangeAndReplaceCardRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

shadowCardNumber
​string · maxLength: 19 · required

The card being closed and replaced. One call does both, so this is the card the status change lands on and the card the replacement is issued against.

​object · required

How the replacement card is issued. The object itself is demanded; unlike credit's equivalent, none of its fields is checked here.

cardStatusCode
​string · maxLength: 2 · optional

Values:

  • A — valid
  • B — pending
  • C — stolen
  • D — cancelled by the bank
  • F — fraud
  • G — temporarily blocked
  • I — cancelled
  • L — lost
  • M — cancelled by the customer
  • T — corporate dummy
cardStatusReasonCode
​string · maxLength: 2 · optional

Why the status is being set. The valid reasons depend on the status: getAvailableCardStatusList returns the pairs a card may move to.

closeRequestDate
​string · optional

A date and time as a string, in RFC 3339 form: 2026-10-16T14:30:00Z, or with an offset, 2026-10-16T17:30:00+03:00.

Example: 2026-10-16T14:30:00Z

changeAndReplaceCard › Responses

Success

ChangeAndReplaceCardResponse
toStatusActive
​boolean · required

Whether the card ends this operation in an active status.

​object · optional

What the replacement produced.

POST/IntegrationDigitalChannelDebit/debit/api/changeAndReplaceCard
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/changeAndReplaceCard \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channel": "channel", "shadowCardNumber": "shadowCardNumber", "cardStatusCode": "cardStatusCode", "cardStatusReasonCode": "cardStatusReasonCode", "closeRequestDate": "2026-10-16T14:30:00Z", "replaceInfo": { "deliveryType": "deliveryType", "deliveryAddressType": "deliveryAddressType", "deliveryBranchCode": 0, "embossName": "embossName", "cardEmbossReason": "cardEmbossReason", "cardEmbossSubReason": "cardEmbossSubReason", "productNumber": "productNumber", "permissions": { "eCommercePermitted": true, "mailOrderPermitted": true }, "cardSendAddressId": 0 } }'
Example Request Body
{ "channel": "channel", "shadowCardNumber": "shadowCardNumber", "cardStatusCode": "cardStatusCode", "cardStatusReasonCode": "cardStatusReasonCode", "closeRequestDate": "2026-10-16T14:30:00Z", "replaceInfo": { "deliveryType": "deliveryType", "deliveryAddressType": "deliveryAddressType", "deliveryBranchCode": 0, "embossName": "embossName", "cardEmbossReason": "cardEmbossReason", "cardEmbossSubReason": "cardEmbossSubReason", "productNumber": "productNumber", "permissions": { "eCommercePermitted": true, "mailOrderPermitted": true }, "cardSendAddressId": 0 } }
json
application/json
Example Responses
{ "toStatusActive": true, "replaceResult": { "shadowCardNumber": "shadowCardNumber", "newCardGenerated": true, "productChanged": true, "expiryDate": "2026-10-16T14:30:00Z", "cardRefNumber": "cardRefNumber", "maskedCardNumber": "maskedCardNumber" } }
json
application/json

isCardFoundIn

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/isCardFoundIn

Checks whether a specific card exists in the system. Accepts a CardNumber and returns a flag (IsFound) along with the ServiceDomainId indicating where the card was found.

isCardFoundIn › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

isCardFoundIn › Request Body

IsCardFoundInRipperRequest
cardNumber
​string · optional

Resolved rather than stored: the facade calls the customer service's getCardByCardNumber with it, takes the shadowCardNumber that comes back and searches on that instead. These services keep no card number column, so the format this has to be in is the customer service's.

isCardFoundIn › Responses

Success

IsCardFoundInRipperResponse
isFound
​boolean · required
serviceDomainId
​string · optional
POST/IntegrationDigitalChannelDebit/debit/api/isCardFoundIn
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/isCardFoundIn \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "cardNumber": "cardNumber" }'
Example Request Body
{ "cardNumber": "cardNumber" }
json
application/json
Example Responses
{ "isFound": true, "serviceDomainId": "serviceDomainId" }
json
application/json

addDebitCardLog

POST
https://sandboxpub.cms.dgpays.com/SandBox
/IntegrationDigitalChannelDebit/debit/api/addDebitCardLog

Adds a log entry for a debit card including details like old and new values, card reference, masked number, and validity flag.

addDebitCardLog › Headers

evrst-ptrnid
​string

Correlation id for this request. Echo it in your own logs to trace the call through the platform.

Default: x_request_id

addDebitCardLog › Request Body

AddDebitCardLogRequest
channel
​string · maxLength: 3 · required

Three-digit code identifying the channel on behalf of which the request is made (e.g. 002 for Internet). Mandatory in every request. Used for entitlement checks, limit enforcement and audit logging. Channel codes are managed through configuration parameters and may change over time. Refer to the Channels page for the current list of valid codes.

logCode
​string · maxLength: 10 · required

Which kind of log entry is written. The only other field the service demands — the card identifiers are read but not checked, so naming a card that does not exist is a business failure rather than a field one.

cardLogDetail
​string · maxLength: 500 · optional

The detail recorded against the card log entry.

shadowCardNumber
​string · maxLength: 19 · optional

The platform's own handle for a card, and the identifier most operations take. It is returned by every operation that creates a card and by the card listings; a caller does not compose one.

cardRefNumber
​string · maxLength: 19 · optional

The card reference, which identifies one issued card including its renewals. Returned by the create and listing operations alongside the shadow number.

maskedCardNumber
​string · maxLength: 19 · optional

The card number with its middle digits masked, as the platform stores it. It is a display form, not a key: operations take the shadow number.

customerNumber
​integer · int64 · optional

The customer at the bank's core banking system, as a number. The platform stores it rather than issuing it, so it comes from the core.

validFlag
​boolean · optional

Whether the row is live. The platform sets it; a value sent here is replaced.

oldValue
​string · maxLength: 1024 · optional

The value before the change, as recorded in the log.

newValue
​string · maxLength: 1024 · optional

The value after the change, as recorded in the log.

addDebitCardLog › Responses

Success

AddDebitCardLogResponse
recordId
​integer · int64 · required

The identifier of the row the operation created or acted on. Returned rather than sent in most operations that carry it.

POST/IntegrationDigitalChannelDebit/debit/api/addDebitCardLog
curl https://sandboxpub.cms.dgpays.com/SandBox/IntegrationDigitalChannelDebit/debit/api/addDebitCardLog \ --request POST \ --header 'Content-Type: application/json' \ --header 'evrst-ptrnid: x_request_id' \ --header 'Authorization: Bearer <access_token>' \ --data '{ "channel": "channel", "logCode": "logCode", "cardLogDetail": "cardLogDetail", "shadowCardNumber": "shadowCardNumber", "cardRefNumber": "cardRefNumber", "maskedCardNumber": "maskedCardNumber", "customerNumber": 0, "validFlag": true, "oldValue": "oldValue", "newValue": "newValue" }'
Example Request Body
{ "channel": "channel", "logCode": "logCode", "cardLogDetail": "cardLogDetail", "shadowCardNumber": "shadowCardNumber", "cardRefNumber": "cardRefNumber", "maskedCardNumber": "maskedCardNumber", "customerNumber": 0, "validFlag": true, "oldValue": "oldValue", "newValue": "newValue" }
json
application/json
Example Responses
{ "recordId": 0 }
json
application/json

Card issuance and personalisationNo-name cards