본문으로 건너뛰기

금액

총 장바구니 금액은 단일 속성에 의해 OmniCart에 전달되지 않습니다. 대신 금액은 항목 식별자별로 지정됩니다. 이를 통해 결제 수명 주기를 유연하게 제어할 수 있습니다.

지불 수명 주기 동안 금액의 전부 또는 일부를 취소하거나 환불할 수 있습니다.

노트

자세한 내용은 다음을 참조하십시오. 지급 수명 주기 섹션에서 항목 지급 수명 주기에 대한 자세한 내용을 확인할 수 있습니다.

init 그리고 modify 요청

amount 속성은 init 또는 modify 요청. 선택 사항 amountMode 속성은 OmniCart가 항목에 전달된 값을 처리하는 방법을 정의합니다 amount 재산. 사용 가능한 옵션은 amountMode 이다 declared 그리고 calculated. amountMode 카트, 태그 및 항목 수준에서 정의할 수 있습니다.

노트

기본적으로 amountMode 이다 declared.

"amountMode": "declared"

amountMode 로 설정됩니다. declared, 의 값 amount 재산은 OmniCart에서 받은 양식과 똑같이 지불 양식에 포함됩니다. 추가 quantity 그리고 amuntModifier 속성은 OmniCart에 저장되지만 최종 품목 가격에는 영향을 주지 않습니다.

"amountMode": "calculated"

amountMode 로 설정됩니다. calculated, amount 가치는 상품 단위(실제 품목, 리터, 분 등)당 가격입니다. 최종 가격은 의 제품입니다. amount, quantity그리고 amountModifier 값.

  • quantity - 상품의 수 또는 부피. 정수 또는 소수 골절일 수 있습니다. 예를 들어, 마나를 병이나 리터 단위로 판매할 수 있습니다.
  • amountModifer -추가 amount 승수. 할인을 적용하거나 적절하다고 생각되는 목적으로 사용할 수 있습니다.

기술적 quantity 그리고 amountModifer 그냥 amount 멀티 플라이어. 그렇지만 quantity 항목 수준에서만 정의할 수 있지만 amountModifer 카트, 태그 및 항목 수준에서 정의할 수 있습니다.

  최종 품목 가격에 영향을 미치는 속성
  "gems": {
"amount": 5000,
"quantity": 4,
"paymentFilter": {
"amountMode": "declared",
"amountModifier": 0.7,
}
}

위의 예에서 amountMode 이다 declared. 즉, amount 가치가 고려됩니다. 의 최종 가격 gems 항목은 다음과 같습니다. 5000.

quantity 그리고 amountModifier 속성은 OmniCart에 의해 저장되지만 최종 품목 가격에는 영향을 미치지 않습니다.

status 요청

TotalAmounts 그리고 itemAmounts 객체

TotalAmounts 그리고 itemAmounts 에 대한 성공적인 응답으로 반환되는 개체입니다. status 메소드를 사용합니다.

노트

자세한 내용은 다음을 참조하십시오. 지급 상태에 대한 자세한 내용은 지급 수명 주기 섹션을 참조하십시오.

TotalAmounts 그리고 itemAmounts 개체에는 동일한 속성 집합이 있습니다. 차이점은 다음과 같습니다.

TotalAmounts 개체에는 요청 시점의 전체 요청 범위에 대한 특정 상태별 총 금액에 대한 정보가 포함되어 있습니다. 즉, 예를 들어 status 태그에 의한 요청인 경우 TotalAmounts 개체에는 해당 태그가 표시된 모든 장바구니 항목의 총 금액이 포함됩니다. 이 status 요청은 TotalAmounts 객체.

itemAmounts 객체는 item 객체의 일부이며 요청 시 특정 품목의 특정 상태별 금액에 대한 정보를 포함합니다. 그만큼 많습니다 itemAmounts objects에 항목이 있는 경우 status 범위에 있습니다. 만약 status 요청이 단일 항목을 반환하면 itemAmounts 값은 TotalAmounts 값.

  • initiated - 에 등록된 초기 금액 init 요청.
  • captured - capture 요청을 보냅니다. 항목 금액은 캡처되기 전에 부분적으로 취소될 수 있으므로 이 값은 initiated 분량. 또한 카트 항목을 한 번에 모두 캡처할 필요는 없으므로 카트에 권한이 부여되었지만 캡처되거나 취소되지 않은 항목이 포함될 수 있으므로 이 값이 변경될 수 있습니다. 그러나captured 금액은 초과할 수 없습니다. initiated 분량.
  • refunded - 완료된 환불 금액입니다. 위와 마찬가지로 아이템 금액은 부분적으로 환불될 수 있으므로 이 값은 아이템 금액과 다를 수 있습니다. captured 분량. 이전의 경우와 마찬가지로 전체 장바구니가 아닌 장바구니에서 선택한 항목을 환불할 수 있는 옵션이 있습니다. 즉, refunded 그러나 값은 변경될 수 있습니다.refunded 금액은 초과할 수 없습니다. captured 분량.
"cartId": "6f891edb-1e1f-48bb-b042-2cb790a0f402",
"currency": "XAU",
"totalAmounts": {
"initiated": 19900,
"captured": 0,
"refunded": 0,
"current": 19000
},

위의 예에서 시작된 모든 카트 항목의 합계는 다음과 같습니다. 19900. 카트가 승인된 후 일부 카트 항목이 전체 또는 부분적으로 canceled 의 가치 900 그리고 그들 중 누구도 그렇지 않았습니다 captured. 따라서 captured 장바구니 금액은 0 그리고 current 장바구니 금액 19000.

  • current - 장바구니 또는 항목의 현재 금액입니다. 예를 들어, 일부 장바구니 항목이 다음과 같은 경우 authorized 부분적으로 취소된 경우 현재 금액이 started 분량. 마찬가지로 일부 장바구니 항목이 captured 또는 completed 부분적으로 환불된 current 양 가 보다 작습니다. captured 분량.

paymentSnapshot 객체

paymentSnapshot object는 에 대한 응답으로 반환되는 item 객체의 일부입니다. status 요청. 여기에는 앞에서 정의된 값이 포함됩니다 init 또는 modify 요청(이 페이지의 이전 설명 참조).

참고로, 만약 amountMode 로 설정됩니다. declared, current 의 값 itemAmounts object는 amount (오른쪽의 예에서는 다음과 같습니다. 600) 금액 승수 이후의 값 quantity 그리고 amountModifier 적용되지 않습니다.

그렇지 않으면 amountMode 로 설정됩니다. calculated, current 의 값 itemAmounts object는 amount, quantity그리고 amountModifier 값. 오른쪽의 예에서는 다음과 같습니다. 4000.

최종 품목 가격에 영향을 미치는 속성
"paymentSnapshot": {
"amount": 600,
"amountMode": "declared",
"quantity": 6,
"amountModifier": 1
},