Nemo web services payment integration for mobile apps: различия между версиями

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Новая страница: «== Available web-services == Before sending payment transactions you have to create a successfull booking. Status of the order should be "booked". After that you …»)
(нет различий)

Версия 13:36, 21 января 2015

Available web-services

Before sending payment transactions you have to create a successfull booking. Status of the order should be "booked". After that you can go to the payment. There are three web services used in payment process:

  • Payment initialization

WSDL address: http://CLIENT_DOMAIN/wsdev/wsdl.php?version=1.0&for=PaymentInitialization

Documentation: Getting list of allowed payment gateways

  • Selecting a payment method

WSDL address: http://CLIENT_DOMAIN/wsdev/wsdl.php?version=1.0&for=SelectPayment

Documentation: Selecting a payment method

  • Order updating

WSDL address: http://CLIENT_DOMAIN/nemoflights/wsdl.php?version=1.0&for=UpdateBook

Documentation: Order updating

Payment workflow

Below there is the scheme of payment workflow.

Payment workflow.png

Description of the background order synchronization

There are two situations when this process should be run:

  • Due to some reasons (lost internet connection, etc.) user was not redirected to UrlToCatch.
  • Payment status of the order was not delivered yet from payment gateway to Nemo system and it is required additional in a few seconds or minutes.

Order synchronization is periodically sending UpdateBook request to get actual common and payment statuses.

! Warning! Do not send this request very often. No more than one request per 3 minutes. Also do not send it infinitely while you do not get PaymentStatus=”fully_paid” and Status=”ticket”. Limit the total number of synchronization requests to some value. There is a recommendation for periods of synchronization. Firstly send synchronization request 5 times for every 3 minutes. Then send request 6 times for every 10 minutes. If successfull statuses were not retrieved, you should terminate synchronization.