From cf60e92b238edf8adccf33b78c094f2385bd945b Mon Sep 17 00:00:00 2001 From: Gregory Oschwald Date: Fri, 9 Oct 2026 20:42:29 +0000 Subject: [PATCH 1/2] Add billing phone verification inputs to minFraud The billing object now accepts phone_verification_method, phone_was_verification_successful, and phone_verification_time. They describe the most recent verification of the billing phone number. A new Billing schema extends Address, so the shipping object does not accept these inputs. Co-Authored-By: Claude Opus 5.5 --- bundled/minfraud.yaml | 30 +++++++++++++++++++++++++- components/minfraud-request.yaml | 36 +++++++++++++++++++++++++++++++- examples/minfraud/request.yaml | 3 +++ 3 files changed, 67 insertions(+), 2 deletions(-) diff --git a/bundled/minfraud.yaml b/bundled/minfraud.yaml index ebfa7fc..eee0dcc 100644 --- a/bundled/minfraud.yaml +++ b/bundled/minfraud.yaml @@ -558,6 +558,31 @@ components: type: string pattern: ^[0-9A-Z]{1,4}$ description: The ISO 3166-2 subdivision code. + Billing: + description: A billing address, with phone verification details. + allOf: + - $ref: '#/components/schemas/Address' + - type: object + properties: + phone_verification_method: + type: string + enum: + - delivered_code + - network + - other + description: |- + The most recent method used to verify the billing phone number. + + - `delivered_code`: a code delivered to the phone, such as by SMS, voice call, or messaging app. + - `network`: verification through the mobile network operator, such as silent network authentication. + - `other`: another verification method. + phone_verification_time: + type: string + format: date-time + description: The date and time of the most recent verification of the billing phone number, in RFC 3339 date-time format. + phone_was_verification_successful: + type: boolean + description: Whether the most recent verification of the billing phone number succeeded. Omit this field if no verification was attempted. CreditCard: type: object properties: @@ -999,7 +1024,7 @@ components: $ref: '#/components/schemas/Account' description: Information about the account involved in the event. billing: - $ref: '#/components/schemas/Address' + $ref: '#/components/schemas/Billing' description: The billing address for the order. credit_card: $ref: '#/components/schemas/CreditCard' @@ -1901,6 +1926,9 @@ components: last_name: Doe phone_country_code: '1' phone_number: 203-000-0000 + phone_verification_method: delivered_code + phone_verification_time: '2026-10-01T14:30:00Z' + phone_was_verification_successful: true postal: '06511' region: CT credit_card: diff --git a/components/minfraud-request.yaml b/components/minfraud-request.yaml index 36b3f8e..e5901d4 100644 --- a/components/minfraud-request.yaml +++ b/components/minfraud-request.yaml @@ -26,7 +26,7 @@ schemas: $ref: "#/schemas/Account" description: Information about the account involved in the event. billing: - $ref: "#/schemas/Address" + $ref: "#/schemas/Billing" description: The billing address for the order. credit_card: $ref: "#/schemas/CreditCard" @@ -254,6 +254,40 @@ schemas: type: string pattern: "^[0-9A-Z]{1,4}$" description: The ISO 3166-2 subdivision code. + Billing: + description: A billing address, with phone verification details. + allOf: + - $ref: "#/schemas/Address" + - type: object + properties: + phone_verification_method: + type: string + enum: + - delivered_code + - network + - other + description: >- + The most recent method used to verify the billing phone number. + + + - `delivered_code`: a code delivered to the phone, such as by SMS, + voice call, or messaging app. + + - `network`: verification through the mobile network operator, + such as silent network authentication. + + - `other`: another verification method. + phone_verification_time: + type: string + format: date-time + description: >- + The date and time of the most recent verification of the billing + phone number, in RFC 3339 date-time format. + phone_was_verification_successful: + type: boolean + description: >- + Whether the most recent verification of the billing phone number + succeeded. Omit this field if no verification was attempted. Shipping: description: A shipping address, with the delivery speed for the order. allOf: diff --git a/examples/minfraud/request.yaml b/examples/minfraud/request.yaml index faa4c49..f2d675d 100644 --- a/examples/minfraud/request.yaml +++ b/examples/minfraud/request.yaml @@ -13,6 +13,9 @@ value: last_name: Doe phone_country_code: "1" phone_number: 203-000-0000 + phone_verification_method: delivered_code + phone_verification_time: "2026-10-01T14:30:00Z" + phone_was_verification_successful: true postal: "06511" region: CT credit_card: From c37d74d975d8d4489edc188cf2a8c9347ea49277 Mon Sep 17 00:00:00 2001 From: Gregory Oschwald Date: Fri, 9 Oct 2026 20:58:24 +0000 Subject: [PATCH 2/2] Add email verification inputs to minFraud The email object now accepts was_verification_successful and verification_time. They describe the most recent verification of the email address. Co-Authored-By: Claude Opus 5.5 --- bundled/minfraud.yaml | 9 +++++++++ components/minfraud-request.yaml | 11 +++++++++++ examples/minfraud/request.yaml | 2 ++ 3 files changed, 22 insertions(+) diff --git a/bundled/minfraud.yaml b/bundled/minfraud.yaml index eee0dcc..0e0a557 100644 --- a/bundled/minfraud.yaml +++ b/bundled/minfraud.yaml @@ -679,6 +679,13 @@ components: type: string maxLength: 255 description: The domain of the email address. Do not include the `@`. You do not need to send this field unless you send the email address as an MD5 hash. + verification_time: + type: string + format: date-time + description: The date and time of the most recent verification of the email address, in RFC 3339 date-time format. + was_verification_successful: + type: boolean + description: Whether the most recent verification of the email address succeeded. Omit this field if no verification was attempted. Event: type: object properties: @@ -1954,6 +1961,8 @@ components: email: address: 977577b140bfb7c516e4746204fbdb01 domain: maxmind.com + verification_time: '2026-10-01T14:25:00Z' + was_verification_successful: true event: party: customer shop_id: s2123 diff --git a/components/minfraud-request.yaml b/components/minfraud-request.yaml index e5901d4..2313d6e 100644 --- a/components/minfraud-request.yaml +++ b/components/minfraud-request.yaml @@ -206,6 +206,17 @@ schemas: The domain of the email address. Do not include the `@`. You do not need to send this field unless you send the email address as an MD5 hash. + verification_time: + type: string + format: date-time + description: >- + The date and time of the most recent verification of the email + address, in RFC 3339 date-time format. + was_verification_successful: + type: boolean + description: >- + Whether the most recent verification of the email address succeeded. + Omit this field if no verification was attempted. Address: type: object description: A billing or shipping address. diff --git a/examples/minfraud/request.yaml b/examples/minfraud/request.yaml index f2d675d..a120877 100644 --- a/examples/minfraud/request.yaml +++ b/examples/minfraud/request.yaml @@ -43,6 +43,8 @@ value: email: address: 977577b140bfb7c516e4746204fbdb01 domain: maxmind.com + verification_time: "2026-10-01T14:25:00Z" + was_verification_successful: true event: party: customer shop_id: s2123