Skip to content

Commit 65f6946

Browse files
feature/support merchant advice code and missing 3DS fields (#88)
## Description - support merchant advice - support merchant advice code - support missing 3DS fields in charge - update unit test
1 parent c689657 commit 65f6946

File tree

3 files changed

+20
-1
lines changed

3 files changed

+20
-1
lines changed

charge.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,10 @@ type Charge struct {
3939
Source *Source `json:"source"`
4040
Metadata map[string]interface{} `json:"metadata"`
4141
ExpiresAt time.Time `json:"expires_at"`
42+
43+
MerchantAdvice string `json:"merchant_advice"`
44+
MerchantAdviceCode string `json:"merchant_advice_code"`
45+
Missing3DSFields []string `json:"missing_3ds_fields"`
4246
}
4347

4448
type TransactionIndicator string

operations/charge_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,3 +315,15 @@ func TestRetrieveCharge_HasExpiredAt(t *testing.T) {
315315

316316
r.Equal(t, "2020-07-01 03:53:01 +0000 UTC", charge.ExpiresAt.String())
317317
}
318+
319+
func TestRetrieveChargeHas3DSFields(t *testing.T) {
320+
const ChargeID = "chrg_test_4yq7duw15p9hdrjp8oq"
321+
client := testutil.NewFixedClient(t)
322+
323+
charge := &omise.Charge{}
324+
client.MustDo(charge, &RetrieveCharge{ChargeID})
325+
326+
r.Equal(t, "additional authentication required", charge.MerchantAdvice)
327+
r.Equal(t, "03", charge.MerchantAdviceCode)
328+
r.Equal(t, []string{"phone_number", "address"}, charge.Missing3DSFields)
329+
}

testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,5 +54,8 @@
5454
},
5555
"customer": "cust_test_4yq6txdpfadhbaqnwp3",
5656
"ip": null,
57-
"created_at": "2015-01-15T05:00:29Z"
57+
"created_at": "2015-01-15T05:00:29Z",
58+
"merchant_advice": "additional authentication required",
59+
"merchant_advice_code": "03",
60+
"missing_3ds_fields": ["phone_number", "address"]
5861
}

0 commit comments

Comments
 (0)