.. _api_v2_bank-wire-transfer: /api/v2/bank-wire-transfer ########################### .. contents:: :local: .. role:: ex .. role:: code Introduction ^^^^^^^^^^^^ Bank wire transfer is initiated through :code:`HTTPS POST` request by using :ref:`URLs` and the :ref:`parameters` specified below. Use :ref:`SHA-1` for authentication. See :ref:`statuses`. .. _api_v2_bank-wire-transfer_request_url: API URLs ^^^^^^^^ .. note:: | The path in API URL should not be hardcoded, as it may be changed in future. .. list-table:: :widths: 50, 50 :header-rows: 1 :class: longtable * - Integration - Production * - :ex:`https://sandbox.payneteasy.com/paynet/api/v2/bank-wire-transfer/ENDPOINTID` - :ex:`https://gate.payneteasy.com/paynet/api/v2/bank-wire-transfer/ENDPOINTID` .. _api_v2_bank-wire-transfer_request_parameters: Request Parameters ^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 25, 45, 25 :header-rows: 1 :class: longtable * - Parameter Name - Description - Value * - :code:`client_orderid` - Unique order identifier assigned by Connecting Party. - | ``Necessity``: Required | ``Type``: String | ``Length``: 128 * - :code:`currency` - Currency the transaction is charged in (See: :ref:`Currency codes`). Sample values are: :ex:`USD` for US Dollar :ex:`EUR` for European Euro. - | ``Necessity``: Required | ``Type``: String | ``Length``: 3 * - :code:`payer-fullname` - Payer’s full name. - | ``Necessity``: Required | ``Type``: String | ``Length``: 128 * - :code:`recipient-account-number` - Receiver`s account number. - | ``Necessity``: Required | ``Type``: Numeric | ``Length``: 20 * - :code:`recipient-bank-bic` - Receiver`s Bank Identifier Code. - | ``Necessity``: Required | ``Type``: Numeric | ``Length``: 9 * - :code:`amount` - Amount to be charged. The amount has to be specified in the highest units with :ex:`.` delimiter. For instance, :ex:`10.5` for USD means 10 US Dollars and 50 Cents. - | ``Necessity``: Required | ``Type``: Numeric | ``Length``: 10 * - :code:`payer-email` - Payer’s e-mail address. - | ``Necessity``: Optional | ``Type``: String | ``Length``: 128 * - :code:`payer-phone` - Payer’s full international phone number, including country code. - | ``Necessity``: Optional | ``Type``: String | ``Length``: 128 * - :code:`recipient-name` - Receiver`s name. - | ``Necessity``: Required | ``Type``: String | ``Length``: 255 * - :code:`recipient-inn` - Receiver`s Taxpayer Identification Number. - | ``Necessity``: Required | ``Type``: String | ``Length``: 255 * - :code:`payment-details` - Payment purpose. - | ``Necessity``: Required | ``Type``: String | ``Length``: 120 * - :code:`vat-amount` - Value-added tax amount. - | ``Necessity``: Required | ``Type``: Numeric | ``Length``: 10 * - :code:`payer-identity-document` - Type, series and number of the identification card. - | ``Necessity``: Required | ``Type``: String | ``Length``: 64 * - :code:`control` - | Checksum generated by :ref:`SHA-1`. Control string is represented as concatenation of the following parameters: | 1. :ex:`` (See: :ref:`Request URL`) | 2. Request parameter: :ex:`client_orderid` | 4. Request parameter: :ex:`payer-fullname` | 8. Request parameter: :ex:`recipient-name` | 5. Request parameter: :ex:`recipient-account-number` | 6. Request parameter: :ex:`recipient-bank-bic` | 7. Request parameter: :ex:`amount` (in minor units) | 9. Request parameter: :ex:`vat-amount` (in minor units) | 3. Request parameter: :ex:`currency` | 10. :ex:`merchant_control` (Control key assigned to Connecting Party in Payment Gateway.) - | ``Necessity``: Required | ``Type``: String | ``Length``: 40 * - :code:`server_callback_url` - | URL, where the transaction status is sent to. Connecting Party may use server callback URL for custom processing of the transaction completion, e.g. to collect payment data in the Connecting Party’s information system. For the list of parameters which come along with server callback to :ex:`server_callback_url` refer to :ref:`Connecting Party callback parameters`. This parameter can be sent instead of :ex:`notify_url`. If :ex:`server_callback_url` is sent, Payment Gateway sends callback notification only when original transaction receives final status. If :ex:`notify_url` is sent, Payment Gateway sends callback notification once the original transaction receives final status, and about every future update for this original transaction (reversal, chargeback, etc). - | ``Necessity``: Optional | ``Type``: String | ``Length``: 128 * - :code:`notify_url` - | URL, where the transaction status is sent to. Connecting Party may use notify URL for custom processing of the transaction completion, e.g. to collect payment data in the Connecting Party’s information system. For the list of parameters which come along with server callback to :ex:`notify_url` refer to :ref:`Connecting Party callback parameters`. This parameter can be sent instead of :ex:`server_callback_url`. If :ex:`notify_url` is sent, Payment Gateway sends callback notification once the original transaction receives final status, and about every future update for this original transaction (reversal, chargeback, etc). If :ex:`server_callback_url` is sent, Payment Gateway sends callback notification only when original transaction receives final status. - | ``Necessity``: Optional | ``Type``: String | ``Length``: 128 .. _api_v2_bank-wire-transfer_response_parameters: Response Parameters ^^^^^^^^^^^^^^^^^^^ .. note:: | Response has Content-Type: text/html;charset=utf-8 header. All fields are x-www-form-urlencoded, with (0xA) character at the end of each parameter’s value. .. list-table:: :widths: 25, 75 :header-rows: 1 :class: longtable * - Parameter name - Description * - :code:`type` - The type of response. May be :ex:`async-form-response`, :ex:`validation-error`, :ex:`error`. If type equals :ex:`validation-error` or :ex:`error`, :ex:`error-message` and :ex:`error-code` parameters contain error details. * - :code:`paynet-order-id` - Order id assigned to the order by Payneteasy. * - :code:`merchant-order-id` - Connecting Party order id. * - :code:`serial-number` - Unique number assigned by Payneteasy server to particular request from the Connecting Party. * - :code:`error-message` - If status is :ex:`declined` or :ex:`error` this parameter contains the reason for decline or error details. * - :code:`error-code` - The error code in case of :ex:`declined` or :ex:`error` status. Request Example ^^^^^^^^^^^^^^^ .. code-block:: guess POST /paynet/api/v2/bank-wire-transfer/40265 HTTP/1.1 User-Agent: curl/7.83.0 Accept: */* Content-Length: 436 Content-Type: application/x-www-form-urlencoded Connection: close client_orderid=902B4FF5 &payer-fullname=Test full name &recipient-name=Test name &recipient-account-number=40963810202157880527 &recipient-bank-bic=44030861 &amount=55.55 &vat-amount=4.54 ¤cy=EUR &payer-email=john.smith@gmail.com &payer-phone=+74951129876 &recipient-inn=7812013775 &payment-details=Test payment &payer-identity-document=01,9207123123 &server_callback_url=https://httpstat.us/200 &control=bc7dae1fe9389aa02471c7c93d08d6b1ba0f2ea8 Success Response Example ^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: none HTTP/1.1 200 Server: server Date: Fri, 26 May 2023 11:44:12 GMT Content-Type: text/html;charset=utf-8 Connection: close Vary: Accept-Encoding X-XSS-Protection: 1 Strict-Transport-Security: max-age=31536000 Content-Language: en-US Strict-Transport-Security: max-age=31536000 Content-Length: 145 type=async-response &serial-number=00000000-0000-0000-0000-000003c3994f &merchant-order-id=inv9157586 &paynet-order-id=1824084 &end-point-id=6655 Fail Response Example ^^^^^^^^^^^^^^^^^^^^^ .. code-block:: none HTTP/1.1 200 Server: server Date: Fri, 26 May 2023 10:11:58 GMT Content-Type: text/html;charset=utf-8 Connection: close Vary: Accept-Encoding X-XSS-Protection: 1 X-Content-Type-Options: nosniff Strict-Transport-Security: max-age=31536000 Content-Language: en-US Strict-Transport-Security: max-age=31536000 Content-Length: 163 type=validation-error &serial-number=00000000-0000-0000-0000-000002e73881 &merchant-order-id=902B4FF5 &error-message=Project+with+currency+USD+does+not+apply+request+with+currency+EUR &error-code=20 Postman Collection ^^^^^^^^^^^^^^^^^^ .. raw:: html :file: ../_static/Postman/Postman_bank-wire-transfer.html Request Builder ^^^^^^^^^^^^^^^ .. raw:: html :file: ../_static/examples/bank_wire_transaction_Debug.html