Hoàn tiền một phần hoặc toàn bộ giao dịch đã thực hiện thông qua capture
. Tổ hợp requestId
trong tiêu đề và paymentIntegratorAccountId
là khoá đặc tính nhận dạng duy nhất giao dịch này.
Nếu điểm cuối gặp lỗi trong khi xử lý yêu cầu, thì nội dung phản hồi từ điểm cuối này phải thuộc loại
.ErrorResponse
Một yêu cầu mẫu có dạng như sau:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"captureRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"currencyCode": "INR",
"refundAmount": "208000000"
}
Một phản hồi mẫu sẽ có dạng như sau:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorRefundId": "cmVmdW5kIGlkZW50aWZpZXINCg"
}
Yêu cầu HTTP
POST https://www.integratorhost.example.com/v1/refund
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu với cấu trúc như sau:
Biểu diễn dưới dạng JSON |
---|
{
"requestHeader": {
object ( |
Các trường | |
---|---|
requestHeader |
BẮT BUỘC: Tiêu đề chung cho tất cả các yêu cầu. |
paymentIntegratorAccountId |
BẮT BUỘC: Đây là ID tài khoản của nhà tích hợp thanh toán xác định ràng buộc hợp đồng xung quanh giao dịch này. |
captureRequestId |
BẮT BUỘC: Giá trị nhận dạng duy nhất của giao dịch này. Đây là |
currencyCode |
BẮT BUỘC: Mã đơn vị tiền tệ gồm 3 chữ cái theo ISO 4217 |
refundAmount |
BẮT BUỘC: Số tiền hoàn lại, số micros dương của đơn vị tiền tệ. |
Nội dung phản hồi
Đối tượng phản hồi cho phương thức hoàn tiền.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{ "responseHeader": { object ( |
Các trường | |
---|---|
responseHeader |
BẮT BUỘC: Tiêu đề chung cho tất cả các phản hồi. |
paymentIntegratorRefundId |
KHÔNG BẮT BUỘC: Mã nhận dạng này dành riêng cho nhà tích hợp và do nhà tích hợp tạo ra. Đây là giá trị nhận dạng mà nhà tích hợp biết về khoản tiền hoàn lại này. Để thuận tiện, số nhận dạng này được bao gồm trong chi tiết chuyển khoản |
result |
BẮT BUỘC: Kết quả của khoản hoàn trả này. |
rawResult |
KHÔNG BẮT BUỘC: Kết quả thô của khoản tiền hoàn lại này. Dùng để cung cấp thông tin về công cụ rủi ro và số liệu phân tích của Google. Trong các trường hợp lập bản đồ bằng mã từ chối, đôi khi dữ liệu bị mất. Nhà tích hợp có thể chọn cung cấp cho Google một mã thô. Ví dụ: cổng thẻ tín dụng (nhà tích hợp) có thể sử dụng trường này để thông báo cho Google mã từ chối chính xác đã nhận được từ mạng VISA. Trong trường hợp đó, Giá trị này là bắt buộc nếu |
Mã tiền hoàn lại
Mã kết quả duy nhất sẽ được hoàn tiền.
Enum | |
---|---|
UNKNOWN_RESULT |
Không bao giờ đặt giá trị mặc định này! |
SUCCESS |
Hoàn tiền thành công. |
NO_MONEY_LEFT_ON_TRANSACTION |
v1.refund không thành công, không còn tiền trong giao dịch. Thông thường, lỗi này thể hiện lỗi giữa nhà tích hợp và Google. Google không được yêu cầu hoàn lại số tiền lớn hơn ảnh chụp gốc. |
ACCOUNT_CLOSED |
Tài khoản được tích hợp với nhà tích hợp đã bị đóng. Khi trả lại giá trị này, công cụ của người dùng sẽ bị đóng với Google. Người dùng sẽ buộc phải thêm công cụ mới bằng cách thực hiện lại quy trình liên kết. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Tài khoản của người dùng với nhà tích hợp đã bị đóng, tài khoản bị nghi ngờ chiếm đoạt. Khi trả lại giá trị này, công cụ của người dùng sẽ bị đóng với Google. Người dùng sẽ buộc phải thêm công cụ mới bằng cách thực hiện lại quy trình liên kết. |
ACCOUNT_CLOSED_FRAUD |
Tài khoản của người dùng do nhà tích hợp giữ đã bị đóng do gian lận. Khi trả lại giá trị này, công cụ của người dùng sẽ bị đóng với Google. Người dùng sẽ buộc phải thêm công cụ mới bằng cách thực hiện lại quy trình liên kết. |
ACCOUNT_ON_HOLD |
Tài khoản của người dùng hiện đang bị treo và không thể chấp nhận tiền hoàn lại, nhưng tài khoản của người dùng sau đó có thể chấp nhận tiền hoàn lại. Google có thể yêu cầu một khoản tiền hoàn lại khác trong tương lai, nhưng sẽ làm như vậy với requestId mới nên yêu cầu này sẽ được coi là đã hoàn tất. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
Không thể xử lý khoản hoàn trả vào thời điểm hiện tại, bởi vì làm như vậy sẽ làm cho số dư của người dùng vượt quá số tiền tối đa được phép. Google có thể yêu cầu một khoản tiền hoàn lại khác trong tương lai, nhưng sẽ làm như vậy với requestId mới nên yêu cầu này sẽ được coi là đã hoàn tất. |
REFUND_WINDOW_EXCEEDED |
Không thể xử lý khoản tiền hoàn lại vì yêu cầu nằm ngoài khoảng thời gian hoàn lại được cho phép. |