Skip to content

Integration Process#

This page describes the main aspects of the merchant integration process with the payment system via Merchant API.

Will be provided by payment system technical specialists#

  1. <YOUR-API-KEY> - your merchant API key [for the stage and prod environments]. See the "Request Authorization" page
  2. <host> - the payment system hostname for sending requests [for the stage and prod environments]
  3. URLs and credentials for the merchant backoffice (Web GUI) [for the stage and prod environments]
  4. methodID values for creating orders
  5. List of bank names available for payouts (PayOut)
  6. List of bank names available for deposits (PayIn)
  7. Specific field requiredness conditions in requests
  8. Public RSA key for webhook signature verification [for the stage and prod environments]. See the "Callbacks" page

stage and prod Environments#

A separate stage environment is used for integration testing. Orders created in it do not affect orders in the prod environment in any way.

Testing in prod is possible only after successful debugging on stage!

Conditions for Testing on stage#

  • Orders with an amount less than 10_000 c.u. (exclusive) will be processed successfully
  • Orders with an amount of 10_000 c.u. or more (inclusive) will be rejected

Additionally, the stage environment provides magic amounts for test automation - they allow you to obtain the required terminal order status on your own, without the help of the system operator:

Amount Case Outcome
11 Deposit or payout in success succeeded
22 Client transferred after the order was closed succeeded_by_appeal
33 Client transferred a different amount succeeded_by_appeal
44 Deposit or payout in fail depends on direction

Path to the terminal status:

  • 11 - the order goes to succeeded
  • 22 - the order goes to expired, then is closed via a system appeal to succeeded_by_appeal for the same amount
  • 33 - the order goes to expired because the amounts do not match, then is closed via a system appeal to succeeded_by_appeal with the new amount 100 (33 + overpayment 67)
  • 44 - PayIn goes to expired, PayOut goes to all_terminals_failed