Веб сервиси, API и плаћања – референце

Референце из портфеља у којима се системи договарају преко веба: наплата платним картицама на сајту, превод примера за платни сервис у други језик, веб сервиси које партнери и други програми позивају по унапред договореним правилима, провера токена и шифровање података који се шаљу у платни систем. Код оваквих послова не види се много на екрану, али грешка значи неизвршену наплату или податак који је стигао тамо где не треба. Овакве послове радим у оквиру услуга API интеграција и програмирања веб сајтова.

Плаћање платним картицама на веб сајту

Рађено у четвртом кварталу 2024.

Имплементација плаћања платним картицама на веб сајту www.dejandozet.com

Проблем

На сајту www.dejandozet.com требало је омогућити једноставно и сигурно плаћање банковним картицама, уз флексибилне опције плаћања и професионалну обраду података. Решење је морало да ради на више језика, да буде прилагођено мобилним уређајима и усклађено са IPM стандардима, а платни портал обезбедила је OTP банка (otpbanka.rs).

Решење

Посао је обухватио цео пут од ценовника до потврде наплате:

  • страница ценовника: производи и цене динамички се повлаче са веб API-ја;
  • корпица: стање се чува у прегледачу, без базе података;
  • страница за плаћање: прикупљање података, избор начина плаћања и провера уноса;
  • повезивање са банком: серверска обрада података и усмеравање на банковни портал за наплату;
  • приказ статуса наплате: страница са статусом, уз позадинску обраду и слање обавештења е-поштом;
  • прилагођен дизајн: изглед страница прилагођен свим величинама екрана;
  • IPM усклађеност: приказ доступних картица, услови пословања, политика приватности и тестирање са банком.

Коришћене технологије

Искуство из пројекта

Сарадња са особљем банке задуженим за ову услугу била је врло добра, али је било и тешких момената. Пред сам крај банка није могла да види ценовник, јер је њихов сигурносни систем блокирао скрипту која је учитавала производе, па је то морало да се реши пре пуштања наплате у рад.

Резултат

Посетиоци сајта плаћају картицом кроз цео ток, од избора у ценовнику до потврде наплате, на више језика и на свим уређајима, у складу са правилима банке.


Превод примера за Braintree плаћања из C# у VB.NET

Рађено у четвртом кварталу 2021.

Проблем

Клијент је имао готов пример ASP.NET веб апликације за Braintree плаћања, који је објавио QuickBooks, али написан у C#-у. Његов систем је радио у VB.NET-у, па му је требао исти пример у том језику, са истим понашањем и без губљења иједне функције.

Решење

  • превод кода: логика и функције постојећег C# кода преведене су у VB.NET;
  • очуване функционалности: све могућности C# верзије тачно су пресликане у VB.NET верзију;
  • тестирање и провера: после превода VB.NET верзија је темељно тестирана, да се понаша идентично као оригинал;
  • оптимизација: по завршетку превода код је прегледан и, где је било могуће, побољшан и поједностављен.

Коришћене технологије

  • C# програмски језик (programiranje.co.rs) и VB.NET: познавање оба језика било је услов за тачан превод.
  • ASP.NET: веб апликација на којој је пример заснован.
  • Braintree SDK: платни сервис чије су све функције морале да остану нетакнуте.

Резултат

Клијент је добио VB.NET верзију примера која ради исто као C# оригинал, спремну да се уклопи у његов систем.


Веб сервис за управљање наплатама са структурираним URI-јем

Рађено у првом кварталу 2021.

Проблем

За управљање наплатама између услуге за наплату и партнерских компанија био је потребан веб сервис коме сви партнери приступају на исти, унапред договорен начин. То је подразумевало структуриран URI по задатој шеми, са верзијом и називом ресурса у путањи — на пример /v1/bill-management/bills — како би размена података међу различитим компанијама била једноставна и предвидива.

Решење

  • структуриран URI: дизајниран и остварен по задатој шеми, као главна тачка приступа ресурсима;
  • сарадња са партнерима: интеракција услуге за наплату и партнерских услуга стандардизована је кроз дефинисани URI;
  • сигурност и перформансе: поред структуре URI-ја, посебан акценат стављен је на сигурност и брзину сервиса;
  • једноставна интеграција: сервис се лако уклапа у постојеће системе партнера.

Коришћене технологије

  • Веб сервиси: израђени по доброј пракси, ради стабилности, сигурности и скалабилности.
  • Дизајн структурираног URI-ја: приступ који олакшава употребу и интеграцију.

Резултат

Партнери приступају наплатама кроз јединствен и предвидив URI, а сервис ради беспрекорно, што потврђује и клијент.

Утисак клијента

★★★★★5/5

“Изузетан рад! Веб сервис функционише беспрекорно, а структурисан URI доприноси његовој ефикасности.”


VB.NET веб сервис са провером JWT токена

Рађено у првом кварталу 2021.

Проблем

Клијенту је требао веб сервис у VB.NET-у који тачно проверава JWT токен послат у заглављу захтева и исти токен враћа у свом одговору, без икаквих безбедносних пропуста у том току.

Решење

  • провера JWT токена: сервис проверава исправност и аутентичност токена примљеног у заглављу захтева;
  • токен у одговору: после провере сервис исти токен укључује у одговор, па проток података остаје непрекинут;
  • безбедност: посебна пажња посвећена је томе да провера токена и одговор не буду рањиви на безбедносне пропусте;
  • израда у VB.NET-у, тако да се сервис уклапа у клијентово окружење.

Коришћене технологије

  • VB.NET: језик у коме је сервис написан.
  • JWT (JSON Web Tokens): протокол аутентификације.

Резултат

Клијент је добио сервис који поуздано проверава токене и враћа их у одговору; за клијента је то био још један успешно завршен заједнички пројекат.

Утисак клијента

★★★★★5/5

“Још један успешан пројекат са Дејаном. Лакоћа комуникације и дубина његовог стручног знања чине да пројекат тече несметано.”


Веб сервис за слање е-поште, покретан по распореду

Рађено у четвртом кварталу 2020.

Проблем

Клијент је желео једноставан веб сервис за слање е-поште, који би радио и на интернету и локално, а покретао се на време помоћу заказаног Windows сервиса. Отворено је рекао да не познаје ни веб сервисе ни Windows сервисе, па му је требало целовито, али разумљиво решење.

Решење

  • веб сервис за слање е-поште: поуздан сервис који испуњава главни захтев клијента;
  • двојна примена: апликација је подешена да ради и на интернету и у локалном окружењу;
  • заказано извршавање: Windows сервис покреће веб сервис у задато време, па је рад доследан и правовремен;
  • објашњен сваки корак: клијент је уз решење добио и разумевање како оно ради.

Коришћене технологије

  • .NET Framework: израда веб сервиса.
  • Windows Service: заказано покретање.
  • Локални сервер и хостинг на интернету: два окружења у којима сервис ради.

Резултат

Сервис шаље е-пошту по распореду, и локално и на интернету, а клијент разуме решење које користи.

Утисак клијента

★★★★★5/5

“Изузетно ценим едукативни приступ током овог пројекта. Дејан није само испоручио одлично решење, већ је и осигурао да разумем сваки корак. Његова стручност и доступност су за сваку похвалу. Високо препоручујем свима који траже знање и резултате!”


RSA шифровање података за плаћање у VB.NET-у

Рађено у четвртом кварталу 2020.

Проблем

За плаћање преко платног дугмета на сајту, износ и број поруџбине морали су да се пошаљу платном систему шифровани RSA методом, у POST захтеву. Клијент је имао исправне примере тог поступка у PHP-у и Јави, али му је требало исто у VB.NET-у, у коме је радио његов систем.

Решење

  • RSA шифровање и дешифровање: једноставне функције за оба смера, у VB.NET-у;
  • уклапање у форму: шифровани износ и број поруџбине тачно се прослеђују у POST захтеву;
  • анализа примера: PHP и Java примери су проучени, а њихов исход пресликан у VB.NET;
  • сигурност података: осетљиви подаци, као што су износи и бројеви поруџбина, остају заштићени током целог поступка.

Коришћене технологије

  • VB.NET: језик у коме су функције написане.
  • RSA шифровање: заштита података који се шаљу платном систему.

Резултат

Клијентов VB.NET систем шаље платном систему износ и број поруџбине шифроване на исти начин као PHP и Java примери.

Треба вам повезивање са платним или другим системом?

Шта улази у посао, како се одређује цена и како изгледа ток рада, пише на страницама API интеграције и програмирање веб сајтова. Погледајте и систем за подсетнике о дуговањима са Xero и Stripe интеграцијом и WordPress API интеграције, а остале радове међу референцама за API интеграције.