Monitoring and performing payments

Overview

Dashboard interface allows you to monitor payment processing, perform payment link purchases and use virtual POS-terminal (to take MO/TO payments), manage authorisation holds on funds as part of executing two-step purchases, issue refunds and payouts in the following sections:

  • Payments—a section for monitoring information on all payment types and performing certain operations, which includes initiating capture and cancel operations within a two-step purchase, refunding purchases of any type, and issuing payouts.
  • Payment links—a section for performing payment link purchases.
  • Manual payments—a section for performing single MO/TO payments and payouts as well as sending batch requests to capture held funds or cancel authorisation holds and issuing mass refunds and payouts.

In both Payments and Manual payments sections, payment processing can be monitored in the corresponding consolidated register, with the possibility to filter data. In each register, users can also view detailed payment information about individual payments. Detailed payment information is shown in separate tabs, which allows users to switch between the register and the tabs more efficiently.

Figure: Payments list in the Payments section



When performing payment operations in the Dashboard interface, you can initiate a:

  • single operation when parameters are specified directly in the Dashboard interface and one request is sent to execute one operation.
  • mass operation when parameters are uploaded in a file of the specified format following which a batch request is sent to execute multiple operations.

Access to the Payments, Payment links, and Manual Payments sections and their specific features is granted through a relevant set of permissions. Therefore, if any of the features described below is not available to a certain user, you need to verify whether the user account in question has the appropriate set of permissions. Moreover, in order to perform MO/TO payments and payouts, users are required to have two-factor authentication enabled when accessing Dashboard. Payouts may also need to enter verification codes sent by text (SMS) to confirm executing the operations. To learn more, see How to access.

The guidelines on how to monitor payment processing, initiate payments, and work with batch requests are provided below.

Monitoring payment processing

Sections Payments, Payment links, and Manual payments allow Dashboard users to monitor information about amounts, statuses, or other attributes of the processed payments. It can be done in the lists with the use of standard filtering tools (learn more) and in the payment information tabs (available in the Payments and Manual payments sections) that specify details of individual payments and all operations initiated within them (to open the payment information tab, click the row of the payment you need in the list).

Figure: Payment information tab

To monitor information about specific payments:

  1. Select the section you need: Payments, Payment links, or Manual payments.
  2. Find rows with the information about specific payments in the list. Use filters, if necessary.
  3. Verify the information you need, either in the list or in the payment information tabs, if they are available.

However, when you work with lists, keep in mind the following:

  • Information in lists and payment information tabs is shown with a time lag which can take up to several minutes. In addition, automatic data refresh is not supported.
  • The number and the order of columns in the lists can be customised, which means that with the appropriate set of permissions the lists can be arranged according to individual needs.
  • Key attributes of payments, which include identifier, type, status, amount, and currency, are by default shown in the first columns of the lists. They are used for filtering data with predefined filters on the filtering panel. It depends on the list which attributes and filters are available for filtering data.
  • The Amount field shows the payment's base amount to which the status of the said payment currently applies.

    For example, if a partial refund for 20 EUR was issued for the payment of 100 EUR, then the status partially refunded applies to the amount of 100 EUR, while the refund amount and the remaining amount are shown in the Refunded and Available for refund fields.

    Another example is a scheduled COF purchase. For this payment type, the Amount field shows the actual amount of the received funds.

If you have any questions about working with lists, contact your account manager.

Performing purchases

Overview

Dashboard allows users to:

  • Create, send, and deactivate payment links. General description of the payment link purchase workflow can be found in the corresponding section.
  • Take MO/TO (Mail Order / Telephone Order) payments using a virtual payment form with the customer providing payment card details over the phone, by email, or other means of communication. Learn more about MO/TO payments in the corresponding section.
  • Manage authorisation holds as part of executing two-step purchases. Held funds can be captured or released with the use of individual and batch requests. Learn more about performing two-step purchases in the corresponding section.

Requirements

To perform purchases by using Dashboard, the following requirements must be met:

  • Two-factor authentication is required for accessing Dashboard in order to take MO/TO payments.
  • The user account must be granted the appropriate permissions. Each action, including capturing held funds and releasing authorisation holds, requires a specific permission.
  • Required actions are supported for the selected project and the payment method.

If any issues regarding access rights occur, they can be solved with the merchant's specialists.

Payment link purchases

To perform a payment link purchase:

  1. Open the tab to create a new payment link.

    To achieve this, go to Payment links and click New payment link on the left of the filtering panel.

  2. Specify purchase parameters and create the link.

    To achieve this, fill in the fields and click Create payment link.

    When filling in the fields, keep in mind that:

    • The amount is entered as a decimal number with a point to separate fractional part (for example, 314.15).
    • Payment method selection is not available until the payment ID and the project have been specified.
    • If the toggle switch Send to email is on, then the payment link is sent to the customer's email address automatically; if the toggle switch is off, make sure you send the payment link to the customer.
    • If the fields are filled incorrectly, the error messages are shown.
    • The Create payment link button is enabled when all required parameters have been specified correctly (payment description and the customer's email are not required, but it is recommended to provide them to minimize risks during payment processing).
  3. If necessary, send the payment link to the customer.

    This may be needed if, for example, auto-sending was not turned on when you were completing the new payment link form. In this case, to send the link, find the payment you need in the payment link purchases list, copy the link using button, and send it to the customer.

  4. Make sure that the purchase has been processed.

    You can do this by checking the status of the purchase in the payments list or in the payment link purchases list—it should state success. The comprehensive list of possible statuses for this payment type and their descriptions can be found in the section about the payment link purchase model.

If you need to deactivate the payment link (before the customer makes the payment), turn on the toggle switch Link deactivation in the corresponding row of the list in the Payment links section. The link will no longer be valid, even if the link was already sent to the customer, and the customer will not be able to use it for making the payment.

MO/TO payments

To take a MO/TO payment:

  1. Go to the MO/TO (vPOS terminal) tab.

    To achieve this, go to Manual payments, click Request on the left of the filtering panel and switch to the MO/TO (vPOS terminal) tab.

  2. Specify payment parameters and send the request to open the payment form by filling in the fields and clicking Pay.

    When filling in the fields, keep in mind that:

    • The payment ID must be unique for the specified project.
    • The amount is entered as a decimal number with a point to separate fractional part (for example, 314.15).
    • The Pay button is enabled when all required parameters have been specified.
  3. Specify the required data and confirm the payment by filling in the fields in the payment form that opened and click the Pay button.

    (In the field Country, enter the country code in accordance with ISO 3166-1 alpha-2. The list of country codes can be found Country codes).

  4. Make sure that the payment has been processed.

    You can do this by checking the status of this payment in the payments list—it should state success.

    If the payment has been declined, its status switches to decline. The decline can happen due to a variety of reasons. For example, it can be caused by providing incorrect card details, in which case you should initiate another payment with a new payment ID while making sure that the card details are specified correctly.

Single capture and cancel operations

To initiate debiting of the authorised amount (cancel authorisation hold) as part of executing an individual two-step purchase:

  1. If necessary, locate the purchase that requires debiting (release) of the authorised amount.

    You can use the Search function (search by payment ID, for example) or go to the Payments section and apply necessary filters in the lists (for example, filter by operation type—auth, or its status—awaiting capture).

  2. Open the payment information tab for the target purchase.

    Click the corresponding row in the list of the Payments section.

  3. Send a capture (cancel) request.

    To achieve this:

    1. Click the Capture button located on the payment information panel to initiate the debiting of the authorised amount (click the Cancel button located on the payment information panel to release the authorisation hold).
    2. In the window that opens, specify the required amount, which can be the entire authorised amount or its part.

      When changing the authorised amount, keep in mind that this capability is not universally supported (due to regional specifics or other reasons) and that certain restrictions are imposed by payment systems (to learn more, see Request for partial debit or release of authorised amount).

    3. Confirm your request by clicking Capture (Cancel).
      Note: If buttons Capture and Cancel remain inactive, it may mean that one of these operations is already being processed. If these buttons are absent, it may mean that performing such operations is not allowed for the payment with the given status.
  4. Make sure that the capture (cancel) operation has been processed.

    You can do this by checking the status of this operation in the tab with the detailed information about the target purchase. You can also check the status of this purchase in the payments list. The status of the operation (capture or cancel) should state success, while the status of the purchase should state success if the held funds were captured and cancelled—if the hold on funds was released.

    If the operation request has been declined, its status switches to decline while the payment status remains awaiting capture.

If the operation request has been declined, its status switches to decline while the payment status remains awaiting capture.

Mass capture and cancel operations

To perform capture or cancel operations using a batch request:

  1. Create and prepare the file with the capture (cancel) operations data in the specified format.

    You can find the file requirements with the template and a file sample below.

    Restriction: When preparing the file, keep in mind that it must contain operations of only one type—either capture or cancel, while both the entire authorised amounts and the partial amounts can be specified as the amounts to capture (cancel). It is important to remember that changing the authorised amount is not universally supported (due to regional specifics or other reasons) and that certain restrictions are imposed by payment systems (to learn more, see Request for partial debit or release of authorised amount).
  2. Go to Mass Captures (Mass Cancels).

    To achieve this, go to Manual payments, click Request on the left of the filtering panel and switch to the Mass Captures (Mass Cancels) tab.

  3. Upload the file with the list of operations and check it for data consistency.

    Drag the file or use the Browse button to upload.

    Following the validity check, either the Send request button is enabled, or the error message is shown. In the latter case, you can view the details of the error (using the File preview toggle and then the File details button), correct the error and re-upload the file.

  4. Send the batch request by clicking Send request.
  5. Make sure the requests have been processed.

    You can monitor statuses and indicators of batch processing and statuses of individual operations.

    To monitor the state of batch processing in the list of mass requests, click Mass requests on the filtering panel in the Manual payments section, find the row of the batch you need in the list and check its status and indicator. Keep in mind that the time it takes to process operations and to update their status information can significantly vary depending on the number of operations in the batch. When the batch has been processed, its status should state Done.

    To check the status of individual operations, check the status of the payments that require performing capture or cancel operations in the payments list (they should have the status success when the authorised amount is debited or cancelled when the authorisation hold is released). You can also check the statuses of operations in the corresponding payment information tabs (they should state success or decline depending on the operation result).

Issuing refunds

Requirements

Dashboard interface allows users to issue full or partial refunds with the use of individual and batch requests. In both cases, the following requirements must be met:

  • The user account has been granted the right to issue refunds.
  • The purchase to be refunded has been fully processed.
  • Refunds of the required type are supported for the payment method used to make the purchase.
  • The balance under which an initial payment was performed has enough funds for issuing a refund

If any issues regarding these requirements occur, they can be solved with the specialists in charge of granting access rights and working with balances.

Single refunds

To issue a single refund:

  1. If necessary, locate the purchase that needs to be refunded.

    You can use the Search function or go to the Payments section and apply necessary filters in the lists.

  2. Open the payment information tab for the target purchase.

    Click the corresponding row in the list of the Payments section.

  3. Send a refund request.

    To achieve this:

    1. Click the Refund button located on the payment information panel.
    2. In the window that opens, specify the required refund amount (full available or its part).
    3. Confirm your request by clicking Refund.
    Note: If the Refund button is disabled, it may mean that the payment has not been fully processed yet; if it is absent, it may mean that issuing refunds by using requests is not supported for the selected payment method.
  4. Make sure that the refund has been issued.

    You can do this by checking the status of the operation in the payment information tab (it should state success) or the status of the payment in the Payments list (when the payment is refunded in full, the status is refunded or reversed; when only the part of the payment amount is returned, the status is partially refunded).

If the refund has been declined, the status of the operation switches to decline while the status of the payment remains unchanged. The decline can happen due to a variety of reasons. For example, it can be caused by the lack of funds, in which case you can add funds to the balance and try to issue a refund again.

Mass refunds

To issue multiple refunds using a batch request:

  1. Create and prepare the file with the refund data in the specified format.

    You can find the file requirements with the template and a file sample below.

    Note: When preparing the file, keep in mind that the payment_id field should contain the identifier of the payment to be refunded.
  2. Go to the Mass Refunds tab.

    To achieve this, go to Manual payments, click Request on the left of the filtering panel and switch to the Mass refunds tab.

  3. Upload the file with the list of refunds and check it for data consistency.

    Drag the file or use Browse button to upload.

    Following the validity check, either the Send request button is enabled or the error message is shown. In the latter case, you can view the details of the error (using the File preview toggle and then the File details button), correct the error and re-upload the file.

  4. Send the batch request by clicking Send request.
  5. Make sure the refunds have been processed.

    After the batch request has been sent and you can see the notification that it has been accepted, it is important to check that the refunds have been processed. Look up the batch status in the list of mass requests—the status should state Done (click Mass requests on the filtering panel in the Manual payments section and find the row of the batch you need in the list). You can also monitor status information of individual refunds using the column Indicator. Keep in mind that the time it takes to process refunds and to update their status information can significantly vary depending on the number of refunds in the batch.

    To check the status of individual refunds, check the status of the payments that need to be refunded in the Payments list (they should have the status refunded or reversed when the payment is refunded in full and partially refunded when only the part of the payment amount is returned). You can also check the status of a refund in the corresponding payment information tab (it should state success or decline depending on the operation result).

If you have any questions about issuing refunds, contact technical support specialists.

Performing payouts

Requirements

Dashboard interface allows users to perform payouts with the use of individual and batch requests. In both cases, the following requirements must be met:

  • Two-factor authentication is enabled for the Dashboard user account in question.
  • The user account has been granted the right to perform payouts.
  • Payouts are supported for the selected payment method.
  • The balance under which payouts are performed has enough funds.
  • If additional data is required to perform a payout, it has to be provided within 22 hours.

If any issues regarding these requirements occur, they can be solved with the specialists in charge of granting access rights and working with balances.

In any payout type—either single payout or batch payout—you can issue one or more retries if the initial attempt is declined, for example because daily limit for payouts in the payment system is reached or the payment system services are unavailable. The payment platform can be set up to issue retries automatically after specific timeout, or technical support specialists can issue them manually. The number of retries is always limited. To enable retry functionality, contact your account manager at ECommPay; to set up retries number limit and delay between retries, contact technical support service (support@ecommpay.com).

Single payouts

To perform a single payout:

  1. Go to the Single payout tab.

    To achieve this, go to Manual payments, click Request on the left of the filtering panel and switch to the Single payout tab.

  2. Specify payout parameters and send a payout request.

    To achieve this, fill in the fields and click Send Request; if needed, enter the SMS verification code in the popup window.

    When filling in the fields, keep in mind that:

    • The amount is entered as a decimal number with a point to separate fractional part (for example, 314.15).
    • Fields for the payment method specific parameters are not available until the project, the amount, the currency, and the payment method have been specified.
    • Among the specific fields only the required ones are shown.
    • If the field is filled incorrectly, the error message "Specify payout parameters" is shown.
    • The Send Request button is enabled when all parameters have been specified correctly.
  3. If additional payment information is required, specify the parameters needed (you can also decline the payment).

    When the payout is processed, its parameters are validated, following which a notification is displayed in the Single payout tab. If the parameters satisfy all requirements, the notification states that the request has been successfully processed. If certain parameters, which are not mandatory in general but can be required in a specific situation, are absent, fields where you can enter the required additional information are shown. In this case, to proceed with the payment, specify the information needed and click Proceed; to decline the payment, click Reject Payout.

    If for any reasons (to get more accurate information, for example) you need to pause and return to performing the payout later, you can find this payout in the payouts list using the Clarification filter and clicking the corresponding row.

    Restriction: By default, additional payment information has to be provided no later than 22 hours after the clarification request was received. However, certain payment systems may require additional information specified within shorter amounts of time. Contact technical support for more information about specific payment methods.
  4. Make sure that the payout has been processed.

    Verify the status of this payout in the Payouts or Payments list—it should state success.

If the payout is declined, the payment status switches to decline. It can happen due to a variety of reasons. For example, it can be caused by the lack of funds, in which case you can add funds to the balance and try to perform a payout again.

Mass payouts

General steps

To perform a series of payouts using a batch request:

  1. Create and prepare a file with the payout data in the specified format.

    You can find the file requirements with the template and a file sample below.

  2. Go to the Mass payouts tab.

    To achieve this, go to Manual payments, click Request on the left of the filtering panel and switch to the Mass payouts tab.

  3. Upload the file with the list of payouts and send the batch request.

    Drag the file or use the Browse button to upload. After the file has been uploaded, make sure the Send request button is enabled. Use this button to send the batch request; if needed, enter the SMS verification code in the popup window.

    If the file is incorrect, the Send request button remains inactive and the error message is shown. In this case, view the error details (using the File preview toggle and then the File details button), correct the errors, and re-upload the file.

  4. Make sure the specified data is sufficient and the payouts have been processed.

    After the batch request has been sent and you can see the notification that it has been accepted, it is important to check that the payouts have been processed. Look up the batch status in the list of mass requests—the status should state Done. Keep in mind that the time it takes to process payouts and to update their status information can significantly vary depending on the number of payouts in the batch and the payment methods used.

    If a single payout request in the entire batch requires additional information, the batch status switches to Clarification. In this case, you can either specify the parameters needed for the target payouts, or decline them. Learn more about these options below.

    You can also monitor status information of payouts in the batch using the column Indicator in the list of mass requests.

Submitting additional information

When the payout batch request is processed, parameters of each payout have to be validated. If the parameters satisfy the requirements, no additional actions are necessary. If certain parameters, which are not mandatory in general but can be required in a specific situation, are absent, you need to submit additional information. This necessity is indicated by the status Clarification for individual payouts and the entire batch in the list of mass requests.

If submitting additional information is necessary for certain payouts in the batch, you can selectively specify the required parameters or decline these payouts. In such cases, you can work with individual payouts (which is convenient when additional information is required only for one payout in the entire batch, for example) or several payouts at the same time (when additional information is required for a series of payouts, for example) and specify the information needed in the Dashboard interface or by uploading a file.

To submit additional information for a single payout:

  1. Locate and open the payout information tab you need.

    To find this payout in the All requests list, use the Clarification filter and click the corresponding row.

  2. Specify the requested data and click Proceed.

You can also use the payout information tab to decline the processing of this payout by clicking Reject Payout.

To submit additional information for a series of payouts:

  1. Locate and open the batch with the target payouts whose parameters require clarification.

    To find this batch in the Mass requests list, use the Clarification filter and click the corresponding row.

  2. Switch to editing mode by clicking Manage on the left of the filtering panel.
  3. Specify the required parameters.

    You can use the Dashboard interface directly by entering data into the cells marked with or update the file you have uploaded. In the latter case, download the file using the button. Specify the required parameters in the cells marked *required* and upload the updated file using the button.

    In each of these cases, you can submit additional data for payouts that you need to be processed, not necessarily all that require it. The ones which you have decided not to specify additional information for are going to be declined after the clarification waiting time is over.

    Restriction: By default, additional payment information has to be provided no later than 22 hours after the clarification request was received. However, certain payment systems may require additional information specified within shorter amounts of time. Contact technical support for more information about specific payment methods.
  4. Save changes and send data by clicking Apply.

Editing mode also allows you to decline processing of individual payouts. Check the rows you need (in the first column of the table) and click Reject.

If you have any questions about performing payouts, contact technical support specialists.

Mass payments data

File upload requirements

To prepare the file, you can use the template available for download on Dashboard or here. Having downloaded the template, you can fill it in any CSV file editor, for example, Microsoft Excel. Each file used for adding criteria in bulk must meet the following requirements:

  • The data files must be uploaded in CSV format and the character encoding must be UTF-8 without BOM (Byte Order Mark string).
  • The file size cannot exceed 128 MB.
  • The first row must contain the names of parameters. The order of parameters can be random.
  • The subsequent rows must contain values of target parameters. Specifying values for optional parameters is recommended but not required.
  • All parameter values in the file must meet the requirements provided in the table below.
  • If operation parameters are specified in strings (not in table format), parameter values in each row must be separated by a semicolon (";"). In addition, the fields without values are separated by semicolons in the same way as the fields with values, and two or more ";" characters can follow one another, for example:


    If you use Microsoft Excel to create and prepare the file, make sure that strings do not include incorrect or extra characters. You should use a different editor, for example Notepad, to check if extra characters have been added.

Parameters for mass payments

When adding data to files, you can use the parameters presented in the table below. For more information about these parameters, see the API specification.

Parameter Description

operation_type
string, required

Operation type. The value can be capture, cancel, refund,  and payout.
Example: payout

general.project_id
integer, required

Project identifier assigned by ECommPay at the stage of integration.
Example: 35

method
string, required

Payment method identifier. For the full list, see IDs of payment methods supported in Dashboard.
Example: card

general.payment_id
string, required *

Payment identifier unique within the merchant's project.
A string which contains between 1 and 255 characters and which can include any letters, digits, and symbols in UTF-8 encoding.
Example: payment_536231.
* For refund, general.payment_id must be the identifier of the purchase to be refunded

payment.amount
integer, required

Payment amount in minor currency units.
An integer between 1 and 10000000000000 (without a decimal separator between the integer and fractional parts).
Example: 1905 for 19.05 and 190500 for 1905

payment.currency
string, required

Payment currency code in ISO 4217 alpha-3 format.
Example: EUR

payment.description
string, optional *

Payment description.
A string, must not exceed 255 characters.
Example: Deposit 12456.
* Required for refunds

account.number
string, optional

Account number of the customer.
A string, must contain between 1 and 100 characters.
Example: 1670033323

account.bank_id
integer, optional

Bank identifier received from ECommPay. For more information about banks and their IDs, see the section on payment methods in the documentation, or contact ECommPay technical support specialists.
An integer, must be 1 or greater.
Example: 421

account.customer_name
string, optional

First name and last name of the account holder.
A string, must contain 1 character or more.
Example: John Johnson

account.branch
string, optional

Name of the customer's bank branch.
A string, must not exceed 255 characters.
Example: Bank branch

account.city
string, optional

City of the bank branch location.
A string, must not exceed 255 characters.
Example: London

account.region_id
integer, optional

Region or state identifier of the bank branch location received from ECommPay. For more information about regions and their IDs, see the section on payment methods in the documentation, or contact ECommPay technical support specialists.
An integer, must be 1 or greater.
Example: 3

card.pan
integer, optional *

Card number of the customer.
An integer, must contain 32 digits or fewer.
Example: 2333776109871312.
* Required for payouts if token is not present

card.year
integer, optional *

Expiration year of the customer's card.
An integer between 2020 and 9999.
Example: 2024.
* Required for payouts

card.month
integer, optional *

Expiration month of the customer's card.
An integer between 1 and 12.
Example: 12.
* Required for payouts

card.card_holder
string, optional *

Name of the cardholder as specified on the card.
A string, must not exceed 255 characters.
Example: John Johnson.
* Required for payouts

token
string, optional *

Card token received from ECommPay.
Example: Z0yTL5shY8ddhpxdQyplRPJYmGV7Kv.
* Required for payouts if card.pan is not present

customer.id
string, optional *

Identifier of the customer within the merchant's project.
A string, must not exceed 255 characters.
Example: customer313.
* Required for payouts

customer.country
string, optional *

Customer country code in ISO 3166-1 alpha-2 format.
Example: GB.
* Required for payouts

customer.city
string, optional *

Customer city.
A string, must not exceed 255 characters.
Example: London.
* Required for payouts

customer.state
string, optional

Region or state of the customer's billing address.
A string, must not exceed 255 characters.
Example: West Midlands

customer.zip
string, optional

Postcode of the customer's billing address.
A string,must not exceed 16 characters.
Example: B152SA

customer.street
string, optional

Street of the customer's billing address.
Example: Edgbaston

customer.first_name
string, optional *

First name of the customer.
A string, must not exceed 255 characters.
Example: John.
* Required for payouts

customer.last_name
string, optional *

Last name of the customer.
A string, must not exceed 255 characters.
Example: Johnson.
* Required for payouts

customer.day_of_birth
string, optional *

The customer's day of birth in DD-MM-YYYY format.
Example: 21-12-1989.
* Required for payouts

customer.phone
string, optional

Phone number of the customer.
A string, must be a sequence of digits, must contain between 4 and 24 characters, and can start with "+" .
Example: 79105216611 or +79105216611

customer.email
string, optional

Email of the customer.
A string, must not exceed 255 characters.
Example: test@mail.com

customer.ip_address
string, optional *

IP address of the customer.
A string, must not exceed 255 characters.
Example: 127.0.0.1.
* Required for payouts

Possible errors

The following error messages can appear after the validity check of the file uploaded to Dashboard has been performed.

Error message Possible reason
File is empty File is empty
Columns are duplicated Parameter has been duplicated
File does not contain required columns Required parameters are missing
Incorrect file format Extension or format of the file is incorrect
File is broken Encoding or data structure is incorrect
Payment method is not available (line# number) Specified payment method is not available
Specified project_id does not belong to specified merchant account Project identifier is incorrect
Project_id is not numeric (line# number) Project identifier is non-numeric
Project_id does not exist (line# number) Nonexistent project identifier has been specified
Payment_id is empty (line# number) Payment identifier has not been specified
Payment with payment_id already exists (line# number) Specified payment identifier has already been registered in the payment platform
Amount is empty (line# number) Payment amount has not been specified
Incorrect Amount (line# number) Incorrect payment amount value
Currency is empty (line# number) Payment currency has not been specified
Incorrect Currency (line# number) Incorrect payment currency value
Invalid date Card expiration date has not been specified or is incorrect
Card.year is in past (line# number) Expired card; expiration year is incorrect
Card.month is in past (line# number) Expired card; expiration month is incorrect