Coder Social home page Coder Social logo

billing's Issues

JUnit 테스트 작성

  • 부분취소 API를 구현하고 Test Case 작성
- 정책
1. 결제 한 건에 대해서 모두 취소가 될 때까지 부분 금액으로 계속 취소할 수 있습니다.
2. 부가가치세 검증 로직 : 결제금액의 부가가치세 = 모든 부분취소 부가가치세의 합
3. ex. 10,000원 결제시 1,000원씩 10번 취소 가능
4. "2. 결제취소 API"에 기능을 추가해도 되고 API를 추가해도 됩니다.(단, api interface는 동일하게 합니다.)

결제 시스템 정책

  1. 저장하는 string 데이터
  2. 부가가치세
  3. 카드정보 암/복호화
  4. 트랜잭션 데이터 관리

결제 데이터 CRUD JPA

  • H2 DB 연동
1. 결제 API
- 카드정보과 금액정보를 입력받아서 카드사와 협의된 string 데이터로 DB에 저장합니다

2.  결제취소 API
- 결제에 대한 전체취소는 1번만 가능합니다.
- 부가가치세 정보를 넘기지 않는 경우, 결제데이터의 부가가치세 금액으로 취소합니다.
- 할부개월수 데이터는 00(일시불)로 저장합니다

3. 데이터 조회 API
- DB에 저장된 데이터를 조회해서 응답값으로 만들어줍니다.
- request : 관리번호(unique id)

4. API 요청 실패시 적절한 에러코드 응답

인증 토큰 spring security, JWT

  • API 인증을 위해 JWT(Json Web Token)를 이용해서 Token 기반 API 인증 기능을 개발
  1. 각 API 호출시에 HTTP Header에 발급받은 토큰을 가지고 호출
  2. signup 계정생성 API: ID, PW를 입력 받아 내부 DB에 계정을 저장하고 토큰을 생성하여 출력한다.
  3. 단, 패스워드는 안전한 방법으로 저장한다.
  4. signin 로그인 API: 입력으로 생성된 계정 (ID, PW)으로 로그인 요청하면 토큰을 발급한다.
참조
https://medium.com/swlh/spring-boot-security-jwt-hello-world-example-b479e457664c
https://github.com/murraco/spring-boot-jwt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.