Bank transfers in Argentina

Name The code Description

Integration type

H2H

Payment via HighHelp API on the merchant side

Currency

ARS

Argentine Peso

Side

AR

Argentine Republic

Deposits

Available payment methods:
- account-number

Payments

Available payment methods:
- account-number

Payment

General requirements for integrating P2P payments via API are described in the sectionGeneral requirements for P2P (H2H).

Creating an application

POST https://api.hh-processing.com/api/v1/payment/p2p/payin

Request body parameters when creating a P2P request.

  • general — information about the application.

    • project_id — cashier identifier issued by HighHelp at the integration stage.
      (string) (<= 32)

    • payment_id — payment identifier, unique within the merchant’s checkout. Any UTF-8 encoded characters are acceptable.
      (string) (<= 255)

    • merchant_callback_url— dynamic URL for receiving informative notifications, for example about changes in the intermediate status of an application and details for payment of a P2P application. Final status notifications are sent to the URLs specified inmerchant_success_callback_urlAndmerchant_decline_callback_url.
      (string<https-url>) (<= 2048)

    • merchant_success_callback_url— dynamic URL to receive a notification when the operation is successful.
      (string<https-url>) (<= 2048)

    • merchant_decline_callback_url— dynamic URL to receive an alert if the operation is unsuccessful.
      (string<https-url>) (<= 2048)

    • redirect_url— a link to redirect the user from the payment page after completing the payment.
      (string<https-url>) (<= 2048)

  • payment — payment information.

    • method — payment method code. For a list of codes, see sectionPayment methods and codes (H2H).
      (string) (<= 32)

    • payment_system— code of the payment system used when processing the payment.
      (string) (<= 32)

    • amount — the amount that the user intends to pay. The amount is indicated in fractional units; For more details, see the sectionCurrency codes.
      (integer) (1 <= X <= 10000000000000)

    • currency — code of the currency in which the user pays, in the formatISO 4217 alpha-3. The list of codes is given in the sectionCurrency codes.
      (string) (regex: ^[A-Z]{3}$)

    • lifetime— request lifetime in seconds. The maximum value is 10 minutes. If the parameter is not specified, the default value of 10 minutes is used.
      (integer) (300 <= X <= 600)

    • description— payment description or comment. Displayed in the merchant's account.
      (string) (<= 255)

    • extra_param— an additional parameter for individual routing of a request. Configured together with HighHelp specialists.
      (string) (regex: ^[A-Za-z0-9_-]{1,16}$)

  • customer — information about the sending user.

    • id — a unique user identifier in the merchant’s system.
      (string) (<= 255)

    • ip_address — IP address of the sender.
      (string<ip-address>) (<= 255)

    • first_name— name of the user making the payment.
      (string) (<= 255)

    • last_name— surname of the user making the payment.
      (string) (<= 255)

    • customer_type— user type:ftd— primary traffic,trust— repeated traffic.
      (string) (regex: ^(ftd|trust)$)

    • country — user country code in the formatISO 3166-1 alpha-2. The list of codes is given in the sectionCountry codes.
      (string) (regex: ^[A-Z]{2}$)

    • language— language code of the payment page interface in the formatISO 639-1. If no language is specified, the default language for the user's country is used. A list of supported languages ​​is provided in the sectionLanguage codes.
      (string) (regex: ^[a-z]{2}$)

    • email— sender’s email address.
      (string<email>) (<= 255)

    • browser— name and version of the user’s browser.
      (string) (<= 512)

    • device_type— user device type.
      (string) (<= 512)

    • user_agent— identification string of the client application.
      (string) (<= 1024)

    • identification_data— user identification data. The fields are optional, but can be used to increase conversion.

      • document_type— user document type. Valid values:CUIT, CUIL.
        (string) (regex: ^(CUIT|CUIL)$)

      • document_number— user document number.
        (regex: ^\d{11}$)

Fields marked, are mandatory.

Example request:

curl https://api.hh-processing.com/api/v1/payment/p2p/payin \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
  "general": {
    "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
    "payment_id": "ARS-PAYMENT-123456",
    "merchant_callback_url": "https://your-domain.com/internal",
    "merchant_success_callback_url": "https://your-domain.com/success",
    "merchant_decline_callback_url": "https://your-domain.com/decline",
    "redirect_url": "https://your-domain.com/order/page"
  },
  "payment": {
    "method": "account-number",
    "amount": 150000,
    "currency": "ARS",
    "lifetime": 300,
    "description": "Comment about the payment",
    "extra_param": "example"
  },
  "customer": {
    "id": "cus_12345",
    "ip_address": "192.0.2.1",
    "first_name": "Alex",
    "last_name": "Johnson",
    "customer_type": "ftd",
    "country": "AR",
    "email": "customer@example.com",
    "browser": "Google Chrome v15.12",
    "device_type": "iPhone 15 Pro",
    "identification_data": {
      "document_type": "CUIT",
      "document_number": "01234567891"
    }
  }
}'

Sample answer:

{
  "status": "processing",
  "sub_status": "requisites",
  "status_description": null,
  "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "payment_id": "ARS-PAYMENT-123456",
  "integration": {
    "form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
    "redirect_url": "https://your-domain.com/order/page"
  }
}

Response options:

  • status — payment processing status. For a list of statuses, see sectionStatus codes.
    (string) (<= 32)

  • sub_status— payment processing substatus. Used only for individual statuses. For a complete list of substatuses, seeStatus codes.
    (string) (<= 32)

  • status_description— additional information on status. The value is filled in if the payment failed or an error occurred.
    (string) (<= 1024)

  • request_id — payment identifier, which is generated in the HighHelp payment system.
    (string) (<= 32)

  • project_id — checkout ID received from HighHelp during the integration process.
    (string) (<= 32)

  • payment_id — payment identifier, unique within the merchant’s checkout.
    (string) (<= 255)

  • integration— additional meta-information on the payment.

    • form_url — link to the payment page to which the user can be redirected. The page displays payment details, payment instructions and other service information.
      (string<https-url>) (<= 255)

    • redirect_url— a link to redirect the user from the payment page after completing the payment.
      (string<https-url>) (<= 2048)

fieldsrecipient_requisitesAnddisplay_dataremain empty until the application status changes toprocessing:awaiting_confirmorprocessing:paid.

Data to display in payment instructions

Before you can display a payment instruction, you must obtain the details for it. There are two options:

  • wait for notification with statusprocessing:awaiting_confirmto the URL specified in the parametermerchant_callback_url. The body of the alert will contain data to display the payment instruction;

  • execute a request approximately once every 15 seconds to the addresshttps://api.hh-processing.com/api/v1/payment/p2p/payin/info. As soon as the application status changes toprocessing:awaiting_confirm, the body of the response will contain data for displaying the payment instruction.

In the notification from the HighHelp system or in the body of the response, you need to find the fielddisplay_data. This is an array of objects with the following parameters:

  • type— object type. For p2p payments the type is usedadd_info;

  • title— payment instruction attribute name. Possible values:

    • recipient_card_holder— full name of the cardholder;

    • recipient_pan— card number to which funds must be transferred;

    • recipient_phone— phone number to which funds must be transferred;

    • lifetime— instruction (application) lifetime in seconds;

    • valid_until— time until which the instruction (application) is valid, in Unix Timestamp (UTC) format;

    • amount— the amount that must be transferred to the specified details, in fractional units. For more details, see sectionCurrency codes;

    • currency— payment currency code in ISO 4217 alpha-3 format;

    • bank_name— name of the transfer recipient’s bank;

    • bank_country— country code of the transfer recipient’s bank;

    • confirm_url— URL to send a request when confirming payment by the user. The format and processing depend on the merchant's business logic.

    • reject_url— URL to send a request if the user refuses to pay. The format and processing depend on the merchant's business logic.

  • data— payment instruction attribute value.

Payment instruction data fragment:

"display_data": [
  {
    "type": "add_info",
    "title": "recipient_card_holder",
    "data": "Alex Johnson"
  },
  {
    "type": "add_info",
    "title": "recipient_pan",
    "data": "0123456789012345678901"
  },
  {
    "type": "add_info",
    "title": "lifetime",
    "data": 300
  },
  {
    "type": "add_info",
    "title": "valid_until",
    "data": 1721647251
  },
  {
    "type": "add_info",
    "title": "amount",
    "data": 10000
  },
  {
    "type": "add_info",
    "title": "currency",
    "data": "ARS"
  },
  {
    "type": "add_info",
    "title": "bank_name",
    "data": "naranja-x-ars"
  },
  {
    "type": "add_info",
    "title": "bank_country",
    "data": "AR"
  },
  {
    "type": "add_info",
    "title": "confirm_url",
    "data": "https://api.hh-processing.com/api/v1/payment/p2p/payin/confirm"
  },
  {
    "type": "add_info",
    "title": "reject_url",
    "data": "https://api.hh-processing.com/api/v1/payment/p2p/payin/cancel"
  }
]

Application information

POST https://api.hh-processing.com/api/v1/payment/p2p/payin/info

Parameters that must be sent in the body of the request to obtain the p2p status of the application.

  • general — information about the application.

    • project_id — checkout ID received from HighHelp during the integration process.
      (string) (<= 32)

    • payment_id — payment ID.
      (string) (<= 255)

Fields marked, are mandatory.

Example request:

curl https://api.hh-processing.com/api/v1/payment/p2p/payin/info \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
  "general": {
    "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
    "payment_id": "ARS-PAYMENT-123456"
  }
}'

Sample answer:

{
  "status": "processing",
  "sub_status": "awaiting_confirm",
  "status_description": null,
  "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "payment_id": "ARS-PAYMENT-123456",
  "payment_info": {
    "amount": 10000,
    "old_amount": 10000,
    "initial_amount": 3000,
    "currency": "ARS",
    "lifetime": 300,
    "expiration_date": 1721647251,
    "method": "account-number",
    "type": "payin"
  },
  "recipient_requisites": {
    "pan": "4850788018041726",
    "card_holder": "Alex Johnson",
    "bank_name": "naranja-x-ars",
    "bank_country": "AR",
    "currency": "ARS"
  },
  "integration": {
    "form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
    "redirect_url": "https://your-domain.com/order/page"
  }
}

Response options:

  • status — payment processing status. For a list of statuses, see sectionStatus codes.
    (string) (<= 32)

  • sub_status— payment processing substatus. Used only for individual statuses.
    (string) (<= 32)

  • status_description— additional information on status. The value is filled in if the payment failed or an error occurred.
    (string) (<= 1024)

  • request_id — payment identifier, which is generated in the HighHelp payment system.
    (string) (<= 32)

  • project_id — checkout ID received from HighHelp during the integration process.
    (string) (<= 32)

  • payment_id — payment identifier, unique within the merchant’s checkout.
    (string) (<= 255)

  • payment_info — payment information.

    • amount — the amount of the application in fractional units. For more details, see sectionCurrency codes.
      (integer) (1 <= X <= 10000000000000)

    • old_amount — the amount of the application before the appeal. The amount may change if the application was created for one amount, and the user transferred another. In this case, inamountthe actual amount received is indicated (to resolve the appeal, you need to contact HighHelp technical support), andold_amount— original amount. If the amount has not changed, the field values ​​are the same.
      (integer) (1 <= X <= 10000000000000)

    • initial_amount — the amount specified when creating the application. The value does not change.
      (integer) (1 <= X <= 10000000000000)

    • currency — code of the currency in which the user pays, in ISO 4217 alpha-3 format.
      (string) (regex: ^[A-Z]{3}$)

    • lifetime— request lifetime in seconds.
      (integer) (300 <= X <= 600)

    • expiration_date— time until which the application is valid, in Unix Timestamp (UTC) format.
      (integer) (X <= 2^32)

    • method — payment method selected when creating the payment. For a list of methods, seePayment methods (H2H).
      (string) (<= 32)

    • payment_system— code of the payment system used when processing the payment.
      (string) (<= 32)

    • type— type of operation. For a list of types, seeSupported payment types.
      (string) (<= 32)

  • recipient_requisites— details for which payment is expected from the user.

    • pan — number of the card to which the transfer is expected from the user.
      (string<pan>) (<= 4096)

    • card_holder — cardholder’s name (as indicated on the card). In exceptional cases, a service value may be used, for example--.
      (string) (<= 255)

    • bank_name— name of the transfer recipient’s bank.
      (string) (<= 255)

    • bank_country— country code of the transfer recipient’s bank in ISO 3166-1 alpha-2 format.
      (string) (regex: ^[A-Z]{2}$)

    • currency— payment currency code in ISO 4217 alpha-3 format.
      (string) (regex: ^[A-Z]{3}$)

  • integration— additional meta-information on the payment.

    • form_url — link to the payment page to which the user can be redirected.
      (string<https-url>) (<= 255)

    • redirect_url— a link to redirect the user from the payment page after completing the payment.
      (string<https-url>) (<= 2048)

fieldsrecipient_requisitesAnddisplay_dataremain empty until the application status changes toprocessing:awaiting_confirmorprocessing:paid.

Payment statuses

Types of operations and statuses are described in sectionTransaction types and statuses.
Status codes and possible valuesstatusAndsub_statusare given in sectionStatus codes.

Status Substatus Description Payment status

error

The request was rejected due to an error related to the payment parameters.

Intermediate state

processing

new

The correctness of the request is checked before processing begins.

Intermediate state

requisites

Selection of details to which the client needs to transfer the amount from the request.

Intermediate state

awaiting_confirm

Confirmation of payment from the client is expected, since the details have already been provided.

Intermediate state

paid

The client confirmed that he sent the amount to the given details.

Intermediate state

dispute

no_payment

The client did not complete the payment for the application during its lifetime (lifetime).

Intermediate state

different_amount

The client sent an amount different from that specified in the application.

Intermediate state

confirm_timeout

The application expired, but the client later confirmed the payment and provided a receipt.

Intermediate state

decline

Payment declined

Final state

success

Payment completed

Final state

Alerts

It is recommended to implement checking of incoming notifications for duplicates. The idempotency key can be generated using a template{project_id}:{payment_id}:{status}:{sub_status}. Repeated notifications with the same key should be ignored to ensure that the same request is not processed twice.

Each alert is digitally signed by HighHelp. The current public key for verifying the signature can be obtained in the admin panel. The key is unique for each cash register. The signature verification algorithm is the reverse of the signature generation algorithm when calling an API. Examples of signature verification are given in sectionsAlert Signing (RSA)AndAlert signature (HMAC).

There are three types of alerts:

  • Informative— notifications in non-final statuses, if they are provided for a specific product (for example,processing:*, dispute:*orerror). The URL is specified in the parametermerchant_callback_urlwhen creating an application.

  • Successful— notifications for applications completed in statussuccess. The URL is specified in the parametermerchant_success_callback_url.

  • Unsuccessful— notifications for applications completed in statusdecline. The URL is specified in the parametermerchant_decline_callback_url.

The composition of the fields and the list of informative statuses depend on the product and integration scenario. See more details.H2H AlertsAndWidget Alerts.

Informative Alerts

Example of an alert with statusprocessing:awaiting_confirm:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "ARS-PAYMENT-123456"
  },
  "status": {
    "status": "processing",
    "sub_status": "awaiting_confirm",
    "status_description": null
  },
  "payment_info": {
    "amount": 7000,
    "old_amount": 7000,
    "initial_amount": 3000,
    "currency": "ARS",
    "lifetime": 300,
    "expiration_date": 1721647251,
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payin"
  },
  "recipient_requisites": {
    "pan": "4850788018041726",
    "card_holder": "Alex Johnson",
    "bank_name": "naranja-x-ars",
    "bank_country": "AR",
    "currency": "ARS"
  },
  "integration": {
    "form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
    "redirect_url": "https://your-domain.com/order/page"
  },
  "additional_info": {
    "display_data": [
      {
        "type": "add_info",
        "title": "recipient_card_holder",
        "data": "Alex Johnson"
      },
      {
        "type": "add_info",
        "title": "recipient_pan",
        "data": "4850788018041726"
      },
      {
        "type": "add_info",
        "title": "lifetime",
        "data": 300
      },
      {
        "type": "add_info",
        "title": "valid_until",
        "data": 1721647251
      },
      {
        "type": "add_info",
        "title": "amount",
        "data": 10000
      },
      {
        "type": "add_info",
        "title": "currency",
        "data": "ARS"
      },
      {
        "type": "add_info",
        "title": "bank_name",
        "data": "naranja-x-ars"
      },
      {
        "type": "add_info",
        "title": "bank_country",
        "data": "AR"
      },
      {
        "type": "add_info",
        "title": "confirm_url",
        "data": "https://api.hh-processing.com/api/v1/payment/p2p/payin/confirm"
      },
      {
        "type": "add_info",
        "title": "reject_url",
        "data": "https://api.hh-processing.com/api/v1/payment/p2p/payin/cancel"
      }
    ]
  }
}

Details (recipient_requisites) and payment instruction (additional_info) are included in the notification when payment details are available for the application (usually starting fromprocessing:awaiting_confirmand further in subsequent non-final statuses).
In other cases, these fields may have the valuenull, For example"recipient_requisites": null, "additional_info": null.

Successful Alerts

An alert is sent if the application has reached final statussuccess:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "ARS-PAYMENT-123456"
  },
  "status": {
    "status": "success",
    "sub_status": null,
    "status_description": null
  },
  "payment_info": {
    "amount": 700000,
    "old_amount": 500000,
    "initial_amount": 300000,
    "currency": "ARS",
    "lifetime": 300,
    "expiration_date": 1721647251,
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payin"
  }
}

Unsuccessful Alerts

An alert is sent if the application has reached final statusdecline:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "ARS-PAYMENT-123456"
  },
  "status": {
    "status": "decline",
    "sub_status": null,
    "status_description": "Declined by anti-fraud"
  },
  "payment_info": {
    "amount": 700000,
    "old_amount": 700000,
    "initial_amount": 300000,
    "currency": "ARS",
    "lifetime": 300,
    "expiration_date": 1721647251,
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payin"
  }
}

Pay

Creating a payment request

POST https://api.hh-processing.com/api/v1/payment/p2p/payout

Parameters that must be sent in the body of the request when creating a payment to an account/card.

  • general — information about the application.

    • project_id — checkout ID received from HighHelp during the integration process.
      (string) (<= 32)

    • payment_id — payment identifier, unique within the merchant’s checkout. You can use any letters, numbers and symbols in UTF-8 encoding.
      (string) (<= 255)

    • merchant_callback_url— dynamic URL for receiving informative notifications about changes in the intermediate status of an application. Final status notifications are sent to the URLs specified inmerchant_success_callback_urlAndmerchant_decline_callback_url.
      (string<https-url>) (<= 2048)

    • merchant_success_callback_url— dynamic URL to receive a notification upon successful completion of an operation/transaction.
      (string<https-url>) (<= 2048)

    • merchant_decline_callback_url— dynamic URL to receive an alert if the operation/transaction is not completed successfully.
      (string<https-url>) (<= 2048)

  • receiver — information about the recipient of the payment.

    • pan — recipient’s account/card number. Required field ifpayment.method = "account-number".
      (regex: ^\d{22}$)

    • account_type— user account type. Valid values:CACC— current account,SVGS— savings account.
      (string) (regex: ^(CACC|SVGS)$)

  • payment — information about payment.

    • method — payment method code. For a list of methods, seePayment methods (H2H).
      (string) (<= 32)

    • amount — the amount that must be sent to the specified details, in fractional units. For more details, see sectionCurrency codes.
      (integer) (1 <= X <= 10000000000000)

    • currency — payout currency in ISO 4217 alpha-3 format.
      (string) (regex: ^[A-Z]{3}$)

    • description— payment description or comment. The value is displayed in the merchant's personal account.
      (string) (<= 255)

    • extra_param— an additional parameter for individual routing of a request. Configured together with the administrator.
      (string) (regex: ^[A-Za-z0-9_-]{1,16}$)

  • customer — information about the initiator of the payment.

    • id — a unique user identifier in the merchant’s project.
      (string) (<= 255)

    • ip_address — User IP address.
      (string<ip-address>) (<= 255)

    • first_name— name of the client receiving the payment.
      (string) (<= 255)

    • last_name— surname of the client receiving the payment.
      (string) (<= 255)

    • country — user country code in ISO 3166-1 alpha-2 format.
      (string) (regex: ^[A-Z]{2}$)

    • email— user email address.
      (string<email>) (<= 255)

    • browser— name and version of the user’s browser.
      (string) (<= 512)

    • device_type— user device type.
      (string) (<= 512)

    • user_agent— identification string of the client application.
      (string) (<= 1024)

    • identification_data— user identification data.

      • document_type— user document type. Valid values:CUIT, CUIL.
        (string) (regex: ^(CUIT|CUIL)$)

      • document_number— user document number.
        (regex: ^\d{11}$)

Fields marked, are mandatory.

Example request:

curl https://api.hh-processing.com/api/v1/payment/p2p/payout \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
  "general": {
    "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
    "payment_id": "PAYOUT-ARS-PAYMENT-123456",
    "merchant_callback_url": "https://your-domain.com/internal",
    "merchant_success_callback_url": "https://your-domain.com/success",
    "merchant_decline_callback_url": "https://your-domain.com/decline"
  },
  "receiver": {
    "pan": "0123456789012345678901",
    "account_type": "CACC"
  },
  "payment": {
    "method": "account-number",
    "amount": 2000000,
    "currency": "ARS",
    "description": "Comment about the payout",
    "extra_param": "example"
  },
  "customer": {
    "id": "cus_12345",
    "ip_address": "192.0.2.1",
    "first_name": "Alex",
    "last_name": "Johnson",
    "country": "AR",
    "email": "customer@example.com",
    "browser": "Google Chrome v15.12",
    "device_type": "iPhone 15 Pro",
    "identification_data": {
      "document_type": "CUIT",
      "document_number": "01234567891"
    }
  }
}'

Sample answer:

{
  "status": "processing",
  "sub_status": "new",
  "status_description": null,
  "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "payment_id": "PAYOUT-ARS-PAYMENT-123456"
}

Response options:

  • status — payment processing status. For a list of statuses, see sectionStatus codes.
    (string) (<= 32)

  • sub_status— substatus of payment processing. Used only for individual statuses.
    (string) (<= 32)

  • status_description— additional information on status. The value is filled in if the payment failed or an error occurred.
    (string) (<= 1024)

  • request_id — payment identifier, which is generated in the HighHelp payment system.
    (string) (<= 32)

  • project_id — checkout ID received from HighHelp during the integration process.
    (string) (<= 32)

  • payment_id — payment identifier, unique within the merchant’s checkout.
    (string) (<= 255)

Fields marked, are mandatory.

Information about the payment request

POST https://api.hh-processing.com/api/v1/payment/p2p/payout/info

Parameters that must be sent in the body of the request to obtain the p2p status of the payment request.

  • general — information about the application.

    • project_id — checkout ID received from HighHelp during the integration process.
      (string) (<= 32)

    • payment_id — payment ID.
      (string) (<= 255)

Fields marked, are mandatory.

Example request:

curl https://api.hh-processing.com/api/v1/payment/p2p/payout/info \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
  "general": {
    "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
    "payment_id": "PAYOUT-ARS-PAYMENT-123456"
  }
}'

Sample answer:

{
  "status": "processing",
  "sub_status": "payout_process",
  "status_description": null,
  "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "payment_id": "PAYOUT-ARS-PAYMENT-123456",
  "payment_info": {
    "amount": 10000,
    "old_amount": 10000,
    "initial_amount": 3000,
    "currency": "ARS",
    "method": "account-number",
    "type": "payout"
  }
}

Response options:

  • status — payment processing status. For a list of statuses, see sectionStatus codes.
    (string) (<= 32)

  • sub_status— substatus of payment processing.
    (string) (<= 32)

  • status_description— additional information on status. The value is filled in if the payment failed or an error occurred.
    (string) (<= 1024)

  • request_id — payment identifier, which is generated in the HighHelp payment system.
    (string) (<= 32)

  • project_id — checkout ID received from HighHelp during the integration process.
    (string) (<= 32)

  • payment_id — payment identifier, unique within the merchant’s checkout.
    (string) (<= 255)

  • payment_info — information about payment.

    • amount — the amount of the application in fractional units.
      (integer) (1 <= X <= 10000000000000)

    • old_amount — the amount of the application before the appeal.
      (integer) (1 <= X <= 10000000000000)

    • initial_amount — the amount specified when creating the application. The value does not change.
      (integer) (1 <= X <= 10000000000000)

    • currency — code of the currency in which the payment is made, in ISO 4217 alpha-3 format.
      (string) (regex: ^[A-Z]{3}$)

    • method — payment method code. For a list of methods, seePayment methods (H2H).
      (string) (<= 32)

    • payment_system— code of the payment system used when processing the payment.
      (string) (<= 32)

    • type— type of operation. For a list of types, seeSupported payment types.
      (string) (<= 32)

Payment statuses

Types of operations and statuses are described in sectionTransaction types and statuses.
Status codes and possible valuesstatusAndsub_statusare given in sectionStatus codes.

Status Sub-status Description Payment status

error

The request was rejected due to an error related to the payment parameters.

Intermediate state

processing

new

Checking the request before processing.

Intermediate state

requisites

Selection of a trader who will execute the payment.

Intermediate state

payout_process

Making a payment using the specified details.

Intermediate state

dispute

incorrect_requisites

The trader reported incorrect payment details.

Intermediate state

payout_failed

The trader was unable to complete the payment using the correct details.

Intermediate state

payout_timeout

The order's lifetime has expired and the trader did not have time to execute the payment.

Intermediate state

decline

Payment declined.

Final state

success

Payment completed successfully.

Final state

Payout Alerts

It is recommended to implement checking of incoming notifications for duplicates. The idempotency key can be generated using a template{project_id}:{payment_id}:{status}:{sub_status}. Repeated notifications with the same key should be ignored to ensure that the same request is not processed twice.

Each alert is digitally signed by HighHelp. The current public key for verifying the signature can be obtained in the admin panel. The key is unique for each cash register. The signature verification algorithm is the reverse of the signature generation algorithm when calling an API. Examples of signature verification are given in sectionsAlert Signing (RSA)AndAlert signature (HMAC).

There are three types of alerts:

  • Informative— notifications in non-final statuses, if they are provided for a specific product (for example,processing:*, dispute:*orerror). The URL is specified in the parametermerchant_callback_urlwhen creating an application.

  • Successful— notifications for applications completed in statussuccess. The URL is specified in the parametermerchant_success_callback_url.

  • Unsuccessful— notifications for applications completed in statusdecline. The URL is specified in the parametermerchant_decline_callback_url.

The composition of the fields and the list of informative statuses depend on the product and integration scenario. See more details.H2H AlertsAndWidget Alerts.

Informative Alerts

Example of an alert with statusprocessing:payout_process:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "PAYOUT-ARS-PAYMENT-123456"
  },
  "status": {
    "status": "processing",
    "sub_status": "payout_process",
    "status_description": null
  },
  "payment_info": {
    "amount": 7000,
    "old_amount": 7000,
    "initial_amount": 3000,
    "currency": "ARS",
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payout"
  },
  "additional_info": {}
}

Successful Alerts

Example of a notification for final statussuccess:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "PAYOUT-ARS-PAYMENT-123456"
  },
  "status": {
    "status": "success",
    "sub_status": null,
    "status_description": null
  },
  "payment_info": {
    "amount": 7000,
    "old_amount": 7000,
    "initial_amount": 3000,
    "currency": "ARS",
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payout"
  }
}

Unsuccessful Alerts

Example of a notification for final statusdecline:

{
  "project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
  "general": {
    "request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
    "payment_id": "PAYOUT-ARS-PAYMENT-123456"
  },
  "status": {
    "status": "decline",
    "sub_status": null,
    "status_description": "Declined by anti-fraud"
  },
  "payment_info": {
    "amount": 7000,
    "old_amount": 7000,
    "initial_amount": 3000,
    "currency": "ARS",
    "updated_date": 1721647251,
    "created_date": 1721647251,
    "method": "account-number",
    "type": "payout"
  }
}