Introduction

The idea of Paygate is to store customer data like credit card data, billing / shipping address in a secure way within Paygate and to re-use these data based on CustomerId.

The Customer Data Storage (CDS) refers to a Scope which can be used to share the same CDS data with multiple of your MerchantIds.

After Customer Data Storage has been activated for your MerchantId within Paygate:

  • initial usage / consumer has no data stored yet
    • you can send CustomerId in Paygate-request
    • the consumer will be asked on Hosted Payment Page / Credit Card Form (PaySSL) whether the payment data should be stored
    • payment request is completed
    • and you will be notified for updates on Customer Data Storage
  • subsequent usage / consumer has already data stored
    • you still send CustomerId in Paygate-request
    • the credit card data will be prefilled on Hosted Payment Page / Credit Card Form (PaySSL) 
    • the consumer needs to add CVC, only as CVC must not be stored at any time
    • payment request is completed

We can setup a notification URL provided by you. For each change of the Customer Data Storage (CDS) Data you will get a notification message containing the CustomerReferenceId. This can then be used to request these data from CDS. 

(info)  Currently storage of credit card data is supported, only. Support for other payment data and other consumer data may be added in a later stage.


Sequence Diagram

The Customer Data Storage is addressed via CustomerId and is embedded into Paygate payment processing. 




Paygate interface

Definitions

Data formats

Format

Description

a

alphabetical

as

alphabetical with special characters

n

numeric

an

alphanumeric

ans

alphanumeric with special characters

ns

numeric with special characters

bool

boolean expression (true or false)

3

fixed length with 3 digits/characters

..3

variable length with maximum 3 digits/characters

enum

enumeration of allowed values

dttm

ISODateTime (YYYY-MM-DDThh:mm:ss)


Abbreviations

Abbreviation

Description

Comment

CND

condition


M

mandatory

If a parameter is mandatory, then it must be present

O

optional

If a parameter is optional, then it can be present, but it is not required

C

conditional

If a parameter is conditional, then there is a conditional rule which specifies whether it is mandatory or optional


Notice: Please note that the names of parameters can be returned in upper or lower case.


Notifications on Customer Data Storage updates

With activation of Customer Data Storage (CDS) by Computop Helpdesk you will need to provide an URL to receive notifications for CDS updates. The data will be sent as POST-request and data are part of request-body.

Notifications for CDS-updates are not encrypted, because they do not contain sensitive data.

(info) pls. be prepared to receive additional parameters at any time and do not check the order of parameters

(info) the key (e.g. MerchantId, RefNr) should not be checked case-sentive

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

 

Key

Format

CND

Description

Beschreibung

CustomerReferenceId

an..32

M

Unique ID assigned by Paygate for the customer data

Vom Paygate vergebene eindeutige ID für die Kundendaten

TypeenumM

Type of data referenced in Customer Data Storage (CDS)

TypeDescription
CreditCard Credit card data are referenced

Art der im Customer Data Storage (CDS) referenzierten Daten

TypBeschreibung
CreditCard Kreditkartendaten sind referenziert
ActionenumM

Action in Customer Data Storage (CDS)

ActionDescription
Create A new Customer Data Storage record has been created
DeleteAn existing Customer Data Storage record has been deleted by consumer via payment form

Aktion im Customer Data Storage (CDS)

AktionBeschreibung
Create Ein neuer Datensatz im Customer Data Storage wurde angelegt
DeleteEin vorhandener Datensatz im Customer Data Storage wurde vom Kunden über das Zahlungsformular gelöschtrecord has been deleted by consumer via payment form

Customer Data Storage (CDS) inquiries GetDetails

CDS request

CDS inquiries within Paygate return stored CDS data for a given CustomerId or CustomerReferenceId. 

 

Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter.

The following table describes the encrypted payment request parameters:

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

KeyRESTFormatCNDDescriptionBeschreibung

MerchantID

BasicAuth.Username

ans..30

M

MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too.

HändlerID, die von Computop vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.

KeyRESTFormatCNDDescriptionBeschreibung
TransID"transactionId": "..."

ans..64

MTransactionID provided by you which should be unique for each paymentIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss

Key

REST

Format

CND

Description

Beschreibung

EventToken

tbd

enum

M

TypeDescription
GetDetailsReturn CDS details
TypBeschreibung
GetDetailsCDS-Details zurückgeben
CustomerIdtbdan1..64C

Reference Customer Data Storage data by CustomerId

allowed characters: A-Z,a-z,0-9, minus, underscore

(either CustomerId or CustomerReferenceId must be used)

Verweis auf Daten im Customer Data Storage mittels CustomerId

erlaubte Zeichen: A-Z,a-z,0-9, Minus, Unterstrich

(es muss entweder CustomerId oder CustomerReferenceId verwendet werden)

CustomerReferenceIdtbdan32C

Reference Customer Data Storage data by CustomerReferenceId

(either CustomerId or CustomerReferenceId must be used)

Verweis auf Daten im Customer Data Storage mittels CustomerReferenceId

(es muss entweder CustomerId oder CustomerReferenceId verwendet werden)

Parameters for CDS inquiries via socket connections

 

CDS response

The following table describes the result parameters with which the Computop Paygate responds to your system

(info) pls. be prepared to receive additional parameters at any time and do not check the order of parameters

(info) the key (e.g. MerchantId, RefNr) should not be checked case-sentive

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

 

Key

REST

Format

CND

Description

Beschreibung

Status

tbd

a..50

M

OK or FAILED as status of inquiry and not of the requested transaction

OK oder FAILED als Status der Abfrage, nicht der angefragten Transaktion
Codetbdn8M

Error code according to Paygate Response Codes (A4 Error codes).

If CustomerId/CustomerReferenceId is not found Code=23341536 will be returned.

Fehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes).

Falls CustomerId/CustomerReferenceId nicht gefunden wird, wird Code=23341536 zurückgegeben.

CustomerId

tbdan1..64OCustomerId of Customer Data Storage record
 CustomerId im Datensatz des Customer Data Storage

CustomerReferenceId

tbdan32OCustomerReferenceId of Customer Data Storage record CustomerReferenceId im Datensatz des Customer Data Storage

CustomerInfos

tbdJSONOBase64 encoded string containing JSON structure with CDS data
 Base64-codierte Zeichenfolge, die eine JSON-Struktur mit CDS-Daten enthält

Response parameters in the case of CDS inquiries via socket connections


CustomerInfos details (Type: CreditCard), Base64 decoded

{
  "CustomerReferenceId": "5912cfe4abbb453499120bf71f85be6f",
  "CustomerId": "123123",
  "MID": "Your_MerchantId",
  "Scope": "Your_Scope",
  "Created": "2023-12-21T12:10:58.087",
  "Changed": "2023-12-21T12:10:58.087",
  "CustomerDataInfos": [
    {
      "CCNrMasked": "411111xxxxxx1111",
      "Expiry": "202701",
      "Holder": "John Doe",
      "Brand": "VISA",
      "PCNr": "0605262127687111",
      "Type": "CreditCard",
      "CustomerDataId": "9de5132163cf4c838ffd7695e2d6b542",
      "CustomerReferenceId": "5912cfe4abbb453499120bf71f85be6f",
      "Scope": "Your_Scope",
      "Active": true,
      "LastUsed": "2023-12-21T12:10:58.087",
      "Created": "2023-12-21T12:10:58.087",
      "Changed": "2023-12-21T12:10:58.087"
    }
  ]
}

CDS GetDetails request / response, sample

Plain Request Data before encryption:
MerchantId=Your_MerchantId&EventToken=GetDetails&TransId=TST-CDS-82294047&CustomerId=123123

Request with encrypted Len / Data:
customer.aspx?MerchantID=Your_MerchantId&Len=89&Data=fb0f6ee9876fea46a955f793eb3dada7c316aa2a25334716e82c4ca92fe726c818463b88bca2b98b3724e560dcc6bf8528ac66c97ddad557432b9abdd87e598793ed2cd281b3258f4677444a4e0e494e338d3f281f82c0b4a71746e79f191e36

Response with plain data:
Status=OK&Code=00000000&CustomerId=123123&CustomerReferenceId=5912cfe4abbb453499120bf71f85be6f&CustomerInfos=eyJDdXN0b21lclJlZmVyZW5jZUlkIjoiNTkxMmNmZTRhYmJiNDUzNDk5MTIwYmY3MWY4NWJlNmYiLCJDdXN0b21lcklkIjoiMTIzMTIzIiwiTUlEIjoiamtpbGxtZXJfdGVzdCIsIlNjb3BlIjoiamtpbGxtZXJfdGVzdCIsIkNyZWF0ZWQiOiIyMDIzLTEyLTIxVDEyOjEwOjU4LjA4NyIsIkNoYW5nZWQiOiIyMDIzLTEyLTIxVDEyOjEwOjU4LjA4NyIsIkN1c3RvbWVyRGF0YUluZm9zIjpbeyJDQ05yTWFza2VkIjoiNDExMTExeHh4eHh4MTExMSIsIkV4cGlyeSI6IjIwMjQwMSIsIkhvbGRlciI6ImFzIGRhc2QiLCJCcmFuZCI6IlZJU0EiLCJQQ05yIjoiMDYwNTI2MjEyNzY4NzExMSIsIlR5cGUiOiJDcmVkaXRDYXJkIiwiQ3VzdG9tZXJEYXRhSWQiOiI5ZGU1MTMyMTYzY2Y0YzgzOGZmZDc2OTVlMmQ2YjU0MiIsIkN1c3RvbWVyUmVmZXJlbmNlSWQiOiI1OTEyY2ZlNGFiYmI0NTM0OTkxMjBiZjcxZjg1YmU2ZiIsIlNjb3BlIjoiamtpbGxtZXJfdGVzdCIsIkFjdGl2ZSI6dHJ1ZSwiTGFzdFVzZWQiOiIyMDIzLTEyLTIxVDEyOjEwOjU4LjA4NyIsIkNyZWF0ZWQiOiIyMDIzLTEyLTIxVDEyOjEwOjU4LjA4NyIsIkNoYW5nZWQiOiIyMDIzLTEyLTIxVDEyOjEwOjU4LjA4NyJ9XX0=

CustomerInfos Base64-decoded:
{
  "CustomerReferenceId": "5912cfe4abbb453499120bf71f85be6f",
  "CustomerId": "123123",
  "MID": "Your_MerchantId",
  "Scope": "Your_Scope",
  "Created": "2023-12-21T12:10:58.087",
  "Changed": "2023-12-21T12:10:58.087",
  "CustomerDataInfos": [
    {
      "CCNrMasked": "411111xxxxxx1111",
      "Expiry": "202701",
      "Holder": "John Doe",
      "Brand": "VISA",
      "PCNr": "0605262127687111",
      "Type": "CreditCard",
      "CustomerDataId": "9de5132163cf4c838ffd7695e2d6b542",
      "CustomerReferenceId": "5912cfe4abbb453499120bf71f85be6f",
      "Scope": "Your_Scope",
      "Active": true,
      "LastUsed": "2023-12-21T12:10:58.087",
      "Created": "2023-12-21T12:10:58.087",
      "Changed": "2023-12-21T12:10:58.087"
    }
  ]
}


Customer Data Storage (CDS) inquiries Delete

CDS request

CDS inquiries within Paygate can delete stored CDS data for a given CustomerId or CustomerReferenceId. 

 

Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter.

The following table describes the encrypted payment request parameters:

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

KeyRESTFormatCNDDescriptionBeschreibung

MerchantID

BasicAuth.Username

ans..30

M

MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too.

HändlerID, die von Computop vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.

KeyRESTFormatCNDDescriptionBeschreibung
TransID"transactionId": "..."

ans..64

MTransactionID provided by you which should be unique for each paymentIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss

Key

REST

Format

CND

Description

Beschreibung

EventToken

tbd

enum

M

TypeDescription

Delete

Delete CDS details
TypBeschreibung

Delete

CDS-Details löschen

Type

tbd

enum

M

TypeDescription

CreditCard

Delete CreditCard details
TypBeschreibung

CreditCard

Kreditkarten-Details löschen
CustomerIdtbdan1..64C

Reference Customer Data Storage data by CustomerId

allowed characters: A-Z,a-z,0-9, minus, underscore

(either CustomerId or CustomerReferenceId must be used)

Verweis auf Daten im Customer Data Storage mittels CustomerId

erlaubte Zeichen: A-Z,a-z,0-9, Minus, Unterstrich

(es muss entweder CustomerId oder CustomerReferenceId verwendet werden)

CustomerReferenceIdtbdan32C

Reference Customer Data Storage data by CustomerReferenceId

(either CustomerId or CustomerReferenceId must be used)

Verweis auf Daten im Customer Data Storage mittels CustomerReferenceId

(es muss entweder CustomerId oder CustomerReferenceId verwendet werden)

Parameters for CDS inquiries via socket connections

 

CDS response

The following table describes the result parameters with which the Computop Paygate responds to your system

(info) pls. be prepared to receive additional parameters at any time and do not check the order of parameters

(info) the key (e.g. MerchantId, RefNr) should not be checked case-sentive

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

 

Key

REST

Format

CND

Description

Beschreibung

Type

tbd

enum

M

TypeDescription

CreditCard

Delete CreditCard details
TypBeschreibung

CreditCard

Kreditkarten-Details löschen

Status

tbd

a..50

M

OK or FAILED as status of inquiry and not of the requested transaction

OK oder FAILED als Status der Abfrage, nicht der angefragten Transaktion
Codetbdn8M

Error code according to Paygate Response Codes (A4 Error codes).

If CustomerId/CustomerReferenceId is not found Code=23341536 will be returned.

Fehlercode gemäß Paygate Antwort-Codes (A4 Fehlercodes).

Falls CustomerId/CustomerReferenceId nicht gefunden wird, wird Code=23341536 zurückgegeben.

CustomerId

tbdan 1..64OCustomerId of Customer Data Storage record
CustomerId im Datensatz des Customer Data Storage

CustomerReferenceId

tbdan32OCustomerReferenceId of Customer Data Storage recordCustomerReferenceId im Datensatz des Customer Data Storage

Response parameters in the case of CDS inquiries via socket connections


CDS Delete request / response, sample

Plain Request Data before encryption:
MerchantId=Your_MerchantId&EventToken=Delete&Type=CreditCard&TransId=TST-CDS-82294047&CustomerId=123123

Request with encrypted Len / Data:
customer.aspx?MerchantID=Your_MerchantId&Len=105&Data=fb0f6ee9876fea46a955f793eb3dada7c316aa2a25334716a536631bea13cce510fb7a1a56e24d876e714ba96978f97319132f7e74107871feb6cda906601cde234084083f75eb4b4fd521f3596430cb5c627b4874101ecabfde860934bbd5da62fc286af93b1c65248

Response with plain data:
CustomerId=123456xxxx&Type=CreditCard&Code=00000000&Description=Deleted&Status=OK




Supported templates

Currently these templates are supporting

  • storing credit card data in Customer Data Storage if no data are stored for the specific CustomerId yet
  • prefilling 

Template names:

  • ct_responsive
  • ct_cards_v1

Samples

Customer enters credit card data initially

  • Customer enters credit card data initially
  • and agrees to store these data for future purchases