Design a Payment System - System Design Interview

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 มิ.ย. 2024
  • Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap
    ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-...
    0:00 - Context
    0:45 - How a payment system works?
    3:05 - Scope the problem
    5:21 - Functional and Non-Functional Requirements
    6:05 - Payment System Components
    8:27 - Asynchronous Payments
    12:40 - Dealing with Payment Failures
    13:17 - Guarantee transaction completion
    14:59 - Dealing with Transient Failures
    17:54 - Timeout Pattern
    19:58 - Fallbacks
    20:55 - Dealing with Persistent Failures
    22:36 - Idempotency (Avoid double payments)
    25:14 - Making use of Distributed Systems
    26:56 - Encryption for Data-at-Rest and Data-in-Transit
    29:31 - Data Integrity Monitoring
    20:43 - Conclusions
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 107

  • @kkakaneilthomas5190
    @kkakaneilthomas5190 3 หลายเดือนก่อน +4

    I'm a PM for a fintech firm. This video is brilliant!! There were so many edge cases that you laid out very well and also explained industry standard solutions. Also, you've structured the video really well. Top class!!! Would've loved if you included DB design as well, but that'd probably be me asking for too much. Thanks again.

  • @teemalukez3729
    @teemalukez3729 10 หลายเดือนก่อน +55

    I’ve been working with payment systems for 2 yrs now. This video has just validated that I haven’t been wasting my time for the past 2 yrs, even though most of the time, I feel like I don’t know what the hell I’m doing 😅. Thank you so much for this video ✌🏾

    • @pooyamiri5875
      @pooyamiri5875 5 หลายเดือนก่อน +1

      I am trying to learn about SWIFT payment system. Do you know any good reference? Thanks

  • @RaghunandanChakravarthy
    @RaghunandanChakravarthy ปีที่แล้ว +39

    Thank you for this video. Any System Designer or a Technical Architect can easily understand the effort and hard work to come up with such presentable content and sharing knowledge.

  • @alexanderzuev6355
    @alexanderzuev6355 ปีที่แล้ว +14

    Wanted to say thanks for this video! In contrast to some other videos on this topic you stay very neat, have really great structure (thanks for breaking the discussion in parts). Keep it up!

  • @carlostelevida
    @carlostelevida 8 หลายเดือนก่อน +14

    there's no other video outhere like this, this kind of effort is really appreciated. ❤

  • @onionsandwich
    @onionsandwich 8 หลายเดือนก่อน +4

    This is pure ambrosia. Ah, feed me more, feed me more. I'm savoring each video in the playlist, one at a time, to make it last as long as possible.

  • @freefortravelsshorts7014
    @freefortravelsshorts7014 10 หลายเดือนก่อน +7

    This is very well presented op. Kindly share more such videos of complicated systems. This is simply great work, extremely helpful and an amazing free resource for folks preparing for an interview. So a big thank you on behalf of everyone!

  • @PRATIKGHATAK
    @PRATIKGHATAK ปีที่แล้ว +8

    This is absolutely remarkable. Loved how detailed the vlog was covering all the aspects of the implementation. Thank you very much for sharing.

  • @anwar-arif
    @anwar-arif 9 หลายเดือนก่อน +1

    Very well explained. This is the best video on payment system I've ever searched for. Thanks for sharing

  • @yungifez
    @yungifez ปีที่แล้ว

    Man, you know your channel is good when I watch the first video I encounter and subscribe

  • @eugeneyap4208
    @eugeneyap4208 10 หลายเดือนก่อน +7

    Came across this video with the intention of learning kafka in payment system, but ended up learning a lot more on the payment system design.
    Thanks for the well presented video. Just subscribed to this channel =)

  • @anirbanchatterjee7766
    @anirbanchatterjee7766 11 หลายเดือนก่อน +2

    Awesome understanding of the system underlying a payment service architecture.

  • @rasthana
    @rasthana ปีที่แล้ว +4

    Excellent Video. High quality content. Thanks for your efforts in sharing this knowledge. This is very helpful.

  • @huangli8924
    @huangli8924 7 หลายเดือนก่อน +2

    what a nice explaination about the whole flow! thank you so much!

  • @codewithray
    @codewithray 9 หลายเดือนก่อน +1

    Thanks for sharing this video. You've nicely explained various aspects of designing payment systems.

  • @mohamedolabi493
    @mohamedolabi493 11 หลายเดือนก่อน

    animation , information , details, clear voice, well done

  • @uminhtetoo
    @uminhtetoo ปีที่แล้ว +1

    Thank you so much for sharing your knowledge, Sir.

  • @khanhbq
    @khanhbq 11 หลายเดือนก่อน

    I gained so much knowledge after seeing your video. Thank you so much!

  • @AdrianMark
    @AdrianMark 10 หลายเดือนก่อน +4

    A truly well presented and thought out video. Learning so much from you. Ps. Don't listen to the guy with the comment on your intonation. You sound a little bit like Károly Zsolnai-Fehér, the voice behind "Two Minutes Papers", which is huge. Hopefully your channel becomes just as big! Keep it up, and thank you for sharing your impeccable logic and comprehensive knowledge.

  • @jasonl412
    @jasonl412 ปีที่แล้ว

    This is a fantastic radio and i learn a lot from it. I'm looking for rewards more radio coming out in the near future. Thank you.

  • @tuyetlanvu
    @tuyetlanvu หลายเดือนก่อน

    Thank you so much for the effort you put into this video! Your explanation is incredible and the graphic is easy to understand 😊. I instantly subscribed.

  • @RicardoSilvaTripcall
    @RicardoSilvaTripcall 4 หลายเดือนก่อน

    Great video, congrats !!!
    Lots of very important concepts explained in such an easy way.

  • @2270sasa
    @2270sasa 10 หลายเดือนก่อน +1

    Thank you so much, It was nicely explained and included every aspect! Good Luck

  • @rajatgoyal715
    @rajatgoyal715 3 หลายเดือนก่อน

    Thanks a ton for covering so many topics 🙌❤

  • @jeffs4810
    @jeffs4810 5 หลายเดือนก่อน +1

    Nice explanation with a good blend of high level and low level concepts. The most important thing that I learned though is that I never want to be involved with a payment system 😀

    • @AP-eh6gr
      @AP-eh6gr 4 หลายเดือนก่อน +1

      lmao

  • @VarunKumar-ql6zn
    @VarunKumar-ql6zn 3 หลายเดือนก่อน

    many thanks for detailing a wonder design approach

  • @eligbuefelix7988
    @eligbuefelix7988 ปีที่แล้ว

    Thanks man, highly contentful.

  • @allanaporjr7300
    @allanaporjr7300 ปีที่แล้ว

    Its excellent video! Very helpful! Thanks for sharing!

  • @TomasMisura
    @TomasMisura 8 หลายเดือนก่อน

    thank you for this video, it helped me a lot!

  • @user-bo7by5vr8b
    @user-bo7by5vr8b 9 หลายเดือนก่อน

    Thank you soo much for such useful content.

  • @carlosportillo6915
    @carlosportillo6915 3 หลายเดือนก่อน +1

    Amazing video, thanks for sharing

  • @vusalahasanli4200
    @vusalahasanli4200 5 หลายเดือนก่อน

    Thank you for nice presentation and simple explanation:)

  • @stevieboi61
    @stevieboi61 ปีที่แล้ว

    good job bro. thx for your time, effort & sharing.

  • @shabascka
    @shabascka 9 หลายเดือนก่อน

    Great content. Thanks

  • @reefat0904
    @reefat0904 ปีที่แล้ว

    Excellent Video.

  • @bobobo1673
    @bobobo1673 ปีที่แล้ว

    Amazing explanation

  • @auroshisray9140
    @auroshisray9140 11 หลายเดือนก่อน

    Insightful video... Thank You!!

  • @RajdeepBiswasInd
    @RajdeepBiswasInd 3 หลายเดือนก่อน

    Very good and relevant explanation. Just edit the video and add the HLD.

  • @Optimus_Prime_69
    @Optimus_Prime_69 2 หลายเดือนก่อน

    Thanks for this informative video

  • @trantrungkien2790
    @trantrungkien2790 10 หลายเดือนก่อน +1

    Nice content!! Please make more videos about Design X system please ❤

  • @balajisairamnarasimhan
    @balajisairamnarasimhan 9 หลายเดือนก่อน

    Thank you so much for the content I worked on the payments for 1 year did t knew these intricate details

    • @balajisairamnarasimhan
      @balajisairamnarasimhan 9 หลายเดือนก่อน

      We actually don’t need a wallet services here as psp provides those wallet with secured vault
      For us . As in any tokenized payments can be securely stored with them for any future purpose

  • @srinivaskunani1582
    @srinivaskunani1582 10 หลายเดือนก่อน

    Great presentation. Thank you. Became a subscriber.

  • @CertificationTerminal
    @CertificationTerminal 10 หลายเดือนก่อน

    Great work!

  • @mohammedsardar3779
    @mohammedsardar3779 ปีที่แล้ว +3

    Nice video. Can you brief about how the distributed transaction would have been handed if state machine is used for state transition in payments system. It was the architecture of previous project but i want to have more clarity to implemented state machine to get some practice. Thanks.

  • @TeChBoYaks
    @TeChBoYaks ปีที่แล้ว

    Thanks alot ! :)
    Very nice content .. Keep going ...

  • @yuriyr.1338
    @yuriyr.1338 ปีที่แล้ว

    Thank you for the amazing high quality content!🔥

  • @OpenDeepLearning
    @OpenDeepLearning ปีที่แล้ว

    Thanks!

  • @bikosankara7417
    @bikosankara7417 ปีที่แล้ว

    Keep up the good work sir

  • @egor.cleric
    @egor.cleric 7 หลายเดือนก่อน +1

    I would say, that the problem in distributed systems is not 'tight coupling', but in 'high cohesive'. Because one service cannot make system working without another one, but that's ok. Tight coupling means - when you change something in one service - it leads to changes in another service - that's what we should avoid.
    I would suggest to check the principles 'low coupling - high cohesive'

  • @harinathtech
    @harinathtech ปีที่แล้ว

    Thanks lot for this 🏅knowledge Sharing This is very Help full to up skill for my career

  • @moshoodolawale3591
    @moshoodolawale3591 ปีที่แล้ว +2

    Thanks. What do you use for your slide presentation and if possible sharing the slides with us?

  • @abdoulayeoubale4949
    @abdoulayeoubale4949 4 หลายเดือนก่อน

    Thank you very much for this video. you can do one but concerning the Escrow payment system

  • @Trex13
    @Trex13 9 หลายเดือนก่อน +1

    Good video with nice explaination. Only feedback would be the delivery of content. You sound very robotic and that makes watching the video a little boring at times. Perhaps change the pitch and tone of your voice to keep the audience engaged. Keep up the good work!!

  • @SoulsExpert
    @SoulsExpert 6 หลายเดือนก่อน

    awsome thx

  • @jaimalad2902
    @jaimalad2902 ปีที่แล้ว

    awesome

  • @ng.manisha
    @ng.manisha 2 หลายเดือนก่อน

    Great video. Could you please share a link to the final design diagram as well, and if possible api design and db model? That would really clear major system design concepts

  • @AjaySingh-rb4xj
    @AjaySingh-rb4xj ปีที่แล้ว

    Should failed transaction also be added to the ledger DB?

  • @IhsanMujdeci
    @IhsanMujdeci 5 หลายเดือนก่อน

    I think for payments we would want to do sync communication or wait for a success message from the payment provider. We don't want to approve a transaction until it has been confirmed.

  • @erickim89
    @erickim89 ปีที่แล้ว +2

    Found this system design playlist: th-cam.com/play/PLmtNcpUq3YIJequI5FneNkiEGiHmwm3_o.html

  • @smiley2827
    @smiley2827 10 หลายเดือนก่อน

    7:26 What abour SDK integrations? You have still hosted the payment page at your side, customizing it as you like and when user submits the data goes to PSP for confirmation without need of compliance regulations.

  • @elabeddhahbi3301
    @elabeddhahbi3301 ปีที่แล้ว

    hat's off

  • @GnaneshwarQvesty
    @GnaneshwarQvesty 5 หลายเดือนก่อน

    wouldn't the payment gateway send the information to the card network like visa, master card and then from there to the acquiring bank ?

  • @double_courage57
    @double_courage57 11 หลายเดือนก่อน

    @1:48 The sequence is incorrect. Visa/Mastercard gateway will interface with receiving bank to credit amount to company’s operating account.

    • @lyondaddio
      @lyondaddio 10 หลายเดือนก่อน

      Actually, the authorization goes to the issuer and recorded at the gateway (auth response). The transactions are later settled via clearing/settlement by the backend processor, which usually is not necessarily the same as the acquirer. Then the funds are transferred to the merchant by the processor. Parts of this design in this video are missing and would not work in the real world.

  • @lalithamadhu2453
    @lalithamadhu2453 6 หลายเดือนก่อน

    Why do we need the wallet when there is a ledger that can show the balance amount? If wallet shows the remaining amount, why does a merchant like amazon needs to check it's wallet?

  • @NaveenKumar-br7wb
    @NaveenKumar-br7wb 5 หลายเดือนก่อน

    What software you use to create these type of animation ?

  • @artemsokolov5007
    @artemsokolov5007 8 หลายเดือนก่อน

    Didn't got why failure or slowness in 3rd party service affect the whole system. It affects only the requests that needs that information right now, isn't it?

  • @ANSHULGUPTA880
    @ANSHULGUPTA880 11 หลายเดือนก่อน +1

    Where is the final design?

  • @elgrillodelanoche
    @elgrillodelanoche 7 หลายเดือนก่อน

    I have a cuestion how much is te cost for this kind of app?

  • @janinarubacha
    @janinarubacha 5 หลายเดือนก่อน

    It's a great video. Just tell your voice guy to practice how to pronounce synchronous and asynchronous

  • @ChetanSankhala
    @ChetanSankhala ปีที่แล้ว +3

    video content is good. no doubt.
    but honestly speaking, I feel sleepy after hearing your voice for few minutes

  • @andugatachew-kf1nl
    @andugatachew-kf1nl 5 หลายเดือนก่อน

    Anz, pressors

  • @chessmaster856
    @chessmaster856 10 หลายเดือนก่อน

    Exponential backoff has no value.we don't want retry interval to become 128 days. Fixed delay of a minte or 5 minute will not burden system.

  • @mahadihasan6971
    @mahadihasan6971 10 หลายเดือนก่อน +2

    improve your sound quality. it's very low

  • @helloworld12494
    @helloworld12494 4 หลายเดือนก่อน +7

    I don’t know if anyone actually will ask to design a payment system. But based on this design, you’re simply over complicated. And we will never have any system that actually design this way in reality. Payment system is a general term that covers a ton of processes under the hood. In practice, companies only focus on 1 aspect in the payment system, e.g. payment network, payment processor, etc.

    • @nhwhn
      @nhwhn 2 หลายเดือนก่อน

      and your work leaks money, good luck

    • @sgg797
      @sgg797 หลายเดือนก่อน +3

      He has at least explained in detail about various processes and rationale behind them. You better go ahead and watch some other video

    • @manuchehrraupov9798
      @manuchehrraupov9798 23 วันที่ผ่านมา

      I agree

  • @andugatachew-kf1nl
    @andugatachew-kf1nl 5 หลายเดือนก่อน

    Account chnig

  • @geralt274
    @geralt274 3 หลายเดือนก่อน

    I am on full volume and still can't hear some words. You should decrease volume of ur videos even lower, lol

  • @allan801
    @allan801 หลายเดือนก่อน +1

    Sorry, this design is not best practice. You have 3 to 5 seconds to process a payment request and if that response is not delivered it is reversed, you don't use idempotency or retries to try to get an approval, if it was not approved in the initial attempt time window it is dead. Maybe this design works for b2b payments where you control the clients attempts, but it does work when you are servicing a live customer waiting. But your design would work for things like account creation or something else, just mot money movement when a live customer is involved.

  • @Jody-nf2bz
    @Jody-nf2bz 9 หลายเดือนก่อน

    He uses 10 to 15 comas on every sentence, which makes it really annoying!

  • @dariokartal9453
    @dariokartal9453 ปีที่แล้ว +17

    Prosody refers to pitch, duration, amplitude and all other vocal aspects of speech that are used to make contrasts in meanings. Tone refers to pitch patterns that make lexical, grammatical or morphological contrasts. Intonation refers to the melodic facet of prosody, although the term sometimes is interchangeable with tone. Well, it so happens that your tone/intonation has an extremely irritating monotony to it. It is a torturous experience to go through your entire video. Do yourself, and please do us, a favor to learn how to make the quality of your delivery - approach the high quality of your content. You seem like someone who can achieve that improvement if they try.

    • @yogi2983
      @yogi2983 ปีที่แล้ว

      it's definitely a cultural thing. You could have more empathy instead of writing such a bs comment. Now you go do your own video and use your "melodic facet" of blah blah blah

    • @FreerunningGamer
      @FreerunningGamer 10 หลายเดือนก่อน +13

      I think the video was good and his speech was very clear. It's TH-cam, just stop watching if you don't like it.

    • @AdrianMark
      @AdrianMark 10 หลายเดือนก่อน +4

      ​@@FreerunningGamer I agree with you. There's nothing wrong with the way the speaker is conveying his thoughts. Honestly, the information itself is worth sitting through a bad talk, but I found nothing wrong with the speaker's voice. Obviously this commenter is at the wrong video for their listening capacity. Also, why would anyone sit through an entire TH-cam video in aggravation, just to leave a comment about it later! 😂 What a weirdo.

    • @pinecedar180
      @pinecedar180 8 หลายเดือนก่อน +1

      Yes. Best to hire a native speaker

    • @ricardomartinez1
      @ricardomartinez1 6 หลายเดือนก่อน

      Sadly, this is true.

  • @sivam5204
    @sivam5204 5 หลายเดือนก่อน

    Nicely done video