Skip to content

Logo

DNS-pay

THE EASIEST WAY TO HAVE IT ALL.FAST. You can stop looking for a payment provider, because DNS Pay is the top-of-the-line solution you’ve been looking for. With the fastest and easiest, single integration, you have full access to the most advanced technology, with unbeatable service by our payment experts.

Website: dns-pay.com

Set up Account H2H merchant account

Step 1: Create Merchant Account

To create an account send connection request at the dns-pay.com/contact or contact manager directly. Submit the required documents to verify your account and gain access.

Step 2: Get required credentials

Credentials that have to be issued:

  • dnspay__control_key → Control Key
  • dnspay__endpoint_id → Endpoint ID
  • dnspay__is_multi_currency_integration → Multi Currency Integration
  • dnspay__loginLogin → Login
  • dnspay__currency → choose currency (You can set these parameters according to available currencies and features for your DNS-pay wallets and services, but it's necessary to check details of the connection with your Corefy account manager.)

Connect Merchant Account

Step 1. Connect H2H account at the Corefy Dashboard

Press Connect at DNS-pay Provider Overview page in 'New connection' section and choose H2H Merchant account option to open Connection form.

Connect

Enter credentials:

  • Control Key
  • Endpoint ID
  • Multi Currency Integration
  • Login

Success

You have connected DNS-pay H2H merchant account!

API examples:

Minimum data set to create a payment invoices for payment_card_usd_hpp service

SALE

POST /api/commerce/payment-invoices HTTP/1.0
{
  "data":{
    "type":"payment-invoice",
    "attributes":{
      "service":"payment_card_usd_hpp",
      "commerce_account":"Hello World",
      "currency":"USD",
      "amount":1,
      "flow":"charge",
      "gateway_options":{
        "cardgate":{
          "tokenize":""
        }
      },
      "customer":{
        "reference_id":"85af8385-d00e-4f58-ab1f-3a527fdf2d3b",
        "name":"John Wick"
      },
      "test_mode":true,
      "options":{
        "allow_partially":false,
        "bypass_hpp":false,
        "send_operation_context_on_return":false
      },
      "reference_id":"d9a8b2e8-d1e1-40b2-8a57-0d425f7fee5f",
      "service_fields":[
      ]
    }
  }
}

Maximum data set to create a payment invoices for payment_card_usd_hpp service

SALE

POST /api/commerce/payment-invoices HTTP/1.0
{
  "data":{
    "type":"payment-invoice",
    "attributes":{
      "service":"payment_card_usd_hpp",
      "commerce_account":"Hello World",
      "currency":"USD",
      "amount":1,
      "flow":"charge",
      "gateway_options":{
        "cardgate":{
          "tokenize":""
        }
      },
      "customer":{
        "reference_id":"92134e0d-8aca-4e0b-b9fa-a0c8a2e3f0a9",
        "name":"John Wick",
        "email":"[email protected]",
        "phone":"+3806612341234",
        "date_of_birth":"2024-07-07",
        "address":{
          "full_address":"test street 123",
          "country":"FR",
          "region":"Paris",
          "city":"Paris",
          "street":"test street",
          "post_code":"12354"
        }
      },
      "test_mode":true,
      "options":{
        "allow_partially":false,
        "bypass_hpp":false,
        "send_operation_context_on_return":false
      },
      "reference_id":"ea02d04f-ae2b-4e09-91e4-e1d41c1d07fa",
      "service_fields":[
      ]
    }
  }
}

Constants

Сonstants

If some parameters are not sent in the transaction creation request, they will take the values from the set constants.

Here is a list of constants with their corresponding parameters:

  • PHONE → customer [phone]
  • EMAIL → customer [email]
  • DEFAULT_ADDRESS → customer [address] [address]
  • DEFAULT_CITY → customer [address] [city]
  • DEFAULT_POSTCODE → customer[address][post_code]
  • DEFAULT_COUNTRY → customer [address] [country]
  • BROWSER_INFO → constants [browser_info]
  • BROWSER_TZ_OFFSET → constants [browser_tz_offset]
  • BROWSER_SCREEN_WIDTH → constants [browser_screen_width]
  • BROWSER_SCREEN_HEIGHT → constants [browser_screen_height]
  • BROWSER_COLOR_DEPTH → constants [browser_color_depth]
  • BROWSER_LANGUAGE → constants [browser_language]
  • BROWSER_JAVA_ENABLED → constants [browser_java_enabled]
  • BROWSER_ACCEPT_HEADER → constants [browser_accept_header]
  • BROWSER_USER_AGENT → constants [browser_user_agent]
  • BROWSER_IP → constants [browser_ip]
  • DATE_OF_BIRTH → constants [date_of_birth]

Provider Options

Provider_Options

  • Ignore callback
  • for cascading to work correctly, we exclude the possibility of finalizing payments using asynchronous callbacks, ignore the callback, do not change the status of the transaction on it in any way and rely only on the status request for finalization (Reconciliation)
  • Use default browser info
  • Yes → default values from constants will be sent
  • No → default values will not be restored if browser info is not filled in constants
  • Allow callback for all transaction types
  • Adds the Notify_url or server_callback_url parameter to Sale
    • Yes → callback comes to Sale and Refund
    • No → callback comes only on Sale

Default values

If some parameters are not passed in the request to create a transaction and the corresponding constants have no values, then default values will be passed instead.

Here is the list of default values with their corresponding parameters:

  • DEFAULT_ADDRESS → 'Bergfriedstraße 19';
  • DEFAULT_CITY → 'Berlin';
  • DEFAULT_POSTCODE → '10969';
  • DEFAULT_COUNTRY → 'DE';
  • BROWSER_INFO → 'browser_info';
  • BROWSER_TZ_OFFSET → 'browser_tz_offset';
  • BROWSER_SCREEN_WIDTH → 'browser_screen_width';
  • BROWSER_SCREEN_HEIGHT → 'browser_screen_height';
  • BROWSER_COLOR_DEPTH → 'browser_color_depth';
  • BROWSER_LANGUAGE м 'browser_language';
  • BROWSER_JAVA_ENABLED → 'browser_java_enabled';
  • BROWSER_ACCEPT_HEADER → 'browser_accept_header';
  • BROWSER_USER_AGENT → 'browser_user_agent';
  • BROWSER_IP → 'browser_ip';
  • DATE_OF_BIRTH → 'date_of_birth';

Question

"Still looking for help connecting your DNS-pay account?" Please contact our support team!