Интеграция с вашата услуга

Търговец

Създайте приложение

Използвайте метода public/exchanger/order/create

Име Описание Тип
routeId директен идентификатор ObjectID
partner партньорски код STRING
amount сума FLOAT
fromValues[0][key] полеви ключ ObjectID
fromValues[0][value] стойност за полето STRING
toValues[0][key] полеви ключ STRING
toValues[0][value] стойност за полето STRING
routeValues[0][key] полеви ключ ObjectID
routeValues[0][value] стойност за полето STRING
lang език STRING
agreement договор BOOLEAN
hideOutData скрий детайлите BOOLEAN
clientCallbackUrl обратно извикване, когато приложението приключи, клиентът ще види бутон за връщане към сайта и клиентът ще бъде пренасочен към този URL. ?status=success или на ?status=error STRING
ipnUrl URL адрес за известие за незабавно плащане (ще бъде извикан при промяна на статуса на поръчката) STRING
ipnSecret низ за създаване на защитен хеш в ipn url STRING

Документация за системата за оторизация можете да намерите в личния си акаунт.

IPN (Известие за промяна в статуса на заявка за плащане)

За да получите известие за промяна в статуса на приложение по време на неговото създаване, трябва да изпратите допълнителни параметри:

  • clientCallbackUrl - обратно извикване, когато приложението приключи, клиентът ще види бутон за връщане към сайта и клиентът ще бъде пренасочен към този URL.
  • hideOutData - скриване на данните за получателя
  • ipnUrl - HTTP/HTTPS връзка за уведомяване на вашия сървър.
  • ipnSecret - Произволен низ за генериране на подписа на заявката (за поддържане на целостта на заявката)
  1. Заявката ще бъде изпратена чрез метода POST
  2. IPN ще бъде изпратен веднъж
  3. Доставката на IPN не е гарантирана (ако сървърът не е отговорил на заявката, тя няма да бъде изпратена повторно)

Примерен IPN

  • POST
  • ['Content-Type'] = 'application/x-www-form-urlencoded'


  • orderUID :Number() - приложение uid
  • orderId :String(ObjectId) -приложение id
  • newStatus :String() - приложение текущо състояние
  • inAmount :String(number) - order in sum
  • outAmount :String(number) - order out sum
  • xml_from :String() - приложение uid
  • xml_to :String() - приложение uid
  • timestamp :Number() - unix време и ipn известия
  • toValues :Array([{key,name,value}]) - подробности за приложението

page.merchants.statusesList

  • new - ново приложение
  • waitPayment - очакваме плащане от потребителя
  • errorPayment - грешка при плащането на потребителя (грешка при доставката на продавача)
  • inProgress - в процес (изчакване на обработка от администратор или плащане на приложението)
  • inProgressPayout - в опашка за плащане (плащането е прието успешно) (ако е конфигурирано автоматично плащане във валута, то ще бъде инициализирано)
  • errorPayout - грешка при плащане (възникна грешка при плащане)
  • hold - приложението е замразено (проблеми с приложението)
  • done - приложението е платено успешно
  • returned - заявлението е платено, но не са изпълнени всички условия за обмен и методи за връщане на подателя
  • deleted - приложението е изтрито (отменено)

Поискайте проверка на контролна сума (IPN).

sha256(orderId:newStatus:inAmount:outAmount:xml_from:xml_to:timestamp:ipnSecret)

        
const stringForHash = orderId+":"+newStatus+":"+inAmount+":"+outAmount+":"+xml_from+":"+xml_to+":"+timestamp+":"+ipnSecret;
// example string for hash 5d8e6002b80b7b4cd75a6424:inProgress:2:317.42:ETH:WMZ:1571328406072:SECRET123

const hash = crypto.createHash('sha256').update(stringForHash).digest('hex')
// example hash af3acf947e6f0e0f2c267e300b8582e504dba12d1f2d058652b7414163c09f48
        
      

Контрол на плащанията

  1. Ако трябва да наблюдавате състоянието на заявките, създайте ги с помощта на оторизация, всички заявки ще бъдат показани в личния ви акаунт;
  2. Можете да запишете UID на заявката и тайната и да отидете ръчно до заявката, като посочите тези подробности в адресната лента

Плащане

  1. Можете да използвате /payment/ за показване на страницата за плащане

    // schema
    https://nimlab.eu/user-lang/payment/order-uid/order-secret
    // example result
    https://nimlab.eu/en/payment/1409/dGqwF2M2eBPaSN1G5ljMS1cb
  2. Също така можете просто да дадете линк към борсата, тъй като тя се вижда от всички клиенти по същата схема, както в първия вариант, с изключение на /плащане/ трябва да се замени с /поръчка/
  3. Методът има параметри, които ви позволяват да показвате данни за плащане или формуляр за плащане на вашия сайт, който можете да използвате.