Skip to main content

Callback

განსხვავებით სხვა მეთოდებისგან, როდესაც გამოძახების ინიციატორი იყო ონლაინ მაღაზია, callback მეთოდის გამოძახება ონლაინ გადახდების სისტემიდან ხდება, ხოლო ინფორმაციის მიღება და დამუშავების ლოგიკა ონლაინ მაღაზიის მხარეს უნდა იყოს რეალიზებული. ეს მეთოდი საშუალებას გაძლევთ, რეალურ დროში მიიღოთ ინფორმაცია გადახდის სტატუსის ცვლილების შესახებ. თითოეული ონლაინ მაღაზიისთვის callback მისამართების გაწერა ხდება მისი ბანკში მერჩანტად დარეგისტრირების დროს (იხილეთ შესავალი). გადახდების სისტემაში ხდება ორი ტიპის callback url-ის გაწერა:

შემდგომში, უკვე გადახდის სტატუსის ყოველი ცვლილების დროს, წინასწარ გაწერილ callback მისამართზე იგზავნება POST მეთოდით გადახდის დეტალები. პასუხის წარმატებით მიღების დასადასტურებლად, მერჩანტმა უნდა დააბრუნოს HTTP CODE 200. ინფორმაციის წარუმატებლად გაგზავნის შემთხვევაში, ყოველ 15 წამში, იგზავნება განმეორებითი მოთხოვნა, სანამ მცდელობის რაოდენობა არ მიაღწევს 5-ს ან მერჩანტი არ დააბრუნებს HTTP CODE 200 სტატუსს. თუ ვერ მოხერხდა callback-ის წარმატებით გამოძახება, გადახდის სტატუსი მაინც წარმატებულია. სტატუსის გადასამოწმებლად მერჩანტმა უნდა გამოიყენოს გადახდის დეტალების მეთოდი.

note

შენიშვნა: callback-ს არაფერი აქვს საერთო მერჩანტის გადახდების ონლაინ სისტემიდან მის ონლაინ მაღაზიის ვებგვერდზე გადამისამართებასთან. გადამისამართება ხდება შეკვეთის მოთხოვნის request-ში, მერჩანტის მიერ გადაცემული redirect_url პარამეტრში მითითებული მნიშვნელობის მიხედვით.

Body-ს პარამეტრები

statusstring

გადახდის სტატუსი. იღებს შემდეგ მნიშვნელობებს:

  • success - გადახდის პროცესი დასრულდა წარმატებით.
  • error - გადახდის პროცესი დასრულდა წარუმატებლად.
  • in_progress - გადახდის პროცესი არაა დასრულებული. თუ ორდერის გენერაციიდან 1 საათში მომხმარებელი არ დაასრულებს ტრანზაქციას, ის ავტომატურად გაუქმდება და გადავა error სტატუსზე. ეს სტატუსი ენიჭება გადახდას, როდესაც მომხმარებელი გადამისამართდება ბანკის ონლაინ გადახდის ვებგვერდზე, ხოლო ცვლილება ხდება გადახდის პროცესის წარმატებით ან წარუმატებლად დასრულების შემდეგ.

payment_hashstring

შეკვეთის მოთხოვნის დროს, გადახდების ონლაინ სისტემის მიერ დაგენერირებული გადახდის უნიკალური ჰეშირებული იდენტიფიკატორი.

ipay_payment_idstring

გადახდის იდენტიფიკატორი ipay სისტემაში (ჩანს ასევე გადახდის ქვითარზე).

status_descriptionstring

დამატებითი ინფორმაცია სტატუსის შესახებ. მაგალითად, თუ status=error, აქ ეწერება შეცდომის აღწერა.

shop_order_idstring

მერჩანტის გადახდის იდენტიფიკატორი.

payment_methodstring

გადახდის მეთოდი. შეიძლება მიიღოს შემდეგი მნიშვნელობები:

  • BOG_CARD გადახდა შესრულებულია ავტორიზაციით.
  • GC_CARD გადახდა შესრულებულია ბარათით.
  • BOG_LOAN განვადებით ყიდვა.
  • BOG_LOYALTY გადახდა შესრულებულია PLUS ან MR ქულებით.
  • UNKNOWN ბრუნდება იმ შემთხვევაში თუ ორდერის სტატუსი არის error ან in_progress.

card_typestring

თუ გადახდის ტიპი არის BOG_CARD ან GC_CARD, იწერება ბარათის ტიპი. დანარჩენ სხვა შემთხვევაში იწერება UNKNOWN. ბარათის ტიპი შეიძლება იყოს ქვემოთ მოცემულიდან ერთ-ერთი:

  • MC - Mastercard
  • VISA - Visa
  • AMEX - American Express

panstring

ბარათის 16-ნიშნა ნომერი. ჩანს მხოლოდ პირველი 6 და ბოლო 4 ციფრი. დანარჩენი ციფრების ნაცვლად მითითებულია „*“. შევსებულია მხოლოდ მაშინ, თუ გადახდის სტატუსი არის success და payment_method არის GC_CARD.

transaction_idstring

Georgian Card-ში ტრანზაქციის იდენტიფიკატორი. შევსებულია მხოლოდ მაშინ, თუ გადახდის სტატუსი არის success და payment_method არის GC_CARD.

pre_auth_statusstring

პრეავტორიზაციის სტატუსი. ბრუნდება მხოლოდ მაშინ, თუ ორდერის გენერაციის დროს, capture_method არის MANUAL და ორდერის სტატუსი არის success.

capture_method string

  • success - პრეავტორიზაცია დამოწმებულია და თანხა გადარიცხულია მერჩანტთან.
  • in_progress - მიმდინარეობს პრეავტორიზაცია. თანხა დაბლოკილია და შესაძლებელია დამოწმება და განბლოკვა.
  • success_unblocked - პრეავტორიზაცია განბლოკილია. თანხა დაბრუნებულია მომხმარებლის ანგარიშზე და ჩანს ხელმისაწვდომ თანხებში.

გადახდის სტატუსის ცვლილების callback

  Content-Type: application/x-www-form-urlencoded
Request Method: POST
  status: success | error 
order_id: string
payment_hash: string
ipay_payment_id: string
status_description: string
shop_order_id: string
payment_method: GC_CARD | BOG_CARD | BOG_LOYALTY | BOG_LOAN | UNKNOWN
card_type: MC | VISA | AMEX | UNKNOWN

Payment Amount Return callback

  order_id: string
payment_hash: string
ipay_payment_id: string
status_description: string
shop_order_id: string
payment_method: GC_CARD | BOG_CARD | BOG_LOYALTY
card_type: MC | VISA | AMEX