Reference

Query

clientConfiguration

The client-side environment and payment method configuration.


idFromLegacyId

Get a GraphQL ID from a legacy ID that was returned from an SDK or a legacyId field. Does not verify existence except for payment methods.

args:
output:

inStoreLocations

Retrieve a paginated list of all in-store locations.

args:

node

Fetch any object that extends the Node interface using its ID.

args:
output:

paypalFinancingOptions

Retrieve PayPal financing options that include payment installment plans.


ping

Returns the literal string 'pong'.

output:

pingInStoreReader

Triggers a beep on a connected Reader and returns the Reader information or an error if unable to ping the device.

args:

report

A collection of the available reports. Each field on the Report type is a different report that can be queried with its own input parameters.

output:

viewer

The currently authenticated viewer.

output:

Mutation

acceptDispute

Accepts a dispute and returns a payload that includes the dispute that was accepted. Only disputes with a status of OPEN can be accepted.


authorizeCreditCard

Authorize a credit card of any origin and return a payload that includes details of the resulting transaction.


authorizePayPalAccount

Authorize an eligible PayPal account and return a payload that includes details of the resulting transaction.


authorizePaymentMethod

Authorize an eligible payment method and return a payload that includes details of the resulting transaction.


authorizeVenmoAccount

Authorize an eligible Venmo account and return a payload that includes details of the resulting transaction.


captureTransaction

Capture an authorized transaction and return a payload that includes details of the transaction.


chargeCreditCard

Charge a credit card of any origin and return a payload that includes details of the resulting transaction.


chargePayPalAccount

Charge a PayPal account and return a payload that includes details of the resulting transaction.


chargePaymentMethod

Charge any payment method and return a payload that includes details of the resulting transaction.


chargeUsBankAccount

Charge a US bank account and return a payload that includes details of the resulting transaction. See https://developers.braintreepayments.com/guides/ach/configuration for information on eligibility and setup.


chargeVenmoAccount

Charge a Venmo account and return a payload that includes details of the resulting transaction. See https://articles.braintreepayments.com/guides/payment-methods/venmo for information on eligibility and setup.


confirmMicroTransferAmounts

Confirm micro-transfer amounts initiated by vaultUsBankAccount or verifyUsBankAccount, completing the verification process for a US Bank Account via micro-transfer.


createClientToken

Create a client token that can be used to initialize a client in order to tokenize payment information.


createCustomer

Create a customer for storing individual customer information and/or grouping transactions and multi-use payment methods.


createDisputeFileEvidence

Uploads an evidence file and associates it with a dispute. Note:: file upload requires a special request format. See the 'Uploading Files' integration guide for instructions on how to perform this mutation.


createDisputeTextEvidence

Creates text evidence to a dispute and returns a payload that includes the evidence that was created. Only disputes with a status of OPEN can have text evidence created for them.


createInStoreLocation

Creates a new In-Store Location to associate Readers.


createNonInstantLocalPaymentContext

Creates a non-instant local payment context. Your account must be enabled to use this feature.


createOAuthClientSecret

Create an OAuth client secret. To call this mutation you must obtain an OAuth Access Token with scope MANAGE_OAUTH_CLIENT_SECRETS, the associated merchant must have IP or hostname restrictions enabled and you must send your request from a host that is allowed by the merchant's allowed hosts list.


createPayPalBillingAgreement

Set up a PayPal Billing Agreement Token for approval by a PayPal user.


createPayPalOneTimePayment

Set up a PayPal One-Time Payment for approval by a PayPal user. See documentation for more information. Your account must be enabled for this feature.


createProductRequestForMerchant

Create a request for access to a specified product.


createTransactionPackageTracking

Creates a package tracker record for Pay with PayPal transactions. Your account must be enabled to use this feature.


createUniversalAccessToken

Create a PayPal access token that can be used to make additional API calls or initialize a client.


deleteCustomer

Delete a customer, breaking association between any of the customer's transactions. Will not delete if the customer has existing payment methods.


deleteDisputeEvidence

Deletes evidence from a dispute.


deleteOAuthClientSecret

Delete a disabled OAuth client secret. To call this mutation you must obtain an OAuth Access Token with scope MANAGE_OAUTH_CLIENT_SECRETS, the associated merchant must have IP or hostname restrictions enabled and you must send your request from a host that is allowed by the merchant's allowed hosts list.


deletePaymentMethodFromVault

Delete a multi-use payment method from the vault.


disableOAuthClientSecret

Disable an OAuth client secret. To call this mutation you must obtain an OAuth Access Token with scope MANAGE_OAUTH_CLIENT_SECRETS, the associated merchant must have IP or hostname restrictions enabled and you must send your request from a host that is allowed by the merchant's allowed hosts list.


finalizeDispute

Finalizes a dispute and returns a payload that includes the dispute that was finalized. Only disputes with a status of OPEN can be finalized.


generateExchangeRateQuote

Generate a customized currency exchange rate quote for items on a merchant's page. This allows merchants to advertise products in their customer's currency. Your account must be enabled to use this feature.


pairInStoreReader

Pairs a Reader to an account and In-Store Location.


partialCaptureTransaction

Partially capture funds from a transaction that was successfully authorized and return a payload that includes a new transaction with information about the capture. This is available for Venmo and PayPal transactions.


performThreeDSecureLookup

Attempt to perform 3D Secure Authentication on credit card payment method. This may consume the payment method and return a new single-use payment method.


refundCreditCard

Create a detached refund (unassociated with any previous Braintree payment) to a credit card and return a payload that includes details of the refund.

We have previously referred to this as issuing a "detached credit," and it is disallowed by default. See the documentation for more information regarding eligibility and configuration.


refundTransaction

Refund a settled transaction and return a payload that includes details of the refund.


refundUsBankAccount

Create a detached refund (unassociated with any previous Braintree payment) to a US Bank Account and return a payload that includes details of the refund.

We have previously referred to this as issuing a "detached credit," and it is disallowed by default. See the documentation for more information regarding eligibility and configuration.


requestAmountPromptFromInStoreReader

Request an in-store reader to display an amount prompt. Only supported on payment application versions >= 5.2.0.


requestAuthorizeFromInStoreReader

Request an in-store reader to begin the authorize flow. Only supported on payment application versions >= 5.1.0.


requestCancelFromInStoreReader

Request an in-store reader to cancel the charge flow.


requestChargeFromInStoreReader

Request an in-store reader to begin the charge flow.


requestConfirmationPromptFromInStoreReader

Request an in-store reader to display a confirmation prompt. Only supported on payment application versions >= 3.3.0.


requestFirmwareUpdateFromInStoreReader

Request an in-store reader to update to the latest version of software.


requestItemDisplayFromInStoreReader

Request an in-store reader to display line items.


requestMultiChoiceSingleSelectPromptFromInStoreReader

Request an in-store reader to display a multi-choice single-select prompt. Only supported on payment application versions >= 5.4.0.


requestNonPciCardDataFromInStoreReader

Request an in-store reader to collect non PCI-scoped card data. Only supported on payment application versions >= 5.2.0.


requestPrintFromInStoreReader

Request an in-store reader to print content. Only supported on the Verifone V400m device using payment application version >= 5.5.0.


requestRefundFromInStoreReader

Request an in-store reader to start an unreferenced refund flow.


requestSignaturePromptFromInStoreReader

Request an in-store reader to display a signature prompt. Only supported on payment application versions >= 3.3.0.


requestTextPromptFromInStoreReader

Request an in-store reader to display a text prompt. Only supported on payment application versions >= 5.2.0.


requestVaultFromInStoreReader

Request an in-store reader to vault a payment method.


reverseRefund

Reverse a refund and return a payload that includes voided refund.


reverseTransaction

Reverse a transaction and return a payload that includes either the voided transaction or a refund.


sandboxSettleTransaction

Force a transaction to settle in the sandbox environment. Generates an error elsewhere.


tokenizeCreditCard

Tokenize credit card fields and return a payload that includes a single-use payment method.


tokenizeCustomActionsPaymentMethod

Tokenize Custom Actions fields and return a payload that includes a single-use payment method.


tokenizeCvv

Tokenize a credit card's CVV and return a payload that includes a single-use payment method.


tokenizeNetworkToken

Tokenize a network tokenized payment instrument and return a payload that includes a single-use payment method.


tokenizePayPalBillingAgreement

Tokenize PayPal account and return a payload that includes a single-use payment method.


tokenizePayPalOneTimePayment

Tokenize PayPal One-Time Payment and return a payload that includes a single-use payment method.


tokenizeSamsungPayCard

Tokenize Samsung Pay card fields and return a payload that includes a single-use payment method.


tokenizeUsBankAccount

Tokenize US bank account fields and return a payload that includes a single-use payment method.


tokenizeUsBankLogin

Tokenize US bank login fields and return a payload that includes a single-use payment method.


updateCreditCardBillingAddress

Set a new billing address for a multi-use credit card payment method. By default, this mutation will also verify the card with the new billing address before updating.


updateCreditCardCardholderName

Set a new cardholder name for a multi-use credit card payment method. By default, this mutation will also verify the card with the new cardholder name before updating.


updateCreditCardExpirationDate

Set a new expiration date for a multi-use credit card payment method. By default, this mutation will also verify the card with the new expiration date before updating.


updateCustomFields

Update custom fields on a transaction or refund. Custom fields are defined in the Control Panel.


updateCustomer

Update a customer's information.


updateInStoreReader

Updates an In-Store Reader.


updateTransactionAmount

Updates the authorization amount of the transaction.


vaultCreditCard

Vault payment information from a single-use credit card and return a payload that includes a new multi-use payment method. By default, this mutation will also verify the card before vaulting.


vaultPayPalBillingAgreement

Vault an existing PayPal Billing Agreement that was not created through Braintree. Only use this mutation if you need to import PayPal Billing Agreements from an existing PayPal integration into your Braintree account.


vaultPaymentMethod

Vault payment information from a single-use payment method and return a payload that includes a new multi-use payment method. When vaulting a credit card, by default, this mutation will also verify that card before vaulting.


vaultUsBankAccount

Vault payment information from a single-use US bank account payment method and return a payload that includes a new multi-use payment method.


verifyCreditCard

Run a verification on a multi-use credit card payment method.


verifyPaymentMethod

Run a verification on a multi-use payment method.


verifyUsBankAccount

Run a verification on a multi-use US bank account payment method.


Interfaces

DisputeEvidence

Evidence provided by a merchant to respond to a dispute.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time when the evidence was created with Braintree.

  • sentToProcessorAt: Timestamp

    Date and time when the evidence was sent to the processor.

  • category: DisputeEvidenceCategory

    The evidence category.


InStoreReaderOriginDetails

Additional information about the payment method supplied by an in-store payment reader.

fields:
  • authorizationMode: InStoreReaderAuthorizationMode

    The authorization mode used to perform the transaction on the payment reader.

  • pinVerified: Boolean

    An indicator for whether the transaction was verified via pin.

  • inputMode: PaymentReaderInputMode

    The input mode used on the payment reader to facilitate an in-store transaction.

  • terminalId: String

    The ID of the terminal that was processed this transaction.


Payment

A merchant-initiated movement of money between the merchant and a customer, by way of a payment method. Payments can represent money moving either from a customer to the merchant by charging a payment method (a Transaction), or from the merchant back to a customer by refunding a previous transaction (a Refund).

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time when the payment was created.

  • amount: MonetaryAmount

    The amount charged or credited to the payment method. Note that in the case of a Transaction, this amount will represent the amount moving from the customer to the merchant, and in the case of a Refund, will represent the amount moving from the merchant back to the customer.

  • orderId: String

    The order ID.

  • status: PaymentStatus

    The current status of this payment.

  • statusHistory: [PaymentStatusEvent!]

    The records of all statuses this payment has passed through, with additional information on why each status occurred. Returned in reverse chronological order, with the most recent event first in the list.

  • merchantAccountId: ID

    The ID of the merchant account that processed this payment.

  • source: PaymentSource

    How the payment was created.

  • paymentMethodSnapshot: PaymentMethodSnapshot

    Snapshot of payment method details used to create the payment, preserved at the time the transaction was created. This will always be present.

Possible Types:

PaymentContext

Context associated with a transaction.

fields:
  • id: ID!

    Unique identifier.

  • createdAt: Timestamp!

    Date and time when the payment context was created.

  • updatedAt: Timestamp!

    Date and time when the payment context was updated.


PaymentStatusEvent

Status event in the lifecycle of a payment.

fields:
  • status: PaymentStatus

    New status of the payment.

  • timestamp: Timestamp

    Date and time when the status event occurred.

  • amount: MonetaryAmount

    The payment amount applicable to the status. For instance, the amount when a transaction is SUBMITTED_FOR_SETTLEMENT might be less than the amount for which it was AUTHORIZED.

  • source: PaymentSource

    Source that caused the status event to occur.

  • terminal: Boolean

    Whether this is the final state for the payment. If false, this transaction will pass into another subsequent state.


Enums

ACHStandardEntryClassCode

A NACHA standard entry class (SEC) code, which designates how an ACH transaction was authorized.

enum values:
  • CCD

    Corporate credit or debit.

  • PPD

    Prearranged payment and deposit.

  • TEL

    Telephone-initiated.

  • WEB

    Internet-initiated/mobile.


ACRType

The authentication context class reference that indcates how a universal access token can be used.

enum values:
  • CLIENT
  • SERVER

AccountCreationStatus

The status of the business account creation request.

enum values:
  • COMPLETED
  • DECLINED
  • IN_SETUP
  • IN_VETTING
  • SUBMITTED

AniNameResponseCode

Response codes for name verification if the processor supports the account information inquiry.

enum values:
  • MATCH
  • NOT_SUPPORTED
  • NOT_VERIFIED
  • NO_INPUT
  • NO_MATCH
  • PARTIAL_MATCH
  • RETRY

ApplePayStatus

The environment being used for Apple Pay.

enum values:
  • MOCK
  • OFF
  • PRODUCTION
  • mock
  • off
  • production

ApplicationBankAccountPurpose

The purpose of the merchant application bank account.

enum values:
  • CHECKING
  • SAVINGS

ApplicationStatus

The status of a merchant account application.

enum values:
  • APPROVED
  • PROCESSING
  • REJECTED

AvsCvvResponseCode

Response codes from the processing bank's Address Verification System (AVS) and CVV verification.

enum values:
  • BYPASS

    AVS or CVV checks were skipped via the API.

  • DOES_NOT_MATCH
  • ISSUER_DOES_NOT_PARTICIPATE
  • MATCHES
  • NOT_APPLICABLE
  • NOT_PROVIDED
  • NOT_VERIFIED
  • SYSTEM_ERROR

BinRecordValue

A boolean-like value that includes UNKNOWN in the case where the information isn't available.

enum values:
  • NO
  • UNKNOWN
  • YES
  • No
  • Unknown
  • Yes

BusinessType

The type of the business.

enum values:
  • GOVERNMENT_AGENCY
  • LIMITED_LIABILITY_CORPORATION
  • NONPROFIT
  • PARTNERSHIP
  • PARTNERSHIP_LLP
  • PRIVATE_CORPORATION
  • PUBLIC_CORPORATION
  • SOLE_PROPRIETORSHIP
  • TAX_EXEMPT

CardAccountType

The type of account to be used when transacting with a combo card.

enum values:
  • CREDIT
  • DEBIT

Challenge

A list of challenges that are required by the current merchant to process a given credit card.

enum values:
  • CVV
  • POSTAL_CODE
  • cvv
  • postal_code

ChargebackProtectionLevel

The chargeback protection level indicates the transaction or dispute's protection status.

enum values:
  • EFFORTLESS

    The transaction or dispute is protected by the effortless chargeback protection product.

  • NOT_PROTECTED

    The merchant has not enrolled any chargeback protection products, or the merchant is registered, but the transaction or dispute is not protected.

  • STANDARD

    The transaction or dispute is protected by the standard chargeback protection product.


ClientConfigurationEnvironment

The client configuration environment being used.

enum values:
  • DEVELOPMENT
  • PRODUCTION
  • QA
  • SANDBOX
  • TEST
  • development
  • production
  • qa
  • sandbox
  • test

ClientFeature

A value used by Braintree client SDKs to determine what operations are supported through this GraphQL API.

enum values:
  • TOKENIZE_CREDIT_CARDS
  • tokenize_credit_cards

ConfirmMicroTransferAmountsStatus

The status of a micro-transfer amount confirmation.

enum values:
  • AMOUNTS_DO_NOT_MATCH
  • CONFIRMED
  • TOO_MANY_ATTEMPTS

CreditCardBrandCode

A code identifying the card brand.

enum values:
  • AMERICAN_EXPRESS
  • CITI
  • DINERS
  • DISCOVER
  • ELO
  • HIPER
  • HIPERCARD
  • INTERNATIONAL_MAESTRO
  • JCB
  • MASTERCARD
  • SOLO
  • SWITCH
  • UK_MAESTRO
  • UNION_PAY
  • UNKNOWN
  • VISA
  • american_express
  • citi
  • diners
  • discover
  • elo
  • hiper
  • hipercard
  • international_maestro
  • jcb
  • mastercard
  • solo
  • switch
  • uk_maestro
  • union_pay
  • unknown
  • visa

CreditCardCustomerLocation

The location of customer in the transaction.

enum values:
  • INTERNATIONAL
  • US

CustomerAuthenticationIndicator

A value indicating when to perform further customer authentication.

enum values:
  • OPTIONAL

    Indicates further authentication is optional.

  • REQUIRED

    Indicates further authentication should be performed.

  • UNAVAILABLE

    Customer authentication indicator information is unavailable at this time.


CustomerAuthenticationRegulationEnvironment

The customer authentication regulation environment that applies to the transaction, such as PSD2.

enum values:
  • PSDTWO

    EU Regulation PSD2 Strong Customer Authentication applies to this transaction.

  • RBI

    Reserve Bank of India regulations apply to this transactions.

  • UNAVAILABLE

    Customer authentication regulation environment information is unavailable for this transaction at this time.

  • UNREGULATED

    No customer authentication regulations apply to this transaction.


CustomerClient

Client the customer used to initiate the transaction.

enum values:
  • DESKTOP
  • MOBILE_APP
  • MOBILE_WEB
  • NATIVE_WEB

DecimalPlaces

The allowed digits to the right of the decimal point.

enum values:
  • THREE
  • TWO
  • ZERO

DisplayItemType

The display item type to be displayed on the in-store reader.

enum values:
  • CHARGE
  • DISCOUNT
  • LINE_BREAK
  • TEXT

DisputeEvidenceCategory

The evidence category that specifies which requirement it satisfies.

enum values:
  • AVS_RESPONSE
  • CARRIER_NAME
  • CARRIER_NAME_OTHER
  • CREDIT_ISSUED_AMOUNT
  • CREDIT_ISSUED_ARN
  • CREDIT_ISSUED_DATE_TIME
  • DEVICE_ID
  • DEVICE_NAME
  • DOWNLOAD_DATE_TIME
  • EVIDENCE_TYPE
  • GENERAL
  • GEOGRAPHICAL_LOCATION
  • LEGIT_PAYMENTS_FOR_SAME_MERCHANDISE
  • MERCHANT_WEBSITE_OR_APP_ACCESS
  • PRIOR_DIGITAL_GOODS_TRANSACTION_ARN
  • PRIOR_DIGITAL_GOODS_TRANSACTION_DATE_TIME
  • PRIOR_DIGITAL_GOODS_TRANSACTION_ID
  • PRIOR_NON_DISPUTED_TRANSACTION_ARN
  • PRIOR_NON_DISPUTED_TRANSACTION_DATE_TIME
  • PRIOR_NON_DISPUTED_TRANSACTION_EMAIL_ADDRESS
  • PRIOR_NON_DISPUTED_TRANSACTION_ID
  • PRIOR_NON_DISPUTED_TRANSACTION_IP_ADDRESS
  • PRIOR_NON_DISPUTED_TRANSACTION_PHONE_NUMBER
  • PRIOR_NON_DISPUTED_TRANSACTION_PHYSICAL_ADDRESS
  • PROFILE_SETUP_OR_APP_ACCESS
  • PROOF_OF_3D_SECURE
  • PROOF_OF_AUTHORIZED_SIGNER
  • PROOF_OF_DELIVERY
  • PROOF_OF_DELIVERY_EMP_ADDRESS
  • PROOF_OF_POSSESSION_OR_USAGE
  • PURCHASER_EMAIL_ADDRESS
  • PURCHASER_IP_ADDRESS
  • PURCHASER_NAME
  • RECURRING_TRANSACTION_ARN
  • RECURRING_TRANSACTION_DATE_TIME
  • RECURRING_TRANSACTION_ID
  • REFUND_ID
  • SIGNED_DELIVERY_FORM
  • SIGNED_ORDER_FORM
  • TICKET_PROOF
  • TRACKING_NUMBER
  • TRACKING_URL

DisputeFileEvidenceCategory

For file evidence: the evidence category that specifies which requirement it satisfies.

enum values:
  • GENERAL
  • LEGIT_PAYMENTS_FOR_SAME_MERCHANDISE
  • MERCHANT_WEBSITE_OR_APP_ACCESS
  • PROFILE_SETUP_OR_APP_ACCESS
  • PROOF_OF_3D_SECURE
  • PROOF_OF_AUTHORIZED_SIGNER
  • PROOF_OF_DELIVERY
  • PROOF_OF_DELIVERY_EMP_ADDRESS
  • PROOF_OF_POSSESSION_OR_USAGE
  • SIGNED_DELIVERY_FORM
  • SIGNED_ORDER_FORM
  • TICKET_PROOF

DisputeProtectionLevel

The Protection level indicates if dispute is eligible for protection through any feature enabled on your account.

enum values:
  • CHARGEBACK_PROTECTION_TOOL

    The dispute is protected by the standard chargeback protection product.

  • EFFORTLESS_CHARGEBACK_PROTECTION_TOOL

    The dispute is protected by the effortless chargeback protection product.

  • NO_PROTECTION

    The merchant has not enrolled in any chargeback protection products, or the merchant is enrolled, but the dispute is not protected.


DisputeReason

The reason a customer opened a chargeback, pre-arbitration, or retrieval.

enum values:
  • CANCELLED_RECURRING_TRANSACTION
  • CREDIT_NOT_PROCESSED
  • DUPLICATE
  • FRAUD
  • GENERAL
  • INVALID_ACCOUNT
  • NOT_RECOGNIZED
  • PRODUCT_NOT_RECEIVED
  • PRODUCT_UNSATISFACTORY
  • RETRIEVAL
  • TRANSACTION_AMOUNT_DIFFERS

DisputeStatus

The status of the dispute.

enum values:
  • ACCEPTED
  • AUTO_ACCEPTED
  • DISPUTED
  • EXPIRED
  • LOST
  • OPEN
  • UNDER_REVIEW
  • WON

DisputeTextEvidenceCategory

For text evidence: the evidence category that specifies which requirement it satisfies.

enum values:
  • AVS_RESPONSE
  • CARRIER_NAME
  • CREDIT_ISSUED_AMOUNT
  • CREDIT_ISSUED_ARN
  • CREDIT_ISSUED_DATE_TIME
  • DEVICE_ID
  • DEVICE_NAME
  • DOWNLOAD_DATE_TIME
  • GENERAL
  • GEOGRAPHICAL_LOCATION
  • PRIOR_DIGITAL_GOODS_TRANSACTION_ARN
  • PRIOR_DIGITAL_GOODS_TRANSACTION_DATE_TIME
  • PRIOR_DIGITAL_GOODS_TRANSACTION_ID
  • PRIOR_NON_DISPUTED_TRANSACTION_ARN
  • PRIOR_NON_DISPUTED_TRANSACTION_DATE_TIME
  • PRIOR_NON_DISPUTED_TRANSACTION_EMAIL_ADDRESS
  • PRIOR_NON_DISPUTED_TRANSACTION_ID
  • PRIOR_NON_DISPUTED_TRANSACTION_IP_ADDRESS
  • PRIOR_NON_DISPUTED_TRANSACTION_PHONE_NUMBER
  • PRIOR_NON_DISPUTED_TRANSACTION_PHYSICAL_ADDRESS
  • PURCHASER_EMAIL_ADDRESS
  • PURCHASER_IP_ADDRESS
  • PURCHASER_NAME
  • RECURRING_TRANSACTION_ARN
  • RECURRING_TRANSACTION_DATE_TIME
  • RECURRING_TRANSACTION_ID
  • REFUND_ID
  • TRACKING_NUMBER

DisputeType

Type of dispute.

enum values:

ExternalVaultStatus

A credit card's assocation with an external vault.

enum values:
  • VAULTED

    The payment method for this transaction has been vaulted in an external vault.

  • WILL_VAULT

    The payment method has not been vaulted in an exernal vault, but it will be if this transaction is successfully processed.


FraudServiceProvider

The fraud service provider used to generate the risk decision.

enum values:
  • CHARGEBACK_PROTECTION
  • EFFORTLESS_CHARGEBACK_PROTECTION
  • FRAUD_PROTECTION
  • FRAUD_PROTECTION_ADVANCED
  • FRAUD_PROTECTION_ENTERPRISE
  • KOUNT

FrequencyUnit

The unit of time for the interval which the payment is charged in a recurring billing plan.

enum values:
  • DAY
  • MONTH
  • WEEK
  • YEAR

GatewayRejectionReason

Possible reasons why a transaction was rejected by the gateway.

enum values:
  • APPLICATION_INCOMPLETE
  • AVS
  • AVS_AND_CVV
  • CVV
  • DUPLICATE
  • EXCESSIVE_RETRY
  • FRAUD
  • MANUAL_TRANSACTIONS_DISABLED
  • PAYMENT_METHOD_BLOCKED
  • RISK_THRESHOLD
  • THREE_D_SECURE
  • TOKEN_ISSUANCE
  • TOO_MANY_CONFIRMATION_ATTEMPTS
  • UNION_PAY_ENROLLMENT_REQUIRED

GooglePayEnvironment

The environment being used for Google Pay.

enum values:
  • PRODUCTION
  • SANDBOX
  • production
  • sandbox

InStoreBackgroundStyle

The type of background style on an in-store reader.

enum values:
  • PRIMARY
  • SECONDARY

InStoreContextStatus

Potential statuses of a context created as part of an in-store request.

enum values:
  • CANCELLED

    The request was canceled.

  • COMPLETE

    The requested operation was successfully completed.

  • FAILED

    The requested operation failed.

  • PENDING

    The request has been sent to the reader and is pending customer or point-of-sale interaction.

  • PROCESSING

    The requested operation is in progress.


InStorePaymentInitiator

The nature or characteristic of a transaction, including whether it is initiated by the merchant or the customer.

enum values:
  • ESTIMATED

    Transactions that are initiated by the customer when the final amount of the transaction is not known at the time of authorization. Applicable for InStoreAuthorizationInput only.


InStorePrintAlignment

The alignment of the content when printed on the in-store reader.

enum values:
  • CENTER
  • LEFT
  • RIGHT

InStorePrintTextDecoration

The decoration of the text on an in-store reader.

enum values:
  • LINE_THROUGH
  • NORMAL
  • OVERLINE
  • UNDERLINE

InStorePrintTextFontStyle

The font style of the text on an in-store reader.

enum values:
  • ITALIC
  • NORMAL

InStorePrintTextFontWeight

The font weight of the text on an in-store reader.

enum values:
  • BOLD
  • NORMAL

InStoreReaderAuthorizationMode

The authorization mode used to perform the transaction.

enum values:
  • CARD
  • ISSUER

InStoreReaderDisplayAlignment

The alignment of the text when displayed on the in-store reader.

enum values:
  • CENTER
  • LEFT

InStoreReaderTextPromptType

The type of text prompt on the in-store reader. If any of the SENSITIVE values are selected, the input characters will be masked on the device display.

enum values:
  • ALPHANUMERIC
  • NUMERIC
  • SENSITIVE_ALPHANUMERIC
  • SENSITIVE_NUMERIC

InStoreTransactionContextStatusReason

Additional information about an in-store charge or authorize context status.

enum values:
  • PARTIALLY_AUTHORIZED

    The context was completed with a partially authorized transaction. Please note that partial authorizations are only supported on versions >= 5.0.0 of the in-store reader payment application.


IndustryAdditionalChargeType

The type of additional charge for industry data.

enum values:
  • GIFT_SHOP
  • LAUNDRY
  • MINI_BAR
  • OTHER
  • RESTAURANT
  • TELEPHONE

IndustryCruiseTravelPackageType

The type of cruise travel package.

enum values:
  • CAR
  • FLIGHT
  • FLIGHT_AND_CAR
  • OTHER

LegacyIdType

The type of object the legacy ID represents when converting it to a global ID.

enum values:
  • CUSTOMER
  • DISPUTE
  • MERCHANT_ACCOUNT_APPLICATION
  • PAYMENT_CONTEXT
  • PAYMENT_METHOD
  • REFUND
  • TRANSACTION
  • US_BANK_ACCOUNT_VERIFICATION
  • VERIFICATION

LiabilityShiftCondition

If enrolled in Effortless Chargeback Protection, and in the event the transaction is disputed, these are the specific conditions under which the responsible party assumes liability for that chargeback.

enum values:
  • ITEM_NOT_RECEIVED
  • UNAUTHORIZED

LiabilityShiftResponsibleParty

If enrolled in Effortless Chargeback Protection, and in the event the transaction is disputed, these are the possible parties which can assume liability.

enum values:
  • ISSUER
  • PAYPAL

LocalPaymentMethodType

A value identifying the type of regional payment method.

enum values:
  • ALIPAY
  • BANCOMATPAY
  • BANCONTACT
  • BLIK
  • BOLETOBANCARIO
  • EPS
  • GIROPAY
  • GRABPAY
  • IDEAL
  • MBWAY
  • MULTIBANCO
  • MYBANK
  • OXXO
  • P24
  • PAYU
  • PAY_UPON_INVOICE
  • SATISPAY
  • SEPA
  • SOFORT
  • SWISH
  • TRUSTLY
  • VERKKOPANKKI
  • VIPPS
  • WECHAT_PAY

MVVAcceptanceChannel

Means by which customers by their bills.

enum values:
  • FACE_TO_FACE
  • MAIL
  • PHONE
  • WEB

MVVRegistrationType

Supported MVV (Merchant Verification Value) programs.

enum values:
  • LOAN_VPP
  • TAX_DEBIT
  • UTIL_RATE
  • UTIL_VPP

MVVUtilityType

Supported MVV (Merchant Verification Value) utility types.

enum values:
  • ELECTRIC
  • GAS
  • TRASH
  • WATER

MandateType

Mandate type for SEPA Direct Debit Account.

enum values:
  • ONE_OFF
  • RECURRENT

MerchantAccountStatus

The status of a merchant account. This determines whether the merchant account can be used to create a Payment, and whether funds can continue to flow to the associated bank account.

enum values:
  • ACTIVE

    The merchant account can be used to create transactions and refunds.

  • PENDING

    The merchant account is still being set up, and cannot be used to create transactions or refunds yet.

  • SUSPENDED

    The merchant account cannot be used to process transactions or refunds.


NetworkTokenOrigin

The source of the network token.

enum values:
  • APPLE_PAY
  • GOOGLE_PAY
  • NETWORK_TOKEN

NonInstantLocalPaymentMethodType

A value identifying the type of non-instant regional payment method.

enum values:
  • BOLETOBANCARIO
  • MULTIBANCO
  • OXXO
  • TRUSTLY

OAuthTokenType

OAuth access token type.

enum values:
  • BEARER

OwnerAddressType

The owner's address type.

enum values:
  • HOME
  • MAILING

OwnerIDType

The type of identity number provided for the owner.

enum values:
  • SOCIAL_SECURITY_NUMBER

OwnerPhoneType

The owner's phone type.

enum values:
  • HOME
  • MOBILE

OwnerPosition

The position that the owner holds in the business.

enum values:
  • BENEFICIAL_OWNER
  • CHAIRMAN
  • DIRECTOR
  • PARTNER
  • SECRETARY
  • TREASURER

OwnerRole

The role that the owner holds in the business.

enum values:
  • BENEFICIAL_OWNER
  • SIGNIFICANT_RESPONSIBILITY

PayPalBillingAgreementChargePattern

Expected business/pricing model for a billing agreement (Charge Patterns).

enum values:
  • DEFERRED

    Pay after use, non-recurring post-paid, variable amount, irregular.

  • IMMEDIATE

    On-demand instant payments - non-recurring, pre-paid, variable amount.

  • RECURRING_POSTPAID

    Pay on a fixed date based on usage or consumption after the goods/service is delivered.

  • RECURRING_PREPAID

    Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered.

  • THRESHOLD_POSTPAID

    Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered.

  • THRESHOLD_PREPAID

    Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered.


PayPalEnvironment

The environment being used for PayPal.

enum values:
  • CUSTOM
  • LIVE
  • OFFLINE
  • custom
  • live
  • offline

PayPalFinancingCreditProductIdentifier

Possible identifiers for credit products provided via PayPal.

enum values:
  • CREDIT_CARD_INSTALLMENTS_BR

    Brazil Credit Card Installments.

  • CREDIT_CARD_INSTALLMENTS_MX

    Mexico Credit Card Installments.

  • CREDIT_CARD_US

    United States Credit Card.

  • PAYPAL_CREDIT_DE

    Germany PayPal Credit.

  • PAYPAL_CREDIT_UK

    United Kingdom PayPal Credit.

  • PAYPAL_CREDIT_US

    United States PayPal Credit.

  • PAY_LATER_FR

    France Pay Later.

  • PAY_LATER_GB

    Great Britain Pay Later.

  • PAY_LATER_US

    United States Pay Later.

  • PAY_UPON_INVOICE_DE

    Germany Pay Upon Invoice.


PayPalFinancingOptionCreditType

PayPal Financing option credit type.

enum values:
  • INSTALLMENT
  • NO_INTEREST
  • PAY_UPON_INVOICE
  • SAME_AS_CASH

PayPalIntent

The intent for PayPal payments.

enum values:
  • AUTHORIZE

    Merchant will authorize the payment, but the funds will be captured separately.

  • ORDER

    Merchant will create a PayPal Order. This validates the transaction without an authorization (i.e. without holding funds). Useful for authorizing and capturing funds up to 90 days after the order has been placed.

  • SALE

    Merchant will authorize and captures funds simultaneously.


PayPalLandingPageType

The type of landing page to display on the PayPal site for user checkout.

enum values:
  • BILLING
  • DEFAULT
  • LOGIN

PayPalRecurringBillingPlan

The type of recurring billing plan associated with the billing agreement.

enum values:
  • INSTALLMENT
  • RECURRING
  • SUBSCRIPTION
  • UNSCHEDULED

PayPalRecurringBillingPricingModel

The type of pricing model used for recurring billing.

enum values:
  • AUTO_RELOAD
  • FIXED
  • VARIABLE

PayPalRetailAppUsedForScanning

The app used to scan an in-store QR code.

enum values:
  • PAYPAL
  • VENMO

PayPalShippingOptionType

The method by which the payer wants to receive their items.

enum values:
  • PICKUP
  • SHIPPING

PayPalUserAction

PayPal User action type.

enum values:
  • COMMIT
  • CONTINUE

PaymentInitiator

The initiator of the payment. Payment can either be merchant-initiated or customer-initiated.

enum values:
  • ESTIMATED

    Transactions that are initiated by the merchant or customer when the final amount of the transaction is not known at the time of authorization.

  • INSTALLMENT

    Transactions for subsequent installment payments. (e.g. when the customer makes a single large purchase and wants to make payments over time).

  • INSTALLMENT_FIRST

    Transactions that represent the first in a series of installment payments. Note: INSTALLMENT and INSTALLMENT_FIRST may only be available in certain regions. If installment transactions are not supported in your region, the transaction will automatically be categorized as recurring.

  • MOTO

    Transactions that are initiated by the customer via the merchant by mail or telephone.

  • RECURRING

    Transactions that are initiated by the merchant for subsequent recurring payments (e.g. subscriptions with a fixed amount on a predefined schedule).

  • RECURRING_FIRST

    Transactions initiated by the customer that represent the first in a series of recurring payments or subscription.

  • UNSCHEDULED

    Transactions that are initiated by the merchant for unscheduled payments that are not recurring on a predefined schedule or amount (e.g. balance top-up).


PaymentMethodDeletionInitiator

Initiator of a payment method delete request.

enum values:
  • CUSTOMER
  • MERCHANT

PaymentMethodOriginType

A value identifying the third-party origin from which a customer provided their payment method.

enum values:
  • APPLE_PAY
  • GOOGLE_PAY
  • IN_STORE_READER
  • MASTERPASS
  • META_CHECKOUT
  • NETWORK_TOKEN
  • PAYPAL
  • SAMSUNG_PAY

    Deprecated: Samsung is no longer supported.

  • VISA_CHECKOUT

PaymentMethodSnapshotSearchType

A value identifying the type of payment method used for a transaction. For certain payment methods such as credit cards, this value also encodes the origin from which a customer provided that payment method.

enum values:
  • ALIPAY_VIA_PAYPAL
  • BANCOMATPAY_VIA_PAYPAL
  • BANCONTACT_VIA_PAYPAL
  • BLIK_VIA_PAYPAL
  • BOLETOBANCARIO_VIA_PAYPAL
  • CREDIT_CARD
  • CREDIT_CARD_VIA_APPLE_PAY
  • CREDIT_CARD_VIA_GOOGLE_PAY
  • CREDIT_CARD_VIA_MASTERPASS
  • CREDIT_CARD_VIA_META_CHECKOUT
  • CREDIT_CARD_VIA_NETWORK_TOKEN
  • CREDIT_CARD_VIA_SAMSUNG_PAY

    Deprecated: Samsung is no longer supported.

  • CREDIT_CARD_VIA_VISA_CHECKOUT
  • EPS_VIA_PAYPAL
  • GIROPAY_VIA_PAYPAL
  • GRABPAY_VIA_PAYPAL
  • IDEAL_VIA_PAYPAL
  • LOCAL_PAYMENT
  • MBWAY_VIA_PAYPAL
  • MULTIBANCO_VIA_PAYPAL
  • MYBANK_VIA_PAYPAL
  • OXXO_VIA_PAYPAL
  • P24_VIA_PAYPAL
  • PAYPAL
  • PAYU_VIA_PAYPAL
  • PAY_UPON_INVOICE_VIA_PAYPAL
  • SATISPAY_VIA_PAYPAL
  • SEPA_DIRECT_DEBIT
  • SEPA_VIA_PAYPAL
  • SOFORT_VIA_PAYPAL
  • SWISH_VIA_PAYPAL
  • TRUSTLY_VIA_PAYPAL
  • US_BANK_ACCOUNT
  • VENMO_ACCOUNT
  • VERKKOPANKKI_VIA_PAYPAL
  • VIPPS_VIA_PAYPAL
  • WECHAT_PAY_VIA_PAYPAL

PaymentMethodUsage

Possible usages for payment methods.

enum values:
  • MULTI_USE
  • SINGLE_USE

PaymentReaderInputMode

The input mode used on the payment reader to facilitate an in-store transaction.

enum values:
  • CONTACT
  • CONTACTLESS
  • MAGSTRIPE
  • MAGSTRIPE_FALLBACK
  • MANUAL_KEY_ENTRY
  • VAULT

PaymentSearchType

The type of a Payment, based primarily on implementing type.

enum values:
  • DETACHED_REFUND

    Only use this field if you have processed detached credits. The payment is a Refund, and represents a refund of a transaction not processed through your Braintree account.

  • REFUND

    The payment is a Refund, and represents a refund of a transaction present in this Braintree account. Unless you have processed any detached credits, this type encompasses all refunds.

  • TRANSACTION

    The payment is a Transaction.


PaymentSource

The origin of a request that created or changed a transaction or refund.

enum values:
  • API
  • CONTROL_PANEL
  • PAYMENT_READER
  • RECURRING
  • UNKNOWN

PaymentStatus

The status of the payment, indicating its success or failure, and where it is in its lifecycle. For further details on why any given status occurred, consult the corresponding PaymentStatusEvent in the payment's statusHistory.

enum values:
  • AUTHORIZATION_EXPIRED

    The transaction spent too much time in the AUTHORIZED status and was marked as expired. Expiration time frames differ by card type, transaction type, and, in some cases, merchant category.

  • AUTHORIZED

    The processor authorized the transaction, putting your customer's funds on hold. Your customer may see a pending charge on his or her account. However, before the customer is actually charged and before you receive the funds, you must use the captureTransaction mutation. If you do not want to capture the transaction, you should use the reverseTransaction mutation to avoid a misuse of authorization fee.

  • AUTHORIZING

    If a payment remains in a status of AUTHORIZING, contact us for assistance.

  • FAILED

    An error occurred when sending the payment to the downstream processor. See the payment's statusHistory for the exact error.

  • GATEWAY_REJECTED

    The transaction was rejected based on one or more settings or rules in your Braintree gateway. See the transaction's statusHistory to determine which resulted in the decline.

  • PROCESSOR_DECLINED

    The processor declined the transaction while attempting to authorize it. See the transaction's statusHistory to determine what reason the processor gave for the decline.

  • SETTLED

    The payment has been settled. For transactions, this means your customer has been charged and the process of disbursing the funds to your bank account has begun. For refunds, it means that the process of disbursing funds back to the customer has begun.

  • SETTLEMENT_CONFIRMED

    The transaction was captured partially and will not be submitted to processor for settling. Its child transaction(s) has been successfully captured and will be included in the next settlement batch.

  • SETTLEMENT_DECLINED

    The processor declined the payment while attempting to capture it. See the payment's statusHistory to determine why it wasn't settled. This status is rare, and only certain types of transactions can be affected.

  • SETTLEMENT_PENDING

    The transaction has not yet fully settled. This status is rare, and will generally resolve to a status of SETTLED. Only certain types of transactions can be affected.

  • SETTLING

    The payment is in the process of being settled. This is a transitory state, and will resolve to a status of SETTLED.

  • SUBMITTED_FOR_SETTLEMENT

    The payment has been successfully captured, and will be included in the next settlement batch, at which time it will become settled.

  • VOIDED

    The payment has been voided or canceled. For transactions, this means it's no longer authorized, your customer's funds are no longer on hold, and you can't use the captureTransaction mutation on this transaction. For refunds, it means the customer will not receive the funds from the refund.


PreDisputeProgram

The pre-dispute program of the dispute.

enum values:
  • NONE

    The dispute does not have a pre-dispute program.

  • VISA_RDR

    The dispute is part of the Visa Rapid Dispute Resolution (RDR) program.


ProcessingMode

A value identifying whether the authorization for a transaction was requested online or as a deferred authorization.

enum values:
  • DEFERRED
  • ONLINE

ProcessorDeclineType

Whether the decline is likely to be temporary or persistent. Can be taken into consideration when determining whether to retry a declined charge.

enum values:
  • HARD

    Hard declines are the result of an error or issue which can't be resolved immediately; the decline is not temporary and subsequent charges on the same payment method will likely not be successful.

  • SOFT

    Soft declines result from a temporary issue and can be retried; subsequent charges on the same payment method may be successful.


ProductCode

Available product names.

enum values:
  • ADD_SURCHARGE_MID
  • FASTLANE
  • IN_PERSON

ProductEnablementStatus

Product enablement state.

enum values:
  • AVAILABLE
  • DISABLED
  • ENABLED
  • NOT_AVAILABLE
  • PROVISIONING

ReaderStatus

Indicates the status of a Reader.

enum values:
  • OFFLINE
  • ONLINE

RecurringType

The type of recurring payment a transaction represents.

enum values:
  • FIRST
  • SUBSEQUENT
  • UNSCHEDULED

RefundPolicy

Supported refund policies.

enum values:
  • EXCHANGE_ONLY
  • NO_REFUND_OR_EXCHANGE
  • REFUND_CARDHOLDER

RiskDecision

The risk decision provides further context on how a transaction was scored for risk by Braintree.

enum values:
  • APPROVE
  • DECLINE
  • NOT_EVALUATED
  • REVIEW

SamsungPayEnvironment

Deprecated: Samsung pay is no longer supported.

The environment being used for Samsung Pay.

enum values:
  • PRODUCTION
  • SANDBOX
  • production
  • sandbox

SandboxSettlementState

The settlement state when forcing transaction settlement in the sandbox environment.

enum values:
  • SETTLED
  • SETTLEMENT_DECLINED

ScaExemptionType

The type of Strong Customer Authentication Exemption.

enum values:
  • LOW_VALUE
  • SECURE_CORPORATE
  • TRANSACTION_RISK_ANALYSIS
  • TRUSTED_BENEFICIARY

TaxInfoType

The type of tax identifier.

enum values:
  • BR_CNPJ
  • BR_CPF

ThreeDSecureAuthenticationAcsWindowSize

An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.

enum values:
  • FULL_PAGE
  • W250_H400
  • W390_H400
  • W500_H600
  • W600_H400

ThreeDSecureAuthenticationDeliveryTimeframe

Indicates the delivery timeframe if applicable.

enum values:
  • ELECTRONIC_DELIVERY
  • OVERNIGHT_SHIPPING
  • SAME_DAY_SHIPPING
  • TWO_OR_MORE_DAY_SHIPPING

ThreeDSecureAuthenticationMerchantProductCode

Merchant product code.

enum values:
  • ACCOMMODATION_RETAIL
  • AIRLINE
  • CAR_RENTAL
  • CASH_DISPENSING
  • DIGITAL_GOODS
  • FUEL
  • GENERAL_RETAIL
  • LUXURY_RETAIL
  • OTHER
  • RESTAURANT
  • SERVICES
  • TRAVEL

ThreeDSecureAuthenticationShippingType

Indicates the shipping type for the transaction.

enum values:
  • DIGITAL_GOODS
  • OTHER
  • SHIP_TO_ADDRESS_ON_FILE
  • SHIP_TO_BILLING_ADDRESS
  • SHIP_TO_OTHER_ADDRESS
  • SHIP_TO_STORE
  • TICKETS_NOT_SHIPPED

ThreeDSecureAuthenticationStatus

The 3D Secure authentication status of the card.

enum values:
  • AUTHENTICATE_ATTEMPT_SUCCESSFUL
  • AUTHENTICATE_ERROR
  • AUTHENTICATE_FAILED
  • AUTHENTICATE_FAILED_ACS_ERROR
  • AUTHENTICATE_FRICTIONLESS_FAILED
  • AUTHENTICATE_REJECTED
  • AUTHENTICATE_SIGNATURE_VERIFICATION_FAILED
  • AUTHENTICATE_SUCCESSFUL
  • AUTHENTICATE_SUCCESSFUL_ISSUER_NOT_PARTICIPATING
  • AUTHENTICATE_UNABLE_TO_AUTHENTICATE
  • AUTHENTICATION_BYPASSED
  • AUTHENTICATION_UNAVAILABLE
  • CHALLENGE_REQUIRED
  • DATA_ONLY_SUCCESSFUL
  • EXEMPTION_LOW_VALUE_SUCCESSFUL
  • EXEMPTION_TRA_SUCCESSFUL
  • LOOKUP_BYPASSED
  • LOOKUP_CARD_ERROR
  • LOOKUP_ENROLLED
  • LOOKUP_ERROR
  • LOOKUP_FAILED_ACS_ERROR
  • LOOKUP_NOT_ENROLLED
  • LOOKUP_SERVER_ERROR
  • MPI_SERVER_ERROR
  • SKIPPED_DUE_TO_RULE
  • UNSUPPORTED_ACCOUNT_TYPE
  • UNSUPPORTED_CARD
  • UNSUPPORTED_THREE_D_SECURE_VERSION

ThreeDSecureAuthenticationStatusIndicator

Indicates the current status of the 3D Secure authentication.

enum values:
  • AUTHENTICATION_REJECTED
  • CHALLENGE_REQUIRED_DECOUPLED_AUTHENTICATION
  • CHALLENGE_REQUIRED_FOR_AUTHENTICATION
  • FAILED_AUTHENTICATION
  • INFORMATIONAL_CHALLENGE_PREFERENCE_ACKNOWLEDGED
  • SUCCESSFUL_ATTEMPTS_TRANSACTION
  • SUCCESSFUL_AUTHENTICATION
  • UNABLE_TO_COMPLETE_AUTHENTICATION

ThreeDSecureAuthenticationTransactionType

Indicates the type of transaction for 3D Secure authentication.

enum values:
  • ADD_CARD
  • CARDHOLDER_VERIFICATION
  • DELAYED_SHIPMENT
  • INSTALLMENT
  • MAINTAIN_CARD
  • PAYMENT
  • PAYMENT_WITH_MULTIPLE_MERCHANTS
  • RECURRING
  • SPLIT_SHIPMENT

ThreeDSecureCardEnrolled

Indicates whether the card is enrolled in a 3D Secure program.

enum values:
  • BYPASS

    Authentication has been bypassed. This status will be returned if you set up bypass rules with CardinalCommerce, and they are triggered.

  • ERROR

    There was an error in determining whether the card is enrolled in a 3D Secure program.

  • NO

    The card is not enrolled.

  • UNAVAILABLE

    The DS (directory server) or ACS (access control server) is not available for authentication at the time of the request.

  • YES

    The card is enrolled.


ThreeDSecureDeviceChannel

The 3D Secure device channel.

enum values:
  • BROWSER
  • SDK

    For transactions initiated with Cardinal Mobile SDK.

  • THREE_R_I

    For Merchant Initiated or 3RI transactions.


ThreeDSecureLookupShippingMethod

Indicates the shipping method chosen for the transaction in the 3D Secure lookup.

enum values:
  • ELECTRONIC_DELIVERY
  • GROUND
  • OVERNIGHT_EXPEDITED
  • PRIORITY
  • SAME_DAY
  • SHIP_TO_STORE

ThreeDSecureMerchantInitiatedRequestType

The 3D Secure Merchant Initiated Request Type.

enum values:
  • DELAYED_SHIPMENT
  • INSTALLMENT
  • PAYMENT_WITH_MULTIPLE_MERCHANTS
  • RECURRING
  • SPLIT_SHIPMENT

ThreeDSecurePriorAuthenticationMethod

The 3D Secure Prior Authentication Method.

enum values:
  • AVS_VERIFIED
  • CHALLENGE
  • FRICTIONLESS
  • OTHER_ISSUER_METHOD

TransactionInstallmentAdjustmentType

Transaction Installment Adjustment type to indicate the reason for the adjustment.

enum values:
  • DISPUTE

    Dispute.

  • REFUND

    Refund.


TransactionLineItemType

Indicates whether a transaction line item is a debit (sale) or credit (refund).

enum values:
  • CREDIT
  • DEBIT

TransactionShippingMethod

Shipping method.

enum values:
  • ELECTRONIC
  • GROUND
  • NEXT_DAY
  • PICKUP_IN_STORE
  • PRIORITY
  • SAME_DAY
  • SHIP_TO_STORE

UpcType

The type of UPC(Universal Product Code).

enum values:
  • UPC_2
  • UPC_5
  • UPC_A
  • UPC_B
  • UPC_C
  • UPC_D
  • UPC_E

UsBankAccountOwnershipType

The ownership type of US Bank Account.

enum values:
  • BUSINESS
  • PERSONAL

UsBankAccountType

The type of US Bank Account.

enum values:
  • CHECKING
  • SAVINGS

UsBankAccountVerificationAddOn

Additional verifications for UsBankAccountVerificationMethod of type Network Check. See our ACH guide.

enum values:
  • CUSTOMER_VERIFICATION

    Additional verification via customer information.


UsBankAccountVerificationMethod

The type of verification on a US bank account payment method. See our ACH guide.

enum values:
  • INDEPENDENT_CHECK

    Verification conducted independently by the merchant, not through Braintree.

  • MICRO_TRANSFERS

    Verification by micro-deposits transferred to the bank account, which the customer must then confirm. The most reliable method, but takes additional time.

  • NETWORK_CHECK

    Verification via account information. Will complete the verification process immediately, but is not supported by all banks.

  • TOKENIZED_CHECK

    Verification at the point of tokenization. Requires integration with a third-party provider. Because this requires a different tokenization flow, this method of verification is only supported for vaulting tokenized US bank account logins, and is not supported when re-verifying a US bank account payment method.


UsStateCode

A two-letter code representing a US state or territory.

enum values:
  • AK
  • AL
  • AR
  • AS
  • AZ
  • CA
  • CO
  • CT
  • DC
  • DE
  • FL
  • GA
  • GU
  • HI
  • IA
  • ID
  • IL
  • IN
  • KS
  • KY
  • LA
  • MA
  • MD
  • ME
  • MI
  • MN
  • MO
  • MP
  • MS
  • MT
  • NC
  • ND
  • NE
  • NH
  • NJ
  • NM
  • NV
  • NY
  • OH
  • OK
  • OR
  • PA
  • PR
  • RI
  • SC
  • SD
  • TN
  • TX
  • UM
  • UT
  • VA
  • VI
  • VT
  • WA
  • WI
  • WV
  • WY

UserStatus

The status of the user.

enum values:
  • ACTIVE
  • DELETED
  • PASSIVE
  • PENDING
  • SUSPENDED

VaultPaymentMethodCriteria

Defines criteria for vaulting a single-use payment method after transacting with it.

enum values:
  • ALWAYS

    Always store the single-use payment method after transacting, regardless of the status of the transaction.

  • ON_SUCCESSFUL_TRANSACTION

    Only store the single-use payment method if it was successfully authorized.


VaultQRCOverride

The override options for QR code vaulting.

enum values:
  • HIDE_QRC

    Do not show QR code as a payment option, even if it is enabled.

  • SHOW_QRC_NO_VAULT

    If QR codes are enabled, show as a payment option, but do not vault.


VenmoEnvironment

The environment being used for Venmo.

enum values:
  • PRODUCTION
  • SANDBOX
  • production
  • sandbox

VenmoIntent

The intended checkout flow communicated to the Venmo app.

enum values:
  • CONTINUE

    Continue through the current checkout flow.

  • PAY_FROM_APP

    Initiate the transaction directly from the Venmo app.


VenmoPaymentContextStatus

The status of the Venmo payment context.

enum values:
  • APPROVED

    Venmo user has approved the payment.

  • CANCELED

    Venmo user has canceled the payment.

  • CREATED

    The Venmo payment context is created.

  • EXPIRED

    The window for payment has expired and the context was ended.

  • FAILED

    The payment failed and the context was ended.

  • SCANNED

    Venmo user has scanned the QR code.


VerificationStatus

The status of the verification, indicating whether the payment method was successfully verified. Braintree recommends only vaulting payment methods with successful verifications.

enum values:
  • FAILED

    Indicates the verification was unsuccessful because of an issue communicating with the processor.

  • GATEWAY_REJECTED

    Indicates that the verification was unsuccessful because the payment method failed one or more fraud checks. In this case, the gatewayRejectionReason will indicate which fraud check failed.

  • PENDING

    Indicates that the verification is pending.

  • PROCESSOR_DECLINED

    Indicates that the verification was unsuccessful based on the response from the processor.

  • VERIFIED

    Indicates that the verification was successful.

  • VERIFYING

    Indicates that the verification is in the process of verifying.


__DirectiveLocation

An enum describing valid locations where a directive can be placed

enum values:
  • QUERY

    Indicates the directive is valid on queries.

  • MUTATION

    Indicates the directive is valid on mutations.

  • SUBSCRIPTION

    Indicates the directive is valid on subscriptions.

  • FIELD

    Indicates the directive is valid on fields.

  • FRAGMENT_DEFINITION

    Indicates the directive is valid on fragment definitions.

  • FRAGMENT_SPREAD

    Indicates the directive is valid on fragment spreads.

  • INLINE_FRAGMENT

    Indicates the directive is valid on inline fragments.

  • VARIABLE_DEFINITION

    Indicates the directive is valid on variable definitions.

  • SCHEMA

    Indicates the directive is valid on a schema SDL definition.

  • SCALAR

    Indicates the directive is valid on a scalar SDL definition.

  • OBJECT

    Indicates the directive is valid on an object SDL definition.

  • FIELD_DEFINITION

    Indicates the directive is valid on a field SDL definition.

  • ARGUMENT_DEFINITION

    Indicates the directive is valid on a field argument SDL definition.

  • INTERFACE

    Indicates the directive is valid on an interface SDL definition.

  • UNION

    Indicates the directive is valid on an union SDL definition.

  • ENUM

    Indicates the directive is valid on an enum SDL definition.

  • ENUM_VALUE

    Indicates the directive is valid on an enum value SDL definition.

  • INPUT_OBJECT

    Indicates the directive is valid on an input object SDL definition.

  • INPUT_FIELD_DEFINITION

    Indicates the directive is valid on an input object field SDL definition.


__TypeKind

An enum describing what kind of type a given __Type is

enum values:
  • SCALAR

    Indicates this type is a scalar. 'specifiedByUrl' is a valid field

  • OBJECT

    Indicates this type is an object. fields and interfaces are valid fields.

  • INTERFACE

    Indicates this type is an interface. fields and possibleTypes are valid fields.

  • UNION

    Indicates this type is a union. possibleTypes is a valid field.

  • ENUM

    Indicates this type is an enum. enumValues is a valid field.

  • INPUT_OBJECT

    Indicates this type is an input object. inputFields is a valid field.

  • LIST

    Indicates this type is a list. ofType is a valid field.

  • NON_NULL

    Indicates this type is a non-null. ofType is a valid field.


Inputs

AcceptDisputeInput

Top-level input fields for accepting a dispute.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • disputeId: ID!

    The ID of the dispute to be accepted.


AccountCreationStatusSearchInput

Input fields for searching for BusinessAccountCreationRequests by their AccountCreationStatus.

input:

AddressInput

Input fields for an Address.

input:
  • company: String

    Company name. 255 character maximum.

  • streetAddress: String

    The street address. 255 character maximum.

  • addressLine1: String

    The first line of the street address, such as street number, street name. 255 character maximum.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number. 255 character maximum.

  • addressLine2: String

    Extended address information, such as apartment number or suite number. 255 character maximum.

  • firstName: String

    First name. 255 character maximum.

  • lastName: String

    Last name. 255 character maximum.

  • locality: String

    Locality/city. 255 character maximum.

  • adminArea2: String

    A city, town or village. 255 character maximum.

  • region: String

    State or province. 255 character maximum.

  • adminArea1: String

    Highest level subdivision, such as state, province or ISO-3166-2 subdivision. 255 character maximum.

  • postalCode: String

    Postal code in any country's format, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code. Nine alphanumeric characters maximum, may also contain spaces and hyphens.

    Required in the shipping address for Level 3 processing.

  • countryCode: CountryCode

    Country code for the address.

    Required in the shipping address for Level 3 processing.

  • countryCodeAlpha3: String

    Deprecated: This field is included for supporting legacy clients. Please use countryCode instead.

    Country code for the address in ISO 3166-1 alpha-3 format.

  • countryCodeAlpha2: String

    Deprecated: This field is included for supporting legacy clients. Please use countryCode instead.

    Country code for the address in ISO 3166-1 alpha-2 format.

  • countryCodeNumeric: String

    Deprecated: This field is included for supporting legacy clients. Please use countryCode instead.

    Country code for the address in ISO 3166-1 numeric format.

  • countryName: String

    Deprecated: This field is included for supporting legacy clients. Please use countryCode instead.

    Country name for the address.


AuthenticationInsightInput

Input fields when requesting authentication insight for a payment method.

input:
  • merchantAccountId: ID!

    ID of the merchant account that will be used when charging this payment method.

  • amount: Amount

    The intended transaction amount to be authorized on this payment method.

  • recurringCustomerConsent: Boolean

    A flag indicating whether the customer has consented to further recurring transactions.

  • recurringMaxAmount: Amount

    The maximum amount permitted for recurring transactions set by the customer.


AuthorizeCreditCardInput

Top-level input fields for creating a transaction by authorizing a credit card.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a credit card payment method to be authorized.

  • options: CreditCardTransactionOptionsInput

    Input fields related to the credit card being authorized.

  • transaction: TransactionInput!

    Input fields for the authorization, with details that will define the resulting transaction.


AuthorizePayPalAccountInput

Top-level input fields for creating a transaction by authorizing a PayPal account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a PayPal payment method to be authorized.

  • options: AuthorizePayPalAccountOptionsInput

    Input fields related to the PayPal account being authorized.

  • transaction: TransactionInput!

    Input fields for the authorization, with details that will define the resulting transaction.


AuthorizePayPalAccountOptionsInput

Input fields for authorizing a PayPal account.

input:
  • customField: String

    Variable passed directly to PayPal for your own tracking purposes. Customers do not see this value.

  • description: String

    Description of the transaction that is displayed to customers in PayPal email receipts.

  • payee: PayPalPayeeOptionsInput

    Deprecated: This field is no longer supported.


AuthorizePaymentMethodInput

Top-level input fields for creating a transaction by authorizing a payment method.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a payment method to be authorized.

  • transaction: TransactionInput!

    Input fields for the authorization, with details that will define the resulting transaction.


AuthorizeVenmoAccountInput

Top-level input fields for creating a transaction by authorizing a Venmo account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a Venmo payment method to be authorized.

  • options: AuthorizeVenmoAccountOptionsInput

    Input fields related to the Venmo account being authorized.

  • transaction: TransactionInput!

    Input fields for the authorization, with details that will define the resulting transaction.


AuthorizeVenmoAccountOptionsInput

Input fields for authorizing a Venmo account.

input:
  • profileId: String

    Specifies which Venmo business profile to use for the transaction.


BusinessAccountCreationRequestSearchInput

Input fields for searching for BusinessAccountCreationRequests.

input:

CaptureTransactionInput

Top-level input fields for capturing an authorized transaction.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    ID of the transaction to be captured.

  • amount: Amount

    Deprecated: This field is included for supporting legacy clients. Please use transaction.amount instead.

    The amount to capture on the transaction. Must be greater than 0. You can't capture more than the authorized amount unless your industry and processor support settlement adjustment (capturing a certain percentage over the authorized amount); contact us for assistance. If you capture an amount that is less than what was authorized, the transaction object will return the amount captured.

  • transaction: CaptureTransactionOptionsInput

    Input fields for the capture, with details that will define the resulting transaction.


CaptureTransactionOptionsInput

Input fields for a capture, with details that will define the resulting transaction.

input:
  • amount: Amount

    The amount to capture on the transaction. Must be greater than 0. You can't capture more than the authorized amount unless your industry and processor support settlement adjustment (capturing a certain percentage over the authorized amount); contact us for assistance. If you capture an amount that is less than what was authorized, the transaction object will return the amount captured.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase. If specified, this will update the existing descriptor on the transaction.

  • discountAmount: String

    Discount amount that was included in the total transaction amount. Does not add to the total amount the payment method will be charged. This value can't be negative. Please note that this field is not used on PayPal transactions.

    Required for Level 3 processing.

  • lineItems: [TransactionLineItemInput!]

    Line items for this transaction. Up to 249 line items may be specified.

    Required for Level 3 processing.

  • orderId: String

    Additional information about the transaction. On PayPal transactions, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal transactions. If specified, this will update the existing order ID on the transaction.

  • purchaseOrderNumber: String

    A purchase order identification value you associate with this transaction.

    Required for Level 2 processing.

  • shipping: TransactionShippingInput

    Shipping information.

    Required for Level 3 processing.

  • tax: TransactionTaxInput

    Tax information about the transaction.

    Required for Level 2 processing.

  • industry: TransactionIndustryInput

    Industry data information. Only one of the three sub-input fields can be provided.


ChargeCreditCardInput

Top-level input fields for creating a transaction by charging a credit card.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a credit card payment method to be charged.

  • options: CreditCardTransactionOptionsInput

    Input fields for creating a credit card transaction.

  • transaction: TransactionInput!

    Input fields for the charge, with details that will define the resulting transaction.


ChargePayPalAccountInput

Top-level input fields for creating a transaction by charging a PayPal account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The ID of an existing PayPal account.

  • options: ChargePayPalAccountOptionsInput

    Input fields related to the PayPal account being charged.

  • transaction: TransactionInput!

    Input fields for the charge, with details that will define the resulting transaction.


ChargePayPalAccountOptionsInput

Input fields for creating a transaction with a PayPal account.

input:
  • customField: String

    Variable passed directly to PayPal for your own tracking purposes. Customers do not see this value.

  • description: String

    Description of the transaction that is displayed to customers in PayPal email receipts.

  • payee: PayPalPayeeOptionsInput

    Deprecated: This field is no longer supported.

  • selectedFinancingOption: SelectedPayPalFinancingOptionInput

    Buyer selected PayPal financing option.


ChargePaymentMethodInput

Top-level input fields for creating a transaction by charging a payment method.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of a payment method to be charged.

  • transaction: TransactionInput!

    Input fields for the charge, with details that will define the resulting transaction.


ChargeUsBankAccountInput

Top-level input fields for creating a transaction by charging a US bank account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The ID of an existing US bank account.

  • options: ChargeUsBankAccountOptionsInput

    Input fields related to the US bank account being charged.

  • transaction: TransactionInput!

    Input fields for the charge, with details that will define the resulting transaction.


ChargeUsBankAccountOptionsInput

Input fields for creating a transaction with a US bank account.

input:
  • standardEntryClassCode: ACHStandardEntryClassCode

    A NACHA standard entry class (SEC) code, which designates how the transaction was authorized. Most internet-based sales should use the WEB code.


ChargeVenmoAccountInput

Top-level input fields for creating a transaction by charging a Venmo account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The ID of an existing Venmo account.

  • options: ChargeVenmoAccountOptionsInput

    Input fields for creating a Pay with Venmo transaction.

  • transaction: TransactionInput!

    Input fields for the charge, with details that will define the resulting transaction.


ChargeVenmoAccountOptionsInput

Input fields for creating a Pay with Venmo transaction.

input:
  • profileId: String

    Specifies which Venmo business profile to use for the transaction.


ClientTokenInput

Input fields for creating a client token.

input:
  • merchantAccountId: ID

    The merchant account ID used to create the client token. Defaults to your default merchant account ID.

  • customerId: ID

    The ID of an existing customer. Including this will allow your customer to vault and manage their payment methods.

  • domains: [String!]

    Some services require a list of domains that are allowed to use this token.


ConfirmMicroTransferAmountsInput

Top-level input field for confirming micro-transfer values.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • verificationId: ID!

    The ID of the verification from vaulting the bank account.

  • amountsInCents: [Int!]

    The amounts, in cents, of two deposits made into the customer's bank account after initiating a MICRO_TRANSFERS verification. These values should be collected from your customer.


CreateClientTokenInput

Top-level input field for generating a client token.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • clientToken: ClientTokenInput

    Input fields for creating a client token.


CreateCustomerInput

Top-level field for creating a customer.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customer: CustomerInput

    Input fields for creating a customer.


CreateDisputeFileEvidenceInput

Top-level input fields for adding file evidence to a dispute.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • disputeId: ID!

    The ID of the dispute to be accepted.

  • category: DisputeFileEvidenceCategory

    The category for the evidence file.


CreateDisputeTextEvidenceInput

Top-level input fields for creating text evidence for a dispute.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • disputeId: ID!

    The ID of the dispute to create the evidence for.

  • category: DisputeTextEvidenceCategory

    The category of the text evidence.

  • content: String!

    The content of the text evidence.


CreateInStoreLocationInput

Input fields for creating an in store location.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • location: InStoreLocationInput!

    Input fields to create an in-store Location.


CreateNonInstantLocalPaymentContextInput

Top-level input fields for creating a non-instant local payment context.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentContext: NonInstantLocalPaymentContextInput!

    Input fields for creating a non-instant local payment context.


CreateOAuthClientSecretInput

Input fields for creating a new OAuth client secret.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


CreatePayPalBillingAgreementInput

Top-level input field for creating a PayPal Billing Agreement Token.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • merchantAccountId: ID

    Braintree merchant account ID associated with the PayPal account to be used for the Billing Agreement creation.

  • returnUrl: URL!

    URL for redirect back to merchant app on the client indicating successful approval.

  • cancelUrl: URL!

    URL for redirect back to merchant app on the client indicating unsuccessful approval.

  • description: String

    Description of the PayPal Billing Agreement, displayed to the PayPal user on paypal.com and other PayPal user experiences.

  • email: EmailAddress

    Email of the payer (if known). This will prepopulate the input field in the PayPal approval page.

  • offerPayPalCredit: Boolean

    Indicates whether PayPal Credit should be offered in the PayPal approval flow.

  • recurringBillingPlan: PayPalRecurringBillingPlanInput

    Billing plan for recurring payments.

  • paypalRiskCorrelationId: ID

    PayPal Risk correlation ID (also known as the Client Metadata ID).

  • paypalExperienceProfile: PayPalBillingAgreementExperienceProfileInput

    Defines the experience profile used to render the billing agreement approval flow.

  • shippingAddress: AddressInput

    Merchant-provided shipping address. Fields addressLine1, adminArea2, and countryCode are required for Billing Agreements.

  • paypalProductAttributes: PayPalProductAttributesInput

    Product attributes input for PayPal billing agreement.


CreatePayPalOneTimePaymentInput

Top-level input field for creating a PayPal One-Time Payment.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • merchantAccountId: ID

    Braintree merchant account ID associated with the PayPal account to be used for the One-Time payment creation.

  • amount: MonetaryAmountInput!

    Total amount for payment to be charged to consumer.

  • cancelUrl: URL!

    URL for redirect back to merchant app on the client indicating unsuccessful approval.

  • email: EmailAddress

    Email of the payer. This will prepopulate the input field in the PayPal approval login page.

  • intent: PayPalIntent!

    The payment intent.

  • lineItems: [PayPalLineItemInput!]

    The line items for this transaction. Maximum 249 line items.

  • offerPayLater: Boolean

    Indicates whether PayPal Pay Later should be offered in the PayPal approval flow.

  • paypalRiskCorrelationId: ID

    PayPal Risk correlation ID (also known as the Client Metadata ID).

  • paypalExperienceProfile: PayPalExperienceProfileInput

    Defines the experience profile used to render the approval flow.

  • requestBillingAgreement: Boolean

    Indicates whether this payment uses the Billing Agreement with Purchase flow. This will request Billing Agreement approval from the customer, and a multi-use PayPal payment method will be created alongside the transaction.

  • billingAgreementDescription: String

    A description of the Billing Agreement being requested. This is displayed to the customer on paypal.com when requestBillingAgreement is true. Maximum 127 characters.

  • returnUrl: URL!

    URL for redirect back to merchant app on the client indicating successful approval.

  • shippingAddress: AddressInput

    Merchant-provided shipping address. If passing a shipping address, fields addressLine1, adminArea2, and countryCode are required.

  • shippingOptions: [PayPalShippingOptionInput!]

    List of shipping options offered by the payee or merchant to the payer to ship or pick up their items. Note: shippingOptions may not be passed with intent ORDER payments.

  • shippingCallbackUrl: URL

    URL for redirecting back to the merchant app to update a customer shipping address.


CreateProductRequestForMerchantInput

Input fields for requesting access to a product.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • productCode: ProductCode!

    Code of product to be requested.


CreateTransactionPackageTrackingInput

Input fields for creating an individual package tracker for a PayPal transaction.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    The ID of the transaction to create the tracker for. The transaction be must be submitted for settlement before adding trackers. If this is a partial settlement transaction, provide the child transaction ID.

  • trackingNumber: String!

    Tracking number for this package. 64 characters maximum.

  • carrier: String!

    Shipping carrier. In order to provide customer with convenient tracking updates, refer to PayPal Add Tracking API Carriers, and use the middle column of screaming snake case values for the carrier of the shipment. If the carrier cannot be found in this list, use the carrier's name. 64 characters maximum.

  • notifyPayer: Boolean

    Indicator of whether or not to send customer notifications of shipment. Defaults to false.

  • lineItems: [TransactionPackageTrackingLineItemInput!]

    Line items for this shipment. Up to 249 line items may be specified.


CreateUniversalAccessTokenInput

Top-level input field for generating a PayPal access token.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customerId: ID

    The ID of an existing customer. Including this will allow the access token to interact with this customer's data.

  • type: ACRType!

    Authentication context class reference for the universal access token.


CreateVenmoPaymentContextInput

Fields that are provided when creating a Venmo context.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • intent: VenmoIntent!

    Complete the transaction from merchant site or Venmo App.

  • paymentMethodUsage: PaymentMethodUsage!

    Whether the resulting payment method may be used to make a one time payment (SINGLE_USE) or to create a vaulted multi-use payment token (MULTI_USE).

  • customerClient: CustomerClient!

    Client the customer used to initiate the transaction.

  • merchantProfileId: ID

    An identifier representing the profile of the merchant used to initiate the transaction.

  • displayName: String

    The sub-merchant display name shown on the Venmo app consent screen. This field will only be present for PayFast channel partner merchants.

  • paysheetDetails: VenmoPaysheetDetailsInput

    Details about the information to be displayed on the Venmo Paysheet.

  • isFinalAmount: Boolean

    Indicates whether the purchase amount is the final amount.

  • returnUrl: URL

    URL for redirecting back to merchant app or website on the client.


CreditCardFraudToolsOptionsInput

Input fields that allow you to skip certain fraud checks. These will override Control Panel settings.

input:
  • skipCvv: Boolean

    Skip CVV checks. Will result in a cvvResponse of BYPASS in the response from the processor. This only applies to chargeCreditCard and authorizeCreditCard; you cannot use these fields for vaultCreditCard and verifyCreditCard.

  • skipAvs: Boolean

    Skip AVS checks. Will result in an avsPostalCodeResponse of BYPASS in the response from the processor. This only applies to chargeCreditCard and authorizeCreditCard; you cannot use these fields for vaultCreditCard and verifyCreditCard.

  • skipAdvancedFraudChecking: Boolean

    Skip advanced fraud checks.


CreditCardInput

Input fields for a credit card.

input:
  • number: String

    The 12-to-19-digit value that uniquely identifies this credit card, also known as the primary account number or PAN.

  • expirationYear: String

    The two- or four-digit year associated with a credit card, formatted YYYY or YY.

  • expirationMonth: String

    The expiration month of a credit card, formatted MM.

  • cvv: String

    A three- or four-digit card verification value assigned to credit cards. The CVV will never be stored, but it can be provided with one-time requests to verify the card.

  • cardholderName: String

    When supplied, the cardholder name that will be tokenized with the contents of the fields.

  • billingAddress: AddressInput

    The billing address for the credit card.


CreditCardTransactionOptionsInput

Input fields for creating a transaction by authorizing or charging a credit card.

input:
  • externalVault: TransactionExternalVaultOptionsInput

    Details about this transaction if it's being created from a credit card that is or will be stored in an non-Braintree vault.

  • billingAddress: AddressInput

    A billing address to use for the transaction. If a billing address was provided when tokenizing or is present on the vaulted credit card, it will be merged with this input value, with priority given to this input value.

  • accountType: CardAccountType

    The type of account to be used when transacting with a combo card.

  • tokenizedCvv: ID

    The CVV for the credit card to be used when creating this transction, securely tokenized with the tokenizeCvv mutation.

  • fraudTools: CreditCardFraudToolsOptionsInput

    Control which fraud tools will be applied to this transaction. Fraud tools cannot be retroactively applied to a transaction if skipped.

  • threeDSecureAuthentication: ThreeDSecureAuthenticationInput

    3D Secure authentication information performed for this transaction. Only use these fields if you are charging or authorizing a single-use payment method ID that was not generated by a 3DS flow on on the client.

  • scaExemption: ScaExemptionType

    The type of Strong Customer Authentication Exemption requested.

  • installmentCount: Int

    Number of monthly installments (can be anywhere between 2 and 48).


CreditCardVerificationOptionsInput

Input fields that specify options for verifying the credit card.

input:
  • merchantAccountId: ID

    ID of the merchant account to use when verifying the credit card.

  • accountType: CardAccountType

    The type of account to be used when verifying a combo card.

  • riskData: RiskDataInput

    Customer device information, which is sent directly to supported processors for fraud analysis.

  • fraudTools: CreditCardFraudToolsOptionsInput

    Control which fraud tools will be applied to this verification. Fraud tools cannot be retroactively applied to a verification if skipped.

  • tokenizedCvv: ID

    The CVV for the credit card to be used when verifying the credit card, securely tokenized with the tokenizeCvv mutation.

  • amount: Amount

    The amount to use to verify the credit card.

  • skip: Boolean

    Whether to opt out of verifying the credit card. Defaults to false. Clients should only pass true in the uncommon scenario that the credit card has been verified externally to Braintree.


CustomActionsPaymentContextFieldInput

Fields that are provided when creating the payment context.

input:
  • name: String!

    An alphanumeric string used as a key to lookup a CustomField value (255 characters maximum).

  • value: String!

    An alphanumeric string used to store a CustomField value (7168 characters maximum).


CustomActionsPaymentMethodFieldInput

Fields that are provided during tokenization and are presented to the invoked action to be consumed.

input:
  • name: String!

    The name of this field. e.g. "accountNumber".

  • value: String!

    The value of this field. e.g. "123456789".

  • displayValue: String!

    The value displayed in the Control Panel or API. e.g. "*****6789".


CustomActionsPaymentMethodInput

Input fields for a Custom Actions payment method.

input:

CustomFieldInput

Custom field name/value pairs. Maximum 255 characters. You must set up each custom field in the Control Panel prior to passing it with a request.

input:
  • name: CustomFieldName!

    Name of the custom field as defined in the Control Panel.

  • value: String

    Value for the named custom field. A null value will ignore (on create) or remove (on update) the custom field.


CustomerInput

Input fields for creating or updating a customer. On update, omitted fields will not be updated. Passing a null value will assign null to that field.

input:
  • company: String

    Company or business name associated with the customer.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • email: String

    Email address for the customer.

  • firstName: String

    Customer's first name.

  • lastName: String

    Customer's last name.

  • phoneNumber: String

    The customer's phone number.

  • fax: String

    The customer's fax.

  • website: URL

    The customer's website.

  • taxIdentifiers: [CustomerTaxIdentifierInput!]

    A set of country code ID pairs, analogous to Social Security numbers in the United States.

    A customer may have multiple tax identifiers, but only one per tax jurisdiction. The values provided for an update will be stored and previous entries will be updated.

    Note: You will only need to use these fields for processing in certain countries.


CustomerSearchInput

Input fields for searching for customers.

input:

CustomerTaxIdentifierInput

The customer's tax identifer for a given tax jurisdiction.

input:
  • identifier: String!

    The identifier provided in the format required for the given tax jurisdiction.

  • countryCode: CountryCode!

    The country code of the tax jurisdiction for this tax identifier.


DeleteCustomerInput

Top-level input fields for deleting a customer.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customerId: ID!

    The ID of the customer to be deleted.


DeleteDisputeEvidenceInput

Input fields for deleting dispute evidence.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • evidenceId: ID!

    The ID of the evidence to be deleted.

  • disputeId: ID!

    The ID of the dispute that the evidence belongs to.


DeleteInStoreLocationInput

Top-level input fields for deleting an in-store location.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • locationId: ID!

    ID of the location to be deleted.


DeleteOAuthClientSecretInput

Input fields for deleting an OAuth client secret.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • secret: String!

    The secret value to be deleted.


DeletePaymentMethodFromSingleUseTokenInput

Top-level input fields for deleting a payment method referenced by a single-use token.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • singleUseTokenId: ID!

    A single-use token ID referencing a payment method.


DeletePaymentMethodFromVaultInput

Top-level input fields for deleting a multi-use payment method from the vault.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The ID of the multi-use payment method to be deleted.


DetachedRefundInput

Specific input fields for describing a detached refund.

input:
  • amount: Amount!

    The amount to refund.

  • orderId: String

    The refund's order ID.

  • merchantAccountId: ID

    ID of the merchant account that will be used when performing the refund.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's statement (for instance, credit card or bank statement) for this refund. This should match the original transaction if possible.


DisableOAuthClientSecretInput

Input fields for disabling an OAuth client secret.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • secret: String!

    The secret value to be disabled.


DisableProductForMerchantInput

Input to disable a Product for a Merchant.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • code: ProductCode!

    Unique code of the product being disabled.


DisputeSearchInput

Input fields for searching for Disputes.

input:

DisputeTransactionSearchInput

Transaction input fields for searching for disputes.

input:

EnableProductForMerchantInput

Input to enable a Product for a Merchant.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • code: ProductCode!

    Unique code of the product being enabled.


ExchangeRateQuoteInput

Input to generate the exchange rate quote.

input:
  • baseCurrency: CurrencyCodeAlpha!

    The currency code from which the exchange rate will be used to convert to the quoteCurrency.

  • quoteCurrency: CurrencyCodeAlpha!

    The currency code to which the exchange rate will be used to convert from baseCurrency.

  • baseAmount: Amount

    The amount in the baseCurrency to be converted to the quoteCurrency. If this is provided, the result will include the converted amount properly rounded.

  • markup: Percentage

    A percentage added into the exchange rate. This allows the merchant to settle for more than the quoted tradeRate.


FinalizeDisputeInput

Top-level input fields for finalizing a dispute.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • disputeId: ID!

    The ID of the dispute to be finalized.


GenerateExchangeRateQuoteInput

Input to generate a list of exchange rate quotes.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • quotes: [ExchangeRateQuoteInput!]

    Base and quote currency combinations for which the quote will be generated.


GeoCoordinatesInput

Coordinates describing a geographic position.

input:
  • latitude: Float!

    The angular distance of a place north or south of the earth's equator. A positive value is north of the equator, a negative value is south of the equator.

  • longitude: Float!

    The angular distance of a place east or west of the meridian at Greenwich, England. A positive value is east of the prime meridian, a negative value is west of the prime meridian.


InStoreAuthorizationInput

Input fields for creating an in-store authorization.

input:
  • amount: Amount!

    Billing amount of the request. This value must be greater than 0, and must match the currency format of the merchant account. This can only contain numbers and one decimal point (e.g. x.xx). Can't be greater than the maximum allowed by the processor.

  • merchantAccountId: ID

    Merchant account ID used to process the transaction. Currency is also determined by merchant account ID. If no merchant account ID is specified, we will use your default merchant account.

  • orderId: String

    Additional information about the transaction. On PayPal transactions, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal transactions.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase.

  • customerId: ID

    If charging a single-use payment method, optional ID of a customer to associate the transaction with. If vaulting the single-use payment method, this customer will be associated with the resulting multi-use payment method.

  • vaultPaymentMethodAfterTransacting: VaultPaymentMethodAfterTransactingInput

    When a single-use payment method is used to create this transaction, it can be automatically stored in the vault after transacting. If this field is left blank, the single-use payment method will not be vaulted.

  • channel: String

    For partners and shopping carts only. If you are a shopping cart provider or other Braintree partner, pass a string identifier for your service. For PayPal transactions, this maps to paypal.bn_code.

  • industry: TransactionIndustryInput

    Industry data information. Only one of the three sub-input fields can be provided.

  • acceptPartialAuthorization: Boolean

    Controls whether to allow partial authorizations (or "partial approvals") for this transaction. Defaults to false.

  • paymentInitiator: InStorePaymentInitiator

    This field denotes the nature or characteristic of a transaction, including whether it is initiated by the merchant or the customer.


InStoreChoiceInput

Input fields for a choice on an in-store reader.

input:
  • primaryText: String!

    The primary text of the choice to be displayed on the in-store reader, with a maximum of 35 characters.

  • secondaryText: String

    The secondary text of the choice to be displayed on the in-store reader, with a maximum of 35 characters.

  • style: InStoreBackgroundStyle

    The background style of the choice. Defaults to PRIMARY.


InStoreDisplayItemInput

Input fields for an individual display item on an in-store reader.

input:
  • kind: DisplayItemType!

    The display item type to be displayed on the in-store reader.

  • description: String

    The display item text to be displayed on the in-store reader. 35 character maximum.

  • quantity: Float

    The number of units for a CHARGE or DISCOUNT item. Must be greater than 0.

  • amount: Amount

    The total amount of a CHARGE or DISCOUNT item.


InStoreLocationAddressInput

Input fields for an in-store Location Address.

input:
  • streetAddress: String!

    The street address.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number.

  • locality: String!

    Locality/city.

  • region: String!

    State or province.

  • postalCode: String!

    Postal code in any country's format, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code.

  • countryCode: CountryCode!

    Country code for the address.


InStoreLocationAddressSearchInput

Input fields for searching an in-store location address. If multiple fields are specified, location addresses will be returned which meet all of the specified criteria.

input:

InStoreLocationAddressUpdateInput

Input fields for an in-store Location Address update.

input:
  • streetAddress: String

    The street address.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number.

  • locality: String

    Locality/city.

  • region: String

    State or province.

  • postalCode: String

    Postal code in any country's format, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code.

  • countryCode: CountryCode

    Country code for the address.


InStoreLocationConditionInput

Input fields for searching an in-store location. If multiple fields are specified, locations will be returned which meet all of the specified criteria.

input:

InStoreLocationInput

Fields required for an instore location.

input:
  • name: String!

    The publicly visible label of this Location.

  • internalName: String!

    Name assigned by the merchant to uniquely identify this Location.

  • address: InStoreLocationAddressInput!

    The address of the in-store Location.

  • geoCoordinates: GeoCoordinatesInput

    The coordinates of this location.

  • payerId: ID

    The PayPal account ID to which this Location will be added.

  • enableQRCodePayments: Boolean!

    Whether QR code payments will be enabled for this location.


InStoreLocationSearchInput

Input fields for searching in-store locations.

input:

InStoreLocationUpdateInput

Fields required to update an in-store location.

input:
  • name: String

    The publicly visible label of this location.

  • internalName: String

    Name assigned by the merchant to uniquely identify this location.

  • address: InStoreLocationAddressUpdateInput

    The address of the location.

  • geoCoordinates: GeoCoordinatesInput

    The coordinates of this location.

  • payerId: ID

    The PayPal account ID to which this location will be added.

  • enableQRCodePayments: Boolean

    Whether QR code payments will be enabled for this location.


InStorePrintContentInput

Input fields for content to be printed on the in-store reader.

input:

InStorePrintImageInput

Input fields for image content to be printed on the in-store reader.

input:
  • value: String!

    The base64-encoded string representation of the image. The image must be in PNG format and cannot exceed 76,800 bytes in size.

  • endOfLineFlag: Boolean

    A boolean flag indicating whether this is the last item on the current line. Defaults to true. Also, it offers the option for the caller to print two or more items side-by-side.

  • alignment: InStorePrintAlignment

    The alignment of the image on the printed paper. Defaults to CENTER.


InStorePrintTextInput

Input fields for text content to be printed on the in-store reader.

input:

InStoreReaderConditionInput

Input fields for searching an in-store reader. If multiple fields are specified, only readers that meet all of the specified criteria will be returned.

input:

InStoreReaderSearchInput

Input fields for searching for in-store readers.

input:

InStoreReaderSetupInput

Fields that are reader specific for pairing a reader.

input:
  • locationId: ID!

    In-Store Location to attach Reader to.

  • name: String

    Name given to the Reader.


InStoreRefundInput

Input fields for creating an in-store transaction.

input:
  • amount: Amount!

    Refund amount of the request. This value must be greater than 0, and must match the currency format of the merchant account. This can only contain numbers and one decimal point (e.g. x.xx). Can't be greater than the maximum allowed by the processor.

  • merchantAccountId: ID

    Merchant account ID used to process the refund. Currency is also determined by merchant account ID. If no merchant account ID is specified, we will use your default merchant account.

  • orderId: String

    Additional information about the refund. On PayPal refunds, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal refunds.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase.


InStoreTransactionInput

Input fields for creating an in-store transaction.

input:
  • amount: Amount!

    Billing amount of the request. This value must be greater than 0, and must match the currency format of the merchant account. This can only contain numbers and one decimal point (e.g. x.xx). Can't be greater than the maximum allowed by the processor.

  • merchantAccountId: ID

    Merchant account ID used to process the transaction. Currency is also determined by merchant account ID. If no merchant account ID is specified, we will use your default merchant account.

  • orderId: String

    Additional information about the transaction. On PayPal transactions, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal transactions.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase.

  • customerId: ID

    If charging a single-use payment method, optional ID of a customer to associate the transaction with. If vaulting the single-use payment method, this customer will be associated with the resulting multi-use payment method.

  • vaultPaymentMethodAfterTransacting: VaultInStorePaymentMethodAfterTransactingInput

    When a single-use payment method is used to create this transaction, it can be automatically stored in the vault after transacting. If this field is left blank, the single-use payment method will not be vaulted.

  • channel: String

    For partners and shopping carts only. If you are a shopping cart provider or other Braintree partner, pass a string identifier for your service. For PayPal transactions, this maps to paypal.bn_code.

  • purchaseOrderNumber: String

    A purchase order identification value you associate with this transaction.

    Required for Level 2 processing.

  • tax: TransactionTaxInput

    Tax information about the transaction.

    Required for Level 2 processing.

  • shipping: TransactionShippingInput

    Shipping information.

    Required for Level 3 processing.

  • discountAmount: String

    Discount amount that was included in the total transaction amount. Does not add to the total amount the payment method will be charged. This value can't be negative. Please note that this field is not used on PayPal transactions.

    Required for Level 3 processing.

  • lineItems: [TransactionLineItemInput!]

    Line items for this transaction. Up to 249 line items may be specified.

    Required for Level 3 processing.

  • industry: TransactionIndustryInput

    Industry data information. Only one of the three sub-input fields can be provided.

  • acceptPartialAuthorization: Boolean

    Controls whether to allow partial authorizations (or "partial approvals") for this transaction. Defaults to false.


IndustryAdditionalChargeInput

Input fields for industry data additional charges.

input:

IndustryCruiseInput

Input fields for industry cruise data.

input:
  • travelPackage: IndustryCruiseTravelPackageType!

    The cruise travel package.

  • lodgingCheckInDate: Date

    The date of cruise check in.

  • lodgingCheckOutDate: Date

    The date of cruise check out.

  • departureDate: Date

    The date of cruise departure.

  • lodgingName: String

    The cruise lodging name.


IndustryFlightInput

Input fields for industry flight data.

input:
  • passengerFirstName: String

    The passenger's first name.

  • passengerLastName: String

    The passenger's last name.

  • passengerMiddleInitial: String

    The passenger's middle initial.

  • passengerTitle: String

    The passenger's title (e.g. Mr, Ms).

  • dateOfBirth: Date

    The passenger's date of birth.

  • countryCode: CountryCodeAlpha2

    The passenger's nationality.

  • issuedDate: Date

    The day on which the tickets were issued.

  • travelAgencyName: String

    The travel agency's name.

  • travelAgencyCode: String

    The travel agency's IATA code.

  • ticketNumber: String

    The primary ticket number. Maximum 15 characters.

  • issuingCarrierCode: String

    The ticket issuer's IATA code. Maximum 4 characters. For airline, code is obtained from the Official Airline Guide or its equivalent. Required for Reduced Interchange.

  • customerCode: String

    The code supplied by the customer using a purchase card. Maximum 17 characters.

  • fareAmount: Amount

    The fare amount.

  • feeAmount: Amount

    The fee amount.

  • taxAmount: Amount

    The tax amount.

  • restrictedTicket: Boolean!

    Indicates if the ticket is restricted.

  • arrivalDate: Date

    The date of check-in.

  • ticketIssuerAddress: AddressInput

    The address of the agency issuing the ticket.

  • legs: [IndustryFlightLegInput!]

    Identifies the different legs of travel. It can include up to 12 items.


IndustryFlightLegInput

Input fields for industry data legs.

input:
  • conjunctionTicket: String

    The conjunction ticket. Maximum 14 characters.

  • exchangeTicket: String

    The ticket number issued when the ticket was exchanged. Maximum 15 characters.

  • couponNumber: String

    The coupon number. Exactly 1 character.

  • serviceClass: String

    The class of service's IATA code. Maximum 2 characters.

  • carrierCode: String

    The carrier's IATA code. Maximum 2 characters.

  • fareBasisCode: String

    The fare basis code. Maximum 15 characters.

  • flightNumber: String

    The flight number. Maximum 5 characters.

  • departureDate: Date

    The day of departure.

  • departureAirportCode: String

    The departure airport's IATA code. Exactly 3 characters.

  • departureTime: String

    The departure time in the 24-hour format HH:MM.

  • arrivalAirportCode: String

    The arrival airport's IATA code. Exactly 3 characters.

  • arrivalTime: String

    The arrival time in the 24-hour format HH:MM.

  • stopoverPermitted: Boolean

    Indicates whether a stopover is permitted.

  • fareAmount: Amount

    The fare amount.

  • feeAmount: Amount

    The fee amount.

  • taxAmount: Amount

    The tax amount.

  • endorsementOrRestrictions: String

    The notes or notations about endorsements or restrictions (e.g. NOT REFUNDABLE).


IndustryLodgingInput

Input fields for industry lodging data.

input:
  • folioNumber: String

    The folio number assigned to the itemized statement assigned to this stay. Alphanumeric with a maximum of 12 characters.

  • checkInDate: Date

    Customer check-in date.

  • checkOutDate: Date

    Customer check-out date.

  • roomRate: Amount

    Hotel daily room charge.

  • roomTax: Amount

    Hotel daily tax.

  • noShow: Boolean

    Indicates whether or not the customer checked in, rented a car, etc. It should be true when the guest did not show up for the reservation.

  • advancedDeposit: Boolean

    This transaction is an advanced payment for a hotel stay.

  • fireSafe: Boolean

    This property complies with the Hotel and Motel Fire Safety Act of 1990.

  • propertyPhone: String

    The property's 10-digit phone number, consisting of digits (0-9), dashes (-), parentheses (()), and dots (.). Examples: (555)555-1234, 555-555-1234.

  • additionalCharges: [IndustryAdditionalChargeInput!]

    The list of additional charges for the hotel stay.


LineItemUpcInput

UPC(Universal Product Code) of a line item.

input:
  • upcCode: String!

    UPC code for the item. Minimum 6 characters, maximum 17 characters.

  • upcType: UpcType!

    UPC type for the item.


LocalPaymentAddressInput

Input fields for local payment addresses.

input:
  • streetAddress: String

    The street address.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number.

  • locality: String

    Locality/city.

  • region: String

    State or province.

  • postalCode: String

    Postal code in any country's format, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code.

  • countryCode: CountryCode

    Country code for the address.


LocalPaymentPayerInfoInput

Input fields for the payer of a local payment.

input:

MerchantAccountSearchInput

Input fields for searching for merchant accounts.

input:

MonetaryAmountInput

Input fields representing an amount with currency.

input:
  • value: Amount!

    The amount of money, either a whole number or a number with up to 3 decimal places.

  • currencyCode: CurrencyCodeAlpha!

    The currency code for the monetary amount.


MonetaryAmountSearchInput

Input fields for searching for a transaction or refund amount.

input:
  • value: SearchRangeInput

    Find transactions for a given amount.

  • currencyIsoCode: SearchTextInput

    Deprecated: Please use currencyCode instead.

    Find transactions with a given currency.

  • currencyCode: SearchTextInput

    Find transactions with a given currency.


NameInput

The name of the party.

input:
  • prefix: String

    The prefix, or title, to the party name.

  • givenName: String!

    The party's given, or first, name. Required if the party is a person.

  • surname: String!

    The party's surname or family name. Also known as the last name. Required if the party is a person. Use also to store multiple surnames including the matronymic, or mother's, surname.

  • middleName: String

    The party's middle name. Use also to store multiple middle names including the patronymic, or father's, middle name.

  • suffix: String

    The suffix for the party's name.

  • alternateFullName: String

    The party's alternate name. Can be a business name, nickname, or any other name that cannot be split into first, last name. Required for a business party name.


NetworkTokenInput

Input fields for a network tokenized card.

input:
  • cryptogram: String!

    A one-time-use string generated by the token requester to validate the transaction.

  • eCommerceIndicator: ECommerceIndicator

    A two-digit string that should be passed along in the authorization message.

  • expirationMonth: Month!

    A two-digit string representing the expiration month of the DPAN.

  • expirationYear: Year!

    A four-digit string representing the expiration year of the DPAN.

  • number: CreditCardNumber!

    The card number used in processing. This is a device PAN (DPAN), not the backing card number (FPAN).

  • originDetails: NetworkTokenOriginDetailsInput!

    Additional information about a network token.


NetworkTokenOriginDetailsInput

Information about the network token, such as the origin of the network token, source card details, and other token requestor data.

input:
  • origin: NetworkTokenOrigin!

    The origin of the network token.

  • sourceCardDescription: String

    A string, suitable for display, that describes the backing card.

  • sourceCardLast4: CreditCardLast4

    The last 4 digits of the backing card number (FPAN).

  • sourceCardType: CreditCardBrandCode

    The card type of the backing card.

  • tokenRequestorId: String

    The token requestor ID of the entity that generated this network token.

  • transactionId: String

    The transaction ID for this network token.


NonInstantLocalPaymentContextInput

Input fields for non-instant local payment context.

input:
  • orderId: String

    The order id of the eventual Braintree transaction and the invoice number of the local payment context. Maximum 127 characters.

  • amount: MonetaryAmountInput!

    The amount of the local payment.

  • type: NonInstantLocalPaymentMethodType!

    The type of the non-instant local payment.

  • countryCode: CountryCode

    The country code of the local payment. For local payments supported in multiple countries, this value may determine which banks are presented to the customer.

  • locale: Language

    The language tag for the language in which to localize the error-related strings.

  • returnUrl: String!

    The URL where the customer is redirected after the customer approves the payment.

  • cancelUrl: String!

    The URL where the customer is redirected after the customer cancels the payment.

  • merchantAccountId: ID

    ID of the PayPal merchant account that will be used when charging this payment method.

  • payerInfo: LocalPaymentPayerInfoInput!

    The payer's information.

  • expiryDate: Date

    Overrides the default date at which the local payment context will expire. MULTIBANCO is not overridable.


PairInStoreReaderInput

Input fields for pairing an in store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • userCode: String!

    Code displayed on Reader during pairing.

  • reader: InStoreReaderSetupInput!

    Inputs for Reader.


PartialCaptureTransactionInput

Top-level input fields for capturing outstanding funds authorized by a transaction.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    ID of the original authorized transaction to be partially captured.

  • transaction: PartialCaptureTransactionOptionsInput

    Input fields for the capture, with details that will define the resulting capture transaction.


PartialCaptureTransactionOptionsInput

Input fields for the capture, with details that will define the resulting capture transaction.

input:
  • amount: Amount!

    The amount to capture on the transaction against the parent authorization transaction. Must be greater than 0. You can perform multiple partial capture transactions as long as the cumulative amount of those transactions is less than or equal to the amount authorized by the parent transaction. You can't capture more than the authorized amount unless your industry and processor support settlement adjustment (capturing a certain percentage over the authorized amount); contact us for assistance.

  • discountAmount: String

    Discount amount that was included in the total transaction amount. Does not add to the total amount the payment method will be charged. This value can't be negative. Please note that this field is not on PayPal transactions.

    Required for Level 3 processing.

  • finalCapture: Boolean

    Input to specify current partial capture is the final one for parent authorized transaction.

  • lineItems: [TransactionLineItemInput!]

    Line items for this transaction. Up to 249 line items may be specified.

    Required for Level 3 processing.

  • orderId: String

    Additional information about the transaction. On PayPal transactions, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal transactions. If specified, this will update the existing order ID on the transaction.

  • purchaseOrderNumber: String

    A purchase order identification value you associate with this transaction.

    Required for Level 2 processing.

  • shipping: TransactionShippingInput

    Shipping information.

    Required for Level 3 processing.

  • tax: TransactionTaxInput

    Tax information about the transaction.

    Required for Level 2 processing.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase. If specified, this will update the existing descriptor on the transaction.

  • industry: TransactionIndustryInput

    Industry data information. Only one of the three sub-input fields can be provided.


PayPalAccountInput

Input for identifying a PayPal account.

input:
  • payerId: ID

    The unique PayPal ID of the PayPal account.


PayPalBillingAgreementExperienceProfileInput

Controls the experience in a PayPal billing agreement approval flow.

input:
  • brandName: String

    Merchant brand name to be displayed on the PayPal approval pages.

  • collectShippingAddress: Boolean

    Indicates whether a shipping address will be collected from the customer during the agreement approval flow.

  • landingPageType: PayPalLandingPageType

    Specifies the PayPal page to display when a user lands on the PayPal site to complete the payment.

  • locale: Language

    Locale of the PayPal payment approval experience.

  • shippingAddressEditable: Boolean

    Indicates whether to enable user editing of the shipping address. Only applies when shipping address is provided by merchant.


PayPalBillingAgreementInput

Input fields for a PayPal account to be vaulted.

input:
  • billingAgreementToken: ID!

    The Billing Agreement token.


PayPalExperienceProfileInput

Controls the experience in a PayPal approval flow.

input:
  • brandName: String

    Merchant brand name to be displayed on the PayPal approval pages.

  • collectShippingAddress: Boolean

    Indicates whether a shipping address will be collected from the customer during the agreement approval flow.

  • landingPageType: PayPalLandingPageType

    Specifies the PayPal page to display when a user lands on the PayPal site to complete the payment.

  • locale: Language

    Locale of the PayPal payment approval experience.

  • shippingAddressEditable: Boolean

    Indicates whether to enable user editing of the shipping address. Only applies when shipping address is provided by merchant.

  • userAction: PayPalUserAction

    Presents the customer with either the Continue or Pay Now (COMMIT) checkout flow. Default is Continue flow if the field is not provided.


PayPalFinancingOptionsInput

Input fields for requesting information about PayPal financing options.

input:
  • paymentMethodId: ID!

    ID of an existing multi-use PayPal payment method to request financing options for.

  • amount: MonetaryAmountInput!

    The transaction currency and total amount to finance.

  • countryCode: CountryCodeAlpha2!

    The financing country code.


PayPalLineItemInput

Line items for a PayPal payment.

input:
  • name: String!

    Item name. Maximum 127 characters.

  • quantity: Int!

    Number of units of the item purchased. This value can't be negative or zero.

  • unitAmount: Amount!

    Per-unit price of the item. Can include up to 2 decimal places. This value can't be negative or zero.

  • type: TransactionLineItemType!

    Indicates whether the line item is a debit (sale) or credit (refund or discount) to the customer.

  • description: String

    Item description. Maximum 127 characters.

  • productCode: String

    Product or UPC code for the item. Maximum 127 characters.

  • unitTaxAmount: Amount!

    Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero. If this is a line item for a Venmo transaction, this value can be zero.

  • url: URL

    The URL to product information.

  • imageUrl: URL

    URL to an image that represents the product. Max 1024 characters.

  • upc: LineItemUpcInput

    UPC of the line item.


PayPalOneTimePaymentInput

Input fields for a PayPal account for a One-Time payment.

input:
  • payerId: ID!

    The PayPal payer ID.

  • paymentId: ID!

    The PayPal payment ID. This ID is prefixed with "PAYID-".

  • paymentToken: ID!

    The PayPal payment token, also known as an Express Checkout token. This token is prefixed with "EC-".


PayPalPayeeOptionsInput

Input fields for a PayPal account receiving transaction funds.

input:
  • email: String

    The email address associated with the payee PayPal account.


PayPalProductAttributesInput

Product attributes input for PayPal billing agreement.

input:

PayPalRecurringBillingCycleInput

The billing cycle that is a part of a recurring billing plan.

input:
  • trial: Boolean

    Whether the cycle is or is not a trial period.

  • pricingScheme: PayPalRecurringBillingPricingSchemeInput

    The pricing scheme for the billing cycle.

  • frequencyInterval: PayPalRecurringBillingFrequencyIntervalInput

    The frequency interval of the payments towards the plan.

  • billingCycleSequence: Int!

    The order that this cycle runs among other billing cycles.

  • startDate: Date

    Start date for the billing cycle.

  • numberOfExecutions: Int

    The number of times the billing cycle will be executed. Zero indicates infinite.


PayPalRecurringBillingFrequencyIntervalInput

The frequency interval of payments in a recurring billing cycle.

input:
  • billingFrequencyUnit: FrequencyUnit

    The unit of time for the interval which the payment is charged.

  • billingFrequency: Int

    The amount of time of the interval which the next payment is charged.


PayPalRecurringBillingOneTimeChargesInput

Charges due at the initial checkout for a recurring billing plan.

input:
  • oneTimeFeeAmount: Amount

    The one-time setup fee.

  • shippingAmount: Amount

    The shipping amount for the product.


PayPalRecurringBillingPlanInput

Billing plan for recurring payments.

input:

PayPalRecurringBillingPlanMetadataInput

Additional properties of a recurring billing plan.

input:

PayPalRecurringBillingPricingSchemeInput

The pricing scheme for a recurring billing cycle.

input:

PayPalRecurringBillingProductInput

The optional product included in a recurring billing plan.

input:
  • description: String

    The description of the product.

  • quantity: Float

    The quantity of the product included.

  • price: Amount

    The unit price of the product.


PayPalShippingOptionInput

A shipping option for a PayPal One-Time payment.

input:
  • amount: MonetaryAmountInput!

    The cost for this shipping option.

  • id: ID!

    A unique ID that identifies a shipping option.

  • description: String!

    The shipping option description. Localize this description to the payer's locale. For example, Free Shipping, USPS Priority Shipping, Expédition prioritaire USPS, or USPS yōuxiān fā huò.

  • selected: Boolean!

    Indicates which shipping option is selected by default when the payer views the shipping options within the PayPal checkout experience. Only one shipping option can be selected at a time.

  • type: PayPalShippingOptionType!

    The method by which the payer wants to receive their items.


PaymentMethodVerificationOptionsInput

Input fields that specify options for verifying the vaulted payment method. Only applicable for payment method types that suport verification.

input:
  • merchantAccountId: ID

    ID of the merchant account to use when verifying the payment method. The verification will use the default merchant account if this field is left blank.

  • skip: Boolean

    Whether to opt out of verifying the payment method. Defaults to false for payment methods that support verification. Clients should only pass true in the uncommon scenario that the payment method has been verified externally to Braintree.


PaymentSearchInput

Input fields for searching for any type of Payment.

input:

PerformThreeDSecureLookupInput

Top-level fields for performing a 3D Secure Lookup.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • merchantAccountId: ID

    ID of the merchant account that will be used when charging the payment method.

  • dfReferenceId: String

    Reference ID used by our MPI provider CardinalCommerce to connect the lookup request to the device data that was previously collected.

  • paymentMethodId: ID!

    ID of a payment method to perform the lookup on.

  • amount: Amount!

    The amount you plan to charge the payment method after the 3D Secure authentication.

  • transactionInformation: ThreeDSecureLookupTransactionInformationInput

    Additional information about the transaction when authenticating through 3D Secure.

  • cardholderInformation: ThreeDSecureLookupCardholderInformationInput

    Additional information about the cardholder when authenticating through 3D Secure.

  • requestAuthenticationChallenge: Boolean

    When set to true, requests a 3D Secure authentication challenge from the issuer. A challenge will result in the acsUrl field being populated on the response, requiring you to open the challenge on the client side.

  • requestedExemptionType: ScaExemptionType

    Indicates an exemption to be requested. If the exemption's conditions are satisfied, then will it be applied to 3D Secure.

  • clientInformation: ThreeDSecureLookupClientInformationInput

    Information about the client-side lookup process.

  • dataOnlyRequested: Boolean

    When set to true, the data-only 3D Secure call will be created. The status of DATA_ONLY_SUCCESSFUL will be returned as ThreeDSecureAuthenticationStatus for a successful response.

  • cardAdd: Boolean

    If set to true, a card-add challenge will be requested from the issuer to confirm adding new card to the merchant's vault. This flag should only be used when adding a card to a merchant’s vault and not for creating transactions.

  • merchantInitiatedRequest: ThreeDSecureMerchantInitiatedRequestInput

    3RI (3DS Requester Initiated) request.


PhoneInput

The phone number in its international E.164 numbering plan format.

input:
  • countryPhoneCode: String!

    The country calling code (CC), in its canonical international E.164 numbering plan format. The combined length of the CC and the national number must not be greater than 15 digits. The national number consists of a national destination code (NDC) and subscriber number (SN).

  • phoneNumber: String!

    The phone number, in its canonical international E.164 numbering plan format. The combined length of the country calling code (CC) and the national number must not be greater than 15 digits. The national number consists of a national destination code (NDC) and subscriber number (SN).

  • extensionNumber: String

    The extension number.


ProductsInput

Input for selecting products to be returned.

input:

RefundCreditCardInput

Top-level input fields for creating a detached refund on a credit card.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of the credit card to be refunded.

  • refund: DetachedRefundInput!

    Input fields containing details about the refund.


RefundInput

Specific input fields for describing a refund.

input:
  • amount: Amount

    The amount to refund. Must be less than or equal to the amount of the original transaction. Defaults to the total amount of the original transaction.

  • orderId: String

    The refund's order ID. Defaults to the order ID of the original transaction.

  • merchantAccountId: ID

    ID of the merchant account that will be used when performing the refund.

  • description: String

    Description of the refund that is displayed to customers in PayPal email receipts.

  • reason: String

    Deprecated: Please use description instead.

    Reason of the refund transaction. This field maps to the PayPal refund reason.

  • lineItems: [TransactionLineItemInput!]

    Line items for this refund. Up to 249 line items may be specified.

    Only allowed for Custom Actions transactions.


RefundSearchInput

Input fields for searching for refunds.

input:

RefundTransactionInput

Top-level input fields for refunding a transaction.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    The ID of a transaction to be refunded.

  • refund: RefundInput

    Input fields for the details of the refund.


RefundUsBankAccountInput

Top-level input fields for creating a detached refund on a US Bank Account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of the US Bank Account to be refunded.

  • options: ChargeUsBankAccountOptionsInput

    Input fields related to the US bank account being charged.

  • refund: DetachedRefundInput!

    Input fields containing details about the refund.


RequestAmountPromptFromInStoreReaderInput

Input fields for requesting an amount on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the in-store reader to request an amount from.

  • title: String

    Title to be displayed on the in-store reader. 1000 character maximum.

  • text: String

    Text to be displayed on the in-store reader. 65536 character maximum. '\n' line breaks will be respected.

  • alignment: InStoreReaderDisplayAlignment

    The way the text is aligned when displayed on an in-store reader. Defaults to CENTER.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds.

  • decimalPlaces: DecimalPlaces

    The number of digits that appear after the decimal point in the amount. Defaults to TWO. Allowed to be ZERO, TWO, or THREE.

  • cancellationText: String

    Text for the cancellation button to be displayed on the in-store reader. 20 character maximum. Defaults to 'Cancel'.

  • confirmationText: String

    Text for the confirmation button to be displayed on the in-store reader. 20 character maximum. Defaults to 'Submit'.


RequestAuthorizeFromInStoreReaderInput

Input fields for requesting an authorization from an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request an authorization from.

  • transaction: InStoreAuthorizationInput!

    Information about the requested in-store transaction.


RequestCancelFromInStoreReaderInput

Input fields for requesting a cancel during an in-store charge flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • inStoreContextId: ID!

    Unique ID for the charge flow.


RequestChargeFromInStoreReaderInput

Input fields for beginning the in-store charge flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a charge from.

  • transaction: InStoreTransactionInput!

    Information about the requested in-store transaction.


RequestConfirmationPromptFromInStoreReaderInput

Input fields for requesting a confirmation prompt on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a confirmation prompt from.

  • title: String!

    Title to be displayed on the in-store reader. 50 character maximum.

  • text: String!

    Text to be displayed on the in-store reader. 65536 character maximum. '\n' line breaks will be respected.

  • alignment: InStoreReaderDisplayAlignment

    The way the text is aligned when displayed on an in-store reader. Defaults to CENTER.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default. Only supported on payment application versions >= 5.2.0.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds. Only supported on payment application versions >= 5.2.0.

  • cancellationText: String

    Text for the cancellation option to be displayed on the in-store reader. 20 character maximum.

  • confirmationText: String

    Text for the confirmation option to be displayed on the in-store reader. 20 character maximum.


RequestFirmwareUpdateFromInStoreReaderInput

Input fields for requesting a firmware update for an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    The in-store reader to receive the firmware update.


RequestItemDisplayFromInStoreReaderInput

Input fields for beginning the in-store display line items flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to display items on.

  • displayItems: [InStoreDisplayItemInput!]

    Items to be displayed on the in-store reader. Up to 249 items may be specified.

  • tax: Amount!

    The total tax amount for the entire transaction, including all display line items.

  • amount: Amount!

    The total amount for the entire transaction, including tax.

  • discountAmount: Amount

    The total discount amount for the entire transaction.


RequestMultiChoiceSingleSelectPromptFromInStoreReaderInput

Input fields for requesting a multi-choice single select prompt on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the in-store reader to request a multi-choice single-select from.

  • title: String

    Title to be displayed on the in-store reader. 1000 character maximum.

  • text: String

    Text to be displayed on the in-store reader. 65536 character maximum. '\n' line breaks will be respected.

  • alignment: InStoreReaderDisplayAlignment

    The way the text is aligned when displayed on an in-store reader. Defaults to CENTER.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screensaver is displayed by default.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds.

  • choices: [InStoreChoiceInput!]

    The list of available choices for user selection, limited to a maximum of 15 choices.


RequestNonPciCardDataFromInStoreReaderInput

Input fields for requesting non PCI-scoped card data from an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request card data from.

  • title: String

    Title to be displayed on the in-store reader. 1000 character maximum. '\n' line breaks will be respected.

  • textAreaOne: String

    Large text to be displayed on the in-store reader directly below the title. 1000 character maximum. '\n' line breaks will be respected.

  • textAreaTwo: String

    Text to be displayed on the in-store reader. 1000 character maximum. '\n' line breaks will be respected.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds. Unsuccessful input attempts will reset the timer.


RequestPrintFromInStoreReaderInput

Input fields for initiating a request to print content on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request printing content from.

  • contents: [InStorePrintContentInput!]

    Contents to be printed on the in-store reader. The contents field must not exceed 122,880 bytes in size.


RequestRefundFromInStoreReaderInput

Input fields for beginning the in-store refund flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a refund from.

  • refund: InStoreRefundInput!

    Information about the requested in-store refund.


RequestSignaturePromptFromInStoreReaderInput

Input fields for requesting a signature prompt on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a signature prompt from.

  • title: String

    Title to be displayed on the in-store reader. 50 character maximum.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default. Only supported on payment application versions >= 5.2.0.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds. Only supported on payment application versions >= 5.2.0.

  • cancellationText: String

    Text for the cancellation option to be displayed on the in-store reader. 20 character maximum.

  • confirmationText: String

    Text for the confirmation option to be displayed on the in-store reader. 20 character maximum.


RequestTextDisplayFromInStoreReaderInput

Input fields for beginning the in-store display text flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a text display from.

  • title: String

    Title to be displayed on the in-store reader. 1000 character maximum. Only supported on payment application versions >= 5.2.0.

  • alignment: InStoreReaderDisplayAlignment

    The way the text is aligned when displayed on an in-store reader. Defaults to CENTER. Only supported on payment application versions >= 5.2.0.

  • text: String!

    Text to be displayed on the in-store reader. 65536 character maximum. '\n' line breaks will be respected.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default. Supported on payment application version >= 5.2.0.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds. Only supported on payment application versions >= 5.2.0.


RequestTextPromptFromInStoreReaderInput

Input fields for requesting a text on an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the in-store reader to request a text prompt from.

  • title: String

    Title to be displayed on the in-store reader. 1000 character maximum.

  • text: String

    Text to be displayed on the in-store reader. 65536 character maximum. '\n' line breaks will be respected.

  • alignment: InStoreReaderDisplayAlignment

    The way the text is aligned when displayed on an in-store reader. Defaults to CENTER.

  • waitForNextRequest: Boolean

    Once the customer submits a response, a loading screen should be displayed on the in-store reader until the next request comes in. The screen saver is displayed by default.

  • displayTimeout: Int

    Display timeout in seconds. This is the time allotted for the user to complete their input. Defaults to 120 seconds.

  • inputType: InStoreReaderTextPromptType!

    The input types available for user input.

  • inputPlaceholder: String

    Placeholder text in the input box to indicate to the user the expected input format.

  • inputFormat: String

    Custom format used for text input, where the '' symbol indicates a mandatory input character, and all other characters are treated as literals. For instance, a phone number format in the US would be '() -', while a zip code format would be '**'.

  • cancellationText: String

    Text for the cancellation button to be displayed on the in-store reader. 20 character maximum. Defaults to 'Cancel'.

  • confirmationText: String

    Text for the confirmation button to be displayed on the in-store reader. 20 character maximum. Defaults to 'Submit'.


RequestVaultFromInStoreReaderInput

Input fields for beginning the in-store charge flow.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    ID of the Reader to request a vault from.

  • verification: PaymentMethodVerificationOptionsInput

    Input fields that specify options for verifying the payment method before vaulting. Only applicable if the payment method is of a type that supports verification. For supported types, verification is performed by default. If the verification fails, the payment method will not be vaulted.

  • customerId: ID

    ID of the customer to associate the resulting multi-use payment method with.


ReverseRefundInput

Input fields for reversing a refund.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • refundId: ID!

    The ID of the refund to reverse.


ReverseTransactionInput

Input fields for reversing a transaction.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    The ID of the transaction to reverse.


RiskDataInput

Input fields for data used by processors for risk analysis.

input:
  • customerBrowser: String

    The User-Agent header provided by the customer's browser, which gives information about the browser. Maximum 255 characters.

  • customerIp: String

    The customer's IP address.

  • deviceData: String

    Customer device information. Required when creating transactions using cards (only if using Advanced Fraud Tools), PayPal (only for one-time Vaulted PayPal transactions), and Venmo payment method types. This value will contain a Fraud Merchant ID as the unique, numeric identifier for a Kount account and a Device Session ID as the unique identifier for a customer device. For PayPal and Venmo transactions, this value will also include a PayPal Correlation ID.


SamsungPayCardInput

Deprecated: Samsung pay is no longer supported.

Input fields for a Samsung Pay card.

input:
  • cryptogram: String!

    A one-time-use string generated by the token requester to validate the transaction.

  • eCommerceIndicator: ECommerceIndicator!

    A two-digit string that should be passed along in the authorization message.

  • expirationMonth: Month!

    A two-digit string representing the expiration month of the DPAN.

  • expirationYear: Year!

    A four-digit string representing the expiration year of the DPAN.

  • number: CreditCardNumber!

    The card number provided by Samsung and used in processing. This is a digitized PAN (DPAN), not the backing card number (FPAN).

  • sourceCardLast4: CreditCardLast4!

    The last four digits of the FPAN (the cardholder's backing card).


SandboxSettleTransactionInput

Top-level input fields for settling a transaction in the sandbox environment.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    Id of the transaction to force settlement in the sandbox environment.

  • settlementState: SandboxSettlementState

    The target settlement state for the transaction in the sandbox environment.


SearchAddressInput

Input fields for searching by address.

input:

SearchChargebackProtectionLevelInput

Deprecated: Please use SearchDisputeProtectionLevelInput instead.

Input fields for searching for a dispute with a given chargeback protection level.

input:

SearchCreditCardBrandCodeInput

Input fields for searching for payments by credit card brand.

input:

SearchCreditCardCustomerLocationInput

Input fields for searching for a transaction created with a give credit card customer location.

input:

SearchCreditCardExpirationDateInput

Input fields for searching for payments by payment method snapshot credit card expiration date criteria.

input:

SearchCreditCardExpirationMonthYearInput

Input fields for searching for payments by payment method snapshot credit card expiration date criteria.

input:
  • expirationMonth: String!

    The month of the credit card expiration as MM.

  • expirationYear: String!

    The year of the credit card expiration as YYYY.


SearchCreditCardNumberInput

Input fields for searching for payments by payment method snapshot credit card number criteria.

input:
  • startsWith: String

    Up to the first six digits of the credit card number (the credit card's BIN).

  • endsWith: String

    Up to four digits of the last four digits of the credit card number.


SearchDateInput

Input fields for searching for a date. These ranges are precise to the day.

input:
  • greaterThanOrEqualTo: Date

    Date is greater than or equal to this value.

  • lessThanOrEqualTo: Date

    Date is less than or equal to this value.


SearchDisputeMerchantAccountIdInput

Input fields for searching disputes with merchant account id criteria.

input:
  • is: String

    Field is exactly this value.

  • in: [String!]

    Field is one of these values.

  • isNot: String

    Field is not this value.

  • startsWith: String

    Field starts with this value.

  • endsWith: String

    Field ends with this value.

  • contains: String

    Field contains this value.


SearchDisputeProtectionLevelInput

Input fields for searching for a dispute with a given protection level.

input:

SearchDisputeReasonInput

Input fields for searching for a dispute with a given reason description.

input:

SearchDisputeStatusInput

Input fields for searching for a dispute with a given status.

input:

SearchDisputeTypeInput

Input fields for searching for a dispute with a given type.

input:

SearchPaymentCreditCardDetailsInput

Input fields for searching for payments by payment method snapshot credit card details criteria.

input:

SearchPaymentCustomerInput

Input fields for searching payments by customer.

input:

SearchPaymentMerchantAccountIdInput

Input fields for searching transactions with merchant account id criteria.

input:
  • is: String

    Field is exactly this value.

  • in: [String!]

    Field is one of these values.

  • isNot: String

    Field is not this value.

  • startsWith: String

    Field starts with this value.

  • endsWith: String

    Field ends with this value.

  • contains: String

    Field contains this value.


SearchPaymentMethodSnapshotTypeInput

Input fields for searching transactions by payment method snapshot type.

input:
  • is: PaymentMethodSnapshotSearchType

    This value represents the payment method type used to create a transaction. In the case of credit cards, this value also encode the origin from which a customer provided that payment method.

  • in: [PaymentMethodSnapshotSearchType!]

    These values represent the payment method type used to create a transaction. In the case of credit cards, these values also encode the origin from which a customer provided that payment method.


SearchPaymentPayPalDetailsInput

Input fields for searching for payments by payment method snapshot PayPal details criteria.

input:
  • email: SearchTextInput

    Deprecated: This field is no longer supported. Please use payerEmail instead.

    The email address of the PayPal payer.

  • payerEmail: SearchTextInput

    The email address of the PayPal payer.

  • authorizationId: SearchTextInput

    The PayPal ID for the authorization.

  • paymentId: SearchTextInput

    The identification value of the payment within PayPal's API.


SearchPaymentPaymentMethodInput

Input fields for searching for payments by payment method criteria.

input:

SearchPaymentPaymentMethodSnapshotInput

Input fields for searching for payments by payment method snapshot criteria.

input:
  • type: SearchPaymentMethodSnapshotTypeInput

    Find payments based on the payment instrument type.

  • creditCardDetails: SearchPaymentCreditCardDetailsInput

    Find payments made with credit cards, based on the details of the credit card used for the payment. Passing an object with non-empty, non-null fields will scope your search to only credit card payment methods. This overrides the type field.

  • payPalDetails: SearchPaymentPayPalDetailsInput

    Find payments made with PayPal, based on the PayPal details used for the payment. Passing a value here will scope your search to only PayPal payment methods. This overrides the type field.

  • sepaDirectDebitDetails: SearchPaymentSEPADirectDebitDetailsInput

    Find SEPA payments with SEPA details. Passing a value here will scope your search to only SEPA Direct Debit payment methods. This overrides the type field.


SearchPaymentSEPADirectDebitDetailsInput

Input field for searching for payments by payment method snapshot SEPA Direct Debit details criteria.

input:

SearchPaymentSourceInput

Input fields for searching for a transaction or refund created with a given source.

input:

SearchPaymentStatusInput

Input fields for searching for a transaction or refund with a given status.

input:

SearchPaymentStatusTransitionInput

Payment status transition times.

input:

SearchPaymentTypeInput

Input fields for searching for payments by implementing type.

input:

SearchPreDisputeProgramInput

Input fields for searching for a dispute with a given pre-dispute program.

input:

SearchProcessingModeInput

Input fields for searching for transactions with a given processing mode.

input:
  • is: ProcessingMode

    This value represents the processing mode used to create a transaction.

  • in: [ProcessingMode!]

    These values represent the processing mode used to create a transaction.


SearchRangeInput

Input fields for searching for a range.

input:
  • is: String

    Field is exactly this value.

  • greaterThanOrEqualTo: String

    Field is greater than or equal to this value.

  • lessThanOrEqualTo: String

    Field is less than or equal to this value.


SearchSoftwareVersionInput

Input fields for searching for a version number.

input:
  • is: String

    Field is exactly this value.

  • isNot: String

    Field is not this value.

  • startsWith: String

    Field starts with this value.

  • contains: String

    Field contains this value.


SearchTextInput

Input fields for searching text fields.

input:
  • is: String

    Field is exactly this value.

  • isNot: String

    Field is not this value.

  • startsWith: String

    Field starts with this value.

  • endsWith: String

    Field ends with this value.

  • contains: String

    Field contains this value.


SearchTextValueInput

Input fields for searching text fields or for specific values.

input:
  • is: String

    Field is exactly this value.

  • isNot: String

    Field is not this value.

  • startsWith: String

    Field starts with this value.

  • endsWith: String

    Field ends with this value.

  • contains: String

    Field contains this value.

  • in: [String!]

    Field is one of these values.


SearchTimestampInput

Input fields for searching by timestamp. These ranges are precise to the minute; the results of searching for an object created between 12/17/2015 17:00 and 12/17/2015 17:00 (i.e., the same minute) will include objects created at 12/17/2015 17:00:59. If no timezone is provided, it will be assumed to be UTC.

input:
  • greaterThanOrEqualTo: Timestamp

    Timestamp is greater than or equal to this value.

  • lessThanOrEqualTo: Timestamp

    Timestamp is less than or equal to this value.


SearchTransactionSourceInput

Input fields for searching for a transaction created with a given source.

input:

SearchTransactionStatusInput

Input fields for searching for a transaction with a given status.

input:

SearchTransactionStatusTransitionInput

Transaction status transition times.

input:

SearchValueInput

Input fields for searching for specific values.

input:
  • is: String

    Field is exactly this value.

  • in: [String!]

    Field is one of these values.


SearchVerificationStatusInput

Input fields for searching for a verification with a given status.

input:

SelectedPayPalFinancingOptionInput

Input fields indicating a selected financing option by a PayPal buyer.

input:
  • term: Int!

    Total number of payments over which to finance the transaction.

  • currencyCode: CurrencyCodeAlpha!

    The currency code for the monthly payment and discount amount.

  • monthlyPayment: Amount!

    The amount for each monthly payment.

  • discountPercentage: Percentage

    The percent discount off the total transaction amount due to the selected financing option.

  • discountAmount: Amount

    The amount reduced from the total transaction amount.


TaxInfoInput

Input fields for local payment tax information.

input:
  • identifier: String!

    The payer's tax identifier value.

  • type: TaxInfoType!

    The payer's tax identifier type.


ThreeDSecureAuthenticationInput

Input fields for passing auxillary 3D Secure information manually, as opposed to tokenized on a single-use payment method ID.

input:
  • authenticationId: String

    Braintree unique ID of the 3D Secure authentication performed for this transaction. You will only need to use this field if you are charging or authorizing a vaulted payment method ID.

  • passThrough: ThreeDSecurePassThroughInput

    Results of a merchant-performed 3D Secure authentication. You will only need to use these fields if you've performed your own integration with a 3D Secure MPI provider (e.g. Cardinal Centinel). Otherwise, Braintree's SDKs handle this for you in our standard 3D Secure integration.

  • required: Boolean

    Specify whether to require 3D Secure verification to succeed before creating a transaction. Defaults to true for transactions sent through 3D Secure verification but to false for transactions not sent through 3D Secure verification.


ThreeDSecureLookupBillingAddressInput

The billing address of the cardholder sent with 3D Secure Lookup requests.

input:
  • givenName: String

    The given (first) name associated with the billing address used for verification.

  • surname: String

    The surname (last name) associated with the billing address used for verification.

  • phoneNumber: String

    The billing phone number used for verification.

  • line1: String

    Line 1 of the billing address used for verification.

  • line2: String

    Line 2 of the billing address used for verification.

  • line3: String

    Line 3 of the billing address used for verification.

  • locality: String

    City or locality of billing address used for verification.

  • region: String

    State or region of billing address used for verification.

  • countryCode: String

    Country code of billing address used for verification.

  • postalCode: String

    Postal code of billing address used for verification.


ThreeDSecureLookupBrowserInformationInput

Information about the cardholder's browser.

input:
  • javaEnabled: Boolean

    Whether the cardholder browser can execute Java.

  • javascriptEnabled: Boolean

    Whether the cardholder browser can execute JavaScript.

  • acceptHeader: String

    The exact content of the HTTP accept headers sent from the cardholder's browser.

  • language: String

    The browser language as defined in IETF BCP47.

  • colorDepth: Int

    The bit depth of the color palette for displaying images, in bits per pixel.

  • screenHeight: Int

    Total height of the cardholder's screen in pixels.

  • screenWidth: Int

    Total width of the cardholder's screen in pixels.

  • timeZone: Int

    Time difference between UTC time and the cardholder browser local time, in minutes.

  • userAgent: String

    The exact content of the HTTP user agent header.


ThreeDSecureLookupCardholderInformationInput

Additional information about the cardholder when authenticating through 3D Secure.

input:

ThreeDSecureLookupClientInformationInput

Information about the client side lookup process.

input:
  • sdkVersion: String

    Version of the Braintree client-side SDK being used.

  • requestedThreeDSecureVersion: String

    Version of 3D Secure requested when performing the lookup.

  • issuerDeviceDataCollectionMillisecondsElapsed: Int

    Number of milliseconds taken for the issuer to collect device data.

  • issuerDeviceDataCollectionResult: Boolean

    Whether device data collection by the issuer succeeded.

  • threeDSecureServerDeviceDataCollectionMillisecondsElapsed: Int

    Number of milliseconds taken for the 3D Secure server to collect device data.


ThreeDSecureLookupShippingAddressInput

The shipping address of the transaction to be sent with 3D Secure Lookup requests.

input:
  • givenName: String

    The given (first) name associated with the shipping address used for verification.

  • surname: String

    The surname (last name) associated with the shipping address used for verification.

  • phoneNumber: String

    The shipping phone number used for verification.

  • line1: String

    Line 1 of the shipping address used for verification.

  • line2: String

    Line 2 of the shipping address used for verification.

  • line3: String

    Line 3 of the shipping address used for verification.

  • locality: String

    City or locality of shipping address used for verification.

  • region: String

    State or region of shipping address used for verification.

  • countryCode: String

    Country code of shipping address used for verification.

  • postalCode: String

    Postal code of shipping address used for verification.


ThreeDSecureLookupTransactionInformationInput

Additional information about the transaction when authenticating through 3D Secure.

input:
  • email: String

    The email associated with the transaction.

  • shippingMethod: ThreeDSecureLookupShippingMethod

    Indicates the shipping method chosen for the transaction in the 3D Secure lookup.

  • phoneNumber: String

    The phone number associated with the transaction.

  • shippingAddress: ThreeDSecureLookupShippingAddressInput

    The shipping address for the transaction.

  • workPhoneNumber: String

    The work phone number associated with the transaction.

  • transactionType: ThreeDSecureAuthenticationTransactionType

    Indicates the type of transaction.

  • deliveryTimeframe: ThreeDSecureAuthenticationDeliveryTimeframe

    Indicates the delivery timeframe if applicable.

  • deliveryEmail: String

    For electronic delivery, email address to which the product was delivered.

  • shippingType: ThreeDSecureAuthenticationShippingType

    Indicates shipping type chosen for the transaction.

  • productCode: ThreeDSecureAuthenticationMerchantProductCode

    Merchant product code.

  • reorderIndicator: Boolean

    Indicates whether the cardholder is reordering merchandise purchased in a previous order.

  • preorderIndicator: Boolean

    Indicates whether cardholder is placing an order with a future availability or release date.

  • preorderDate: Date

    Expected date that a pre-ordered purchase will be available.

  • giftCardAmount: Amount

    The purchase amount total for prepaid gift cards.

  • giftCardCurrencyCode: CurrencyCodeAlpha

    ISO 4217 currency code for the gift card purchased.

  • giftCardCount: Int

    Total count of individual prepaid gift cards purchased.

  • accountCreatedDuringTransaction: Boolean

    Indicates whether the cardholder created the account during this transaction.

  • accountCreateDate: Date

    Date the cardholder opened the account.

  • accountChangedDuringTransaction: Boolean

    Indicates whether the cardholder changed the account during this transaction. This includes changes to the billing or shipping address, new payment accounts or new users added.

  • accountChangeDate: Date

    Date the cardholder's account was last changed. This includes changes to the billing or shipping address, new payment accounts or new users added.

  • accountPasswordChangedDuringTransaction: Boolean

    Indicates whether the cardholder changed or reset the password on the account during this transaction.

  • accountPasswordChangeDate: Date

    Date the cardholder changed or reset the password on the account.

  • firstUseOfShippingAddress: Boolean

    Indicates whether this transaction represents the first use of this shipping address.

  • shippingAddressFirstUsageDate: Date

    Date when the shipping address used for this transaction was first used.

  • transactionCountDay: Int

    Number of transactions (successful or incomplete) for this cardholder account within the last 24 hours.

  • transactionCountYear: Int

    Number of transactions (successful or incomplete) for this cardholder account within the last year.

  • addCardAttempts: Int

    Number of attempts that have been made to add a card to this account in the last 24 hours.

  • accountPurchases: Int

    Number of purchases with this cardholder account during the previous six months.

  • suspiciousActivityObserved: Boolean

    Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.

  • accountNameMatchesShippingName: Boolean

    Indicates if the cardholder name on the account is identical to the shipping name used for the transaction.

  • paymentMethodAddedDuringTransaction: Boolean

    Indicates whether the payment method was added to the cardholder account during this transaction.

  • paymentMethodAddedToAccountDate: Date

    Date the payment method was added to the cardholder account.

  • acsWindowSize: ThreeDSecureAuthenticationAcsWindowSize

    An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.

  • sdkMaxTimeout: Int

    This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes). Minimum is 05. Defaults to 15.

  • billingAddressMatchesShippingAddress: Boolean

    Indicates whether cardholder billing and shipping addresses match.

  • accountId: String

    Additional cardholder account information.

  • ipAddress: String

    The IP address of the cardholder. Both IPv4 and IPv6 formats are supported.

  • orderDescription: String

    Brief Description of items purchased.

  • taxAmount: Amount

    Tax amount.

  • userAgent: String

    Deprecated: Please use ThreeDSecureLookupBrowserInformationInput.userAgent instead.

    The exact content of the HTTP user agent header.

  • browserInformation: ThreeDSecureLookupBrowserInformationInput

    Information about the cardholder's browser.

  • installment: Int

    Indicates the maximum number of authorizations for installment payments. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.

  • purchaseDate: Timestamp

    Datetime of original purchase.

  • recurringEnd: Date

    The date after which no further recurring authorizations should be performed.

  • recurringFrequency: Int

    Integer value indicating the minimum number of days between recurring authorizations. A frequency of monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months. Example: 6 months = 168.

  • deviceChannel: ThreeDSecureDeviceChannel

    The channel for the transaction.


ThreeDSecureMerchantInitiatedRequestInput

3RI (3DS Requester Initiated) request.

input:

ThreeDSecurePassThroughInput

Results of a merchant-performed 3D Secure authentication.

input:
  • eciFlag: ECommerceIndicator!

    The value of the electronic commerce indicator (ECI) flag, which indicates the outcome of the 3D Secure authentication.

  • cavv: String

    Cardholder authentication verification value or CAVV. The main encrypted message issuers and card networks use to verify authentication has occurred. Mastercard uses an AVV (Authentication Verification Value) message and American Express uses an AEVV (American Express Verification Value) message, each of which should also be passed in the cavv parameter.

  • xId: String

    Transaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message. Must be base64-encoded. This field will no longer be used in 3D Secure 2 authentications.

  • threeDSecureServerTransactionId: String

    3D Secure server transaction identifier resulting from 3D Secure authentication.

  • version: ThreeDSecureVersion

    The version of 3D Secure authentication used for the transaction. Required on Visa and Mastercard authentications.

  • authenticationResponse: ThreeDSecureStatusCode

    The 3D Secure authentication response status code.

  • directoryServerResponse: ThreeDSecureStatusCode

    The 3D Secure directory server response.

  • cavvAlgorithm: ThreeDSecureCavvAlgorithm

    The algorithm used to generate the CAVV value. This is only returned for Mastercard SecureCode transactions (3DS 1.0).

  • directoryServerTransactionId: String

    A unique identifier for the 3D Secure 2 interaction with the card brand directory server. This field must be supplied for Mastercard Identity Check.


ThreeDSecurePriorAuthenticationDetailsInput

The authentication details of the customer-initiated 3DS performed externally.

input:
  • dsTransactionId: String

    The Directory Server Transaction ID of the customer-initiated 3DS.

  • acsTransactionId: String

    The Access Control Server Transaction ID of the customer-initiated 3DS.

  • authenticationMethod: ThreeDSecurePriorAuthenticationMethod

    Mechanism used to authenticate the customer-initiated 3DS.

  • authenticationTime: Timestamp

    DateTime of the customer-initiated 3DS.


ThreeDSecurePriorAuthenticationInput

Information about the customer-initiated 3DS.

input:
  • authenticationId: String

    The authenticationId of the customer-initiated 3DS performed at Braintree. 255 characters maximum.

  • authenticationDetails: ThreeDSecurePriorAuthenticationDetailsInput

    The authentication details of the customer-initiated 3DS performed externally. To be sent in lieu of authenticationId.


TokenizeCreditCardInput

Top-level input fields for tokenizing a credit card.

input:

TokenizeCreditCardOptionsInput

Credit card tokenization options.

input:
  • validate: Boolean

    Whether to run validations on credit card fields. Validations are not run by default.


TokenizeCustomActionsPaymentMethodInput

Top-level input fields for tokenizing Custom Actions.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customActionsPaymentMethod: CustomActionsPaymentMethodInput!

    Input fields for a Custom Actions payment method.


TokenizeCvvInput

Top-level input fields for tokenizing a CVV, otherwise known as CSC or CVC.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • cvv: CVV!

    A 3 or 4 digit card verification value assigned to credit cards. The CVV will never be stored, but it can be provided with one-time requests to verify the card.


TokenizeNetworkTokenInput

Top-level input field for tokenizing a network token.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • networkToken: NetworkTokenInput!

    Input fields for a network token object.


TokenizePayPalBillingAgreementInput

Top-level input fields for tokenizing a PayPal account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • merchantAccountId: ID

    Braintree merchant account ID associated with the PayPal account to be used for the One-Time payment tokenization.

  • billingAgreement: PayPalBillingAgreementInput!

    Input fields for a PayPal Billing Agreement.


TokenizePayPalOneTimePaymentInput

Top-level input fields for tokenizing a PayPal account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • merchantAccountId: ID

    Braintree merchant account ID associated with the PayPal account to be used for the One-Time payment tokenization.

  • paypalOneTimePayment: PayPalOneTimePaymentInput!

    Input fields for a PayPal One-Time Payment.


TokenizeSamsungPayCardInput

Deprecated: Samsung pay is no longer supported.

Top-level input field for tokenizing a Samsung Pay card.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • samsungPayCard: SamsungPayCardInput!

    Input fields for a Samsung Pay card.


TokenizeUsBankAccountInput

Top-level input fields for tokenizing a US bank account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • usBankAccount: UsBankAccountInput!

    Input fields for a US bank account object.


TokenizeUsBankLoginInput

Deprecated: US bank logins are no longer supported.

Top-level input fields for tokenizing a US bank login.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • usBankLogin: UsBankLoginInput!

    Input fields for a US bank login.


TransactionCustomerDetailsInput

Customer details to be stored on the transaction itself, if the transaction is not associated with a customer. Used for fraud detection purposes.

input:
  • email: String

    Email address for the customer.

  • phoneNumber: String

    Phone number for the customer.


TransactionDescriptorInput

Fields used to define what will appear on a customer's bank statement for a specific purchase.

input:
  • name: String

    The value in the business name field of a customer's statement.

  • phone: String

    The value in the phone number field of a customer's statement.

  • url: String

    The value in the URL/web address field of a customer's statement.


TransactionExternalVaultOptionsInput

Input for transactions created with credit cards vaulted in an external vault, not the Braintree Vault. Do not use for transactions created from Braintree multi-use payment methods, or from single-use payment methods which will not be stored in an external vault.

input:
  • status: ExternalVaultStatus!

    The credit card's assocation with an external vault.

  • verifyingNetworkTransactionId: String

    The network transaction ID of the first transaction after which this payment method was stored in the external vault. If the status is WILL_VAULT, do not pass this value; the network transaction ID of the resulting transaction can be passed in this field for subsequent transactions. If the status is VAULTED, but the customer is directly initiating the charge, do not pass this value.


TransactionIndustryInput

Input fields for industry data. Only one of the input fields may be provided.

input:

TransactionInput

Input fields for creating a transaction.

input:
  • amount: Amount!

    Billing amount of the request. This value must be greater than 0, and must match the currency format of the merchant account. This can only contain numbers and one decimal point (e.g. x.xx). Can't be greater than the maximum allowed by the processor.

  • merchantAccountId: ID

    Merchant account ID used to process the transaction. Currency is also determined by merchant account ID. If no merchant account ID is specified, we will use your default merchant account.

  • orderId: String

    Additional information about the transaction. On PayPal transactions, this field maps to the PayPal invoice number. PayPal invoice numbers must be unique in your PayPal business account. Maximum 255 characters or 127 for PayPal transactions.

  • exchangeRateQuoteId: ID

    ID of exchange rate quote to be used for the transaction.

  • purchaseOrderNumber: String

    A purchase order identification value you associate with this transaction.

    Required for Level 2 processing.

  • riskData: RiskDataInput

    Customer device information, which is sent directly to supported processors for fraud analysis.

  • customFields: [CustomFieldInput!]

    Collection of custom field/value pairs. You must set up each custom field in the Control Panel prior to passing it with a request.

  • descriptor: TransactionDescriptorInput

    Fields used to define what will appear on a customer's bank statement for a specific purchase.

  • recurring: RecurringType

    Deprecated: This field is included for supporting legacy clients. Please use paymentInitiator instead.

  • paymentInitiator: PaymentInitiator

    The initiator of the payment. Payment can either be merchant-initiated or customer-initiated. If the transaction is an ecommerce transaction initiated by the customer, no value is passed.

  • channel: String

    For partners and shopping carts only. If you are a shopping cart provider or other Braintree partner, pass a string identifier for your service. For PayPal transactions, this maps to paypal.bn_code.

  • customerId: ID

    If charging a single-use payment method, optional ID of a customer to associate the transaction with. If vaulting the single-use payment method, this customer will be associated with the resulting multi-use payment method.

  • shipping: TransactionShippingInput

    Shipping information.

    Required for Level 3 processing.

  • tax: TransactionTaxInput

    Tax information about the transaction.

    Required for Level 2 processing.

  • discountAmount: String

    Discount amount that was included in the total transaction amount. Does not add to the total amount the payment method will be charged. This value can't be negative. Please note that this field is not used on PayPal transactions.

    Required for Level 3 processing.

  • surchargeAmount: String

    Surcharge amount that was included in the total transaction amount. Does not add to the total amount the payment method will be charged. This value can't be negative.

    Required for Visa Rent Discount Program.

  • lineItems: [TransactionLineItemInput!]

    Line items for this transaction. Up to 249 line items may be specified.

    Required for Level 3 processing.

  • threeDSecurePassThrough: ThreeDSecurePassThroughInput

    Deprecated: This field is included for supporting legacy clients. This field is specific to credit card payment methods only, and cannot be applied to transactions with other payment method types. If you need to pass this field, please use authorizeCreditCard or chargeCreditCard. See the CreditCardTransactionOptionsInput type for details.

    Results of a merchant-performed 3D Secure authentication. You will only need to use these fields if you've performed your own integration with a 3D Secure MPI provider (e.g. Cardinal Centinel). Otherwise, Braintree's SDKs handle this for you in our standard 3D Secure integration.

  • vaultPaymentMethodAfterTransacting: VaultPaymentMethodAfterTransactingInput

    When a single-use payment method is used to create this transaction, it can be automatically stored in the vault after transacting. If this field is left blank, the single-use payment method will not be vaulted.

  • customerDetails: TransactionCustomerDetailsInput

    Customer information to be stored on the transaction and used for fraud protection. Use this if you wish to pass customer information on a transaction without creating an independent stored customer record in the vault.

    This parameter can only be used if you do not pass customerId, and if you are not using a vaulted/multi-use payment method. In other words, this field is only valid when the transaction will not be associated with an existing customer.

    If vaultPaymentMethodAfterTransacting is also passed, these values will be used when creating a new customer for the newly-vaulted payment method.

  • processingOverrides: TransactionProcessingOverridesInput

    The values provided will take precedence over any similar fields, and will only be used for processing. These values will not update any similar fields and will not be returned in responses.

  • industry: TransactionIndustryInput

    Industry data information. Only one of the three sub-input fields can be provided.


TransactionLineItemInput

Data for individual line items on a transaction.

input:
  • name: String!

    Item name. Maximum 35 characters, or 127 characters for PayPal transactions.

    Required for Level 3 processing.

  • kind: TransactionLineItemType!

    Indicates whether the line item is a sale or refund.

    Required for Level 3 processing.

  • quantity: String!

    Number of units of the item purchased. Can include up to 4 decimal places. This value can't be negative or zero.

    Required for Level 3 processing.

  • unitAmount: String!

    Per-unit price of the item. Maximum 4 decimal places, or 2 decimal places for PayPal transactions. This value can't be negative or zero.

    Required for Level 3 processing.

  • totalAmount: String!

    Total price amount for the line item: quantity multiplied by unitAmount. Can include up to 2 decimal places.

    Required for Level 3 processing.

  • unitTaxAmount: String

    Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero.

    Required for Level 3 processing.

  • taxAmount: String

    Tax amount for the line item. Can include up to 2 decimal places. This value can't be negative.

    Required for Level 3 processing.

  • discountAmount: String

    Amount of discount for the line item. Can include up to 2 decimal places. This value can't be negative. Please note that this field is not used on PayPal transactions.

    Required for Level 3 processing.

  • unitOfMeasure: String

    The unit of measure or the unit of measure code. Maximum 12 characters.

    Required for Level 3 processing.

  • productCode: String

    Product or UPC code for the item. Maximum 12 characters, or 127 characters for PayPal transactions.

    Required for Level 3 processing.

  • commodityCode: String

    Code used to classify items purchased and track the total amount spent across various categories of products and services. Different corporate purchasing organizations may use different standards, but the United Nations Standard Products and Services Code (UNSPSC) is frequently used. Maximum 12 characters.

    Required for Level 3 processing.

  • description: String

    Item description. Maximum 127 characters.

    Required for Level 3 processing.

  • url: String

    A URL to information about the product.

    Required for Level 3 processing.

  • itemType: String

    The type of the line item, i.e., physical, digital etc.

  • imageUrl: String

    URL to an image that represents the product. Max 1024 characters.

  • upc: LineItemUpcInput

    UPC of the line item.


TransactionPackageTrackingLineItemInput

Data for individual line items for adding package trackers for transactions.

input:
  • name: String!

    Item name. Maximum 127 characters.

  • quantity: String!

    Number of units of the item purchased. Can include up to 4 decimal places. This value can't be negative or zero.

  • productCode: String

    Product code(SKU) for the item.

  • description: String

    Item description.

  • url: URL

    A URL to information about the product.

  • imageUrl: URL

    URL to an image that represents the product.

  • upc: LineItemUpcInput

    UPC of the line item.


TransactionProcessingOverridesInput

Processing overrides are additional data fields to be used only for processing. Provided values will take precedence over any similar fields(e.g. processingOverrides.customerEmail takes precedence over the vaulted customer's email address).

However, these values will not update any similar fields (e.g. providing processingOverrides.customerEmail will not update a vaulted customer's email address). These values are not returned in responses.

input:
  • customerEmail: String

    Customer's email address to be used by the processor.

  • customerFirstName: String

    Customer's first name to be used by the processor.

  • customerLastName: String

    Customer's last name to be used by the processor.

  • customerTaxIdentifier: String

    Customer's tax identifier to be used by the processor. It is the social security number analogue for the corresponding country.


TransactionSearchInput

Input fields for searching for transactions.

input:

TransactionShippingInput

Information related to shipping a physical product.

input:
  • shippingAddress: AddressInput

    Shipping destination address information.

    Required for Level 3 processing.

  • shippingAmount: String

    Shipping cost on the entire transaction.

    Required for Level 3 processing.

  • shipsFromPostalCode: String

    The postal code of the source shipping location, in any country's format.

    Required for Level 3 processing.

  • shippingMethod: TransactionShippingMethod

    The shipping method.

  • shippingTaxAmount: String

    Shipping tax amount on the entire transaction.

    Required for Level 3 processing.


TransactionTaxInput

Information related to taxes on the transaction.

input:
  • taxAmount: Amount

    Amount of tax that was included in the total transaction amount. Does not add to the total amount the payment method will be charged.

    Required for Level 2 processing unless taxExempt is true.

  • taxExempt: Boolean

    Whether the transaction should be considered eligible for tax exemption.

    Required for Level 2 processing.


UpdateCreditCardBillingAddressInput

Top-level input fields for updating a multi-use credit card to use a new billing address.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The multi-use credit card for which the billing address will be updated or added.

  • billingAddress: AddressInput

    The new billing address.

  • merchantAccountId: ID

    ID of the merchant account that will be used when verifying the credit card with the new billing address.

  • verification: CreditCardVerificationOptionsInput

    Input fields that specify options for verifying the credit card with the new billing address. By default, a verification will be performed. If the verification fails, the update will not be performed.


UpdateCreditCardCardholderNameInput

Top-level input fields for updating a multi-use credit card to use a new cardholder name.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The multi-use credit card for which the expiration date will be updated or added.

  • cardholderName: String!

    The new cardholder name that will be added to the multi-use credit card.

  • verification: CreditCardVerificationOptionsInput

    Input fields that specify options for verifying the credit card with the new billing address. By default, a verification will be performed. If the verification fails, the update will not be performed.


UpdateCreditCardExpirationDateInput

Top-level input fields for updating a multi-use credit card to use a new expiration date.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    The multi-use credit card for which the expiration date will be updated or added.

  • expirationYear: Year

    The new four-digit year associated with a credit card, formatted YYYY.

  • expirationMonth: Month

    The new expiration month of a credit card, formatted MM.

  • verification: CreditCardVerificationOptionsInput

    Input fields that specify options for verifying the credit card with the new billing address. By default, a verification will be performed. If the verification fails, the update will not be performed.


UpdateCustomFieldsInput

Input for creating or updating custom fields on a transaction or a refund.

input:

UpdateCustomerInput

Top-level field for updating a customer.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customerId: ID!

    ID of the customer to be updated.

  • customer: CustomerInput

    Input fields for the updates to be made on the customer.


UpdateInStoreLocationInput

Input fields for updating an in-store location.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • locationId: ID!

    ID of the location to be updated.

  • location: InStoreLocationUpdateInput!

    Input fields to update an in-store location.


UpdateInStoreReaderInput

Input fields for updating an in-store reader.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • readerId: ID!

    The ID of the in-store reader to update.

  • name: String

    The new name for the in-store reader.

  • locationId: ID

    The new location ID for the in-store reader.


UpdateTransactionAmountInput

Top-level input fields for a updating a transaction's amount.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transactionId: ID!

    ID of the transaction on which to perform the adjustment.

  • amount: Amount!

    The new total amount to be authorized on a transaction. This value must be greater than 0, and must match the currency format of the merchant account, and cannot be greater than the maximum allowed by the processor.


UpdateTransactionCustomFieldsInput

Deprecated: UpdateTransactionCustomFields mutation is no longer supported, please use UpdateCustomFields mutation instead. Input for creating or updating custom fields on a transaction.

input:

UsBankAccountBillingAddressInput

A billing address for a US bank account. This is a subset of the fields required on AddressInput.

input:
  • streetAddress: String!

    The street address.

  • extendedAddress: String

    The extended address information—such as an apartment or suite number.

  • city: String!

    The city.

  • state: UsStateCode!

    The state.

  • zipCode: UsZipCode!

    The ZIP code.


UsBankAccountBusinessOwnerInput

The name of the owner of a business US bank account.

input:
  • businessName: String!

    The name of the business that owns the account.


UsBankAccountIndividualOwnerInput

The name of the owner of a personal US bank account.

input:
  • firstName: String!

    The first name of the accountholder.

  • lastName: String!

    The last name of the accountholder.


UsBankAccountInput

Input fields for a US bank account object.

input:

UsBankLoginInput

Deprecated: US bank logins are no longer supported.

Input fields for a US bank login object.

input:
  • publicToken: String!

    The public token returned from the bank login.

  • accountId: String!

    The login provider account ID used for the bank login.

  • accountType: UsBankAccountType!

    The type of account.

  • businessOwner: UsBankAccountBusinessOwnerInput

    Information about the business that owns the account. This should only be specified for business accounts.

  • individualOwner: UsBankAccountIndividualOwnerInput

    Information about the individual that owns the account. This should only be specified for individual accounts.

  • billingAddress: UsBankAccountBillingAddressInput

    The billing address of the account.

  • achMandate: String!

    Language used to prove that you have the customer's explicit permission to debit their bank account.


VaultCreditCardExternalVaultOptionsInput

Options used to indicate when a credit card is externally vaulted.

input:
  • verifyingNetworkTransactionId: String

    For use if this credit card is stored in an external vault. The network transaction ID of the first transaction after which this credit card was stored in the external vault.


VaultCreditCardInput

Top-level input field for vaulting a credit card so it can be used multiple times.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of an existing single-use credit card payment method to be vaulted.

  • verification: VaultCreditCardVerificationOptionsInput

    Input fields that specify options for verifying the credit card before vaulting. By default, a verification will be performed. If the verification fails, the credit card will not be vaulted.

  • externalVault: VaultCreditCardExternalVaultOptionsInput

    Options used to indicate when a credit card is externally vaulted.

  • customerId: ID

    ID of the customer to associate the resulting multi-use payment method with.

  • accountType: CardAccountType

    The type of account to be used when verifying a combo card.

  • billingAddress: AddressInput

    A billing address to associate with the vaulted credit card. If billing address data was included when tokenizing the credit card, it will be merged with this input value.

  • threeDSecurePassThrough: ThreeDSecurePassThroughInput

    Results of a merchant-performed 3D Secure authentication. You will only need to use these fields if you've performed your own integration with a 3D Secure MPI provider (e.g. Cardinal Centinel). Otherwise, Braintree's SDKs handle this for you in our standard 3D Secure integration.

  • threeDSecureAuthenticationId: String

    ID of 3D Secure authentication performed using the Braintree SDK.

  • riskData: RiskDataInput

    Customer device information, which is sent directly to supported processors for fraud analysis.

  • makeDefault: Boolean

    This option makes the specified payment method the default for the customer.

  • failOnDuplicatePaymentMethod: Boolean

    If this option is passed and the same payment method has already been added to the Vault for any customer, the request will fail. This option will be ignored for Apple pay and Google pay payment methods.

  • failOnDuplicatePaymentMethodForCustomer: Boolean

    If this option is passed and the same payment method has already been added to the Vault for the same customer, the request will fail. This option will be ignored for Apple pay and Google pay payment methods.


VaultCreditCardVerificationOptionsInput

Input fields that specify options for verifying the vaulted credit card.

input:
  • merchantAccountId: ID

    ID of the merchant account to use when verifying the credit card. The verification will use the default merchant account if this field is left blank.

  • skip: Boolean

    Whether to opt out of verifying the credit card. Defaults to false for credit cards that support verification. Clients should only pass true in the uncommon scenario that the credit card has been verified externally to Braintree.

  • amount: Amount

    The amount to use to verify the credit card.

  • fraudTools: CreditCardFraudToolsOptionsInput

    Control which fraud tools will be applied to this transaction. Fraud tools cannot be retroactively applied to a transaction if skipped.


VaultInStorePaymentMethodAfterTransactingInput

Specifies behavior for vaulting a single-use payment method for an in-store transaction.

input:

VaultLimitedUsePayPalAccountOptionsInput

Input fields that provide information about the resulting PayPal account.

input:
  • amount: Amount

    The total amount of the order. This will be the limit to how much may be captured on the resulting payment method.

  • customField: String

    Variable passed directly to PayPal for your own tracking purposes. Customers do not see this value.

  • description: String

    Description of the transaction that is displayed to customers in PayPal email receipts.

  • orderId: String

    The PayPal invoice number. It must be unique in your PayPal business account and can contain a maximum of 127 characters. If specified, transactions created from the resulting payment method will have this orderId.

  • shippingAddress: AddressInput

    Shipping destination address information.

  • makeDefault: Boolean

    This option makes the specified payment method the default for the customer.


VaultPayPalBillingAgreementInput

Top-level input fields for importing and vaulting a PayPal Billing Agreement.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • billingAgreementId: String!

    ID of a PayPal Billing Agreement, that was not created through Braintree, to import and vault.

  • customerId: ID

    Optional ID of the customer to associate the resulting payment method with.

  • merchantAccountId: ID

    Optional ID of the merchant account associated with the linked PayPal account to be used to retrieve billing agreement details from PayPal. Only used for merchants with the PayPal multi-account feature enabled in Braintree.

  • indirectPayee: PayPalAccountInput

    The merchant (payee) PayPal account associated with the PayPal Billing Agreement being vaulted. Only used when the specified merchant account is specially configured to handle indirect PayPal accounts.


VaultPaymentMethodAfterTransactingInput

Specifies behavior for vaulting a single-use payment method after transacting with it.

input:

VaultPaymentMethodInput

Top-level input field for vaulting a payment method so it can be used multiple times.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of an existing single-use payment method to be vaulted.

  • verificationMerchantAccountId: ID

    Deprecated: This field is included for supporting legacy clients. Please use verification.merchantAccountId instead.

    ID of the merchant account to use when verifying the payment method.

  • verification: PaymentMethodVerificationOptionsInput

    Input fields that specify options for verifying the payment method before vaulting. Only applicable if the payment method is of a type that supports verification. For supported types, verification is performed by default. If the verification fails, the payment method will not be vaulted. For additional, payment method-specific verification options, please see other verification mutations such as verifyCreditCard or verifyUsBankAccount.

  • customerId: ID

    ID of the customer to associate the resulting multi-use payment method with.

  • threeDSecurePassThrough: ThreeDSecurePassThroughInput

    Results of a merchant-performed 3D Secure authentication. You will only need to use these fields if you've performed your own integration with a 3D Secure MPI provider (e.g. Cardinal Centinel). Otherwise, Braintree's SDKs handle this for you in our standard 3D Secure integration.

  • threeDSecureAuthenticationId: String

    ID of 3D Secure authentication performed using the Braintree SDK.

  • riskData: RiskDataInput

    Customer device information, which is sent directly to supported processors for fraud analysis.

  • makeDefault: Boolean

    This option makes the specified payment method the default for the customer.


VaultUsBankAccountInput

Top-level input field for vaulting a bank account so it can be used multiple times.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of an existing single-use payment method to be vaulted.

  • verificationMerchantAccountId: ID

    ID of the merchant account to use when verifying the payment method.

  • customerId: ID

    ID of the customer to associate the resulting multi-use payment method with.

  • verificationMethod: UsBankAccountVerificationMethod!

    Type of US bank account verification to perform.

  • verificationAddOns: [UsBankAccountVerificationAddOn!]

    Type of US bank account verification add ons.

  • makeDefault: Boolean

    This option makes the specified payment method the default for the customer.


VenmoPayerInfoInput

Information about a payer's Venmo account.

input:
  • firstName: String

    The payer's first name.

  • lastName: String

    The payer's last name.

  • phoneNumber: String

    The payer's phone number.

  • email: EmailAddress

    The payer's email address.

  • externalId: String

    The external ID of the payer's Venmo account.

  • userName: String

    The username of the payer's Venmo account.

  • billingAddress: AddressInput

    The payer's billing address.

  • shippingAddress: AddressInput

    The payer's shipping address.


VenmoPaysheetDetailsInput

Input fields for paysheet details.

input:
  • collectCustomerBillingAddress: Boolean

    Indicates whether to collect a billing address from the customer on the paysheet.

  • collectCustomerShippingAddress: Boolean

    Indicates whether to collect a shipping address from the customer on the paysheet.

  • transactionDetails: VenmoPaysheetTransactionDetailsInput

    Input fields for transaction details to be displayed on the Venmo Paysheet.


VenmoPaysheetLineItemInput

Line items for a Venmo pay sheet.

input:
  • name: String!

    Item name. Maximum 127 characters.

  • quantity: Int!

    Number of units of the item purchased. This value can't be negative or zero.

  • unitAmount: Amount!

    Per-unit price of the item. Can include up to 2 decimal places. This value can't be negative or zero.

  • type: TransactionLineItemType!

    Indicates whether the line item is a debit (sale) or credit (refund or discount) to the customer.

  • description: String

    Item description. Maximum 127 characters.

  • productCode: String

    Product or UPC code for the item. Maximum 127 characters.

  • unitTaxAmount: Amount!

    Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero. If this is a line item for a Venmo transaction, this value can be zero.

  • url: URL

    The URL to product information.


VenmoPaysheetTransactionDetailsInput

Input fields for the transaction details to be displayed on the Venmo Paysheet.

input:
  • subTotalAmount: Amount

    The subtotal amount of the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • taxAmount: Amount

    The tax amount of the transaction. Either a whole number or a number with exactly two decimal places. Must be non-negative.

  • discountAmount: Amount

    The total discount applied to the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • shippingAmount: Amount

    The shipping amount for the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • totalAmount: Amount!

    The grand total amount of the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • lineItems: [PayPalLineItemInput!]

    The list of line items belonging to the transaction. Can include up to 249 line items.

  • venmoPaysheetLineItems: [VenmoPaysheetLineItemInput!]

    The list of line items belonging to the pay sheet. Can include up to 249 line items.


VerificationSearchInput

Input fields for searching for verifications.

input:

VerifyCreditCardInput

Top-level input field for verifying a credit card.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of the payment method to be verified.

  • merchantAccountId: ID

    ID of the merchant account to use when verifying the credit card.

  • options: CreditCardVerificationOptionsInput

    Input fields for verifying a credit card.


VerifyPaymentMethodInput

Top-level input field for verifying a multi-use payment method.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of an existing multi-use payment method to be verified.

  • merchantAccountId: ID

    ID of the merchant account to use when verifying the payment method.


VerifyUsBankAccountInput

Top-level input field for retrying a verification on a bank account.

input:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethodId: ID!

    ID of an existing multi-use payment method to be vaulted.

  • merchantAccountId: ID

    ID of the merchant account to use when verifying the payment method.

  • verificationMethod: UsBankAccountVerificationMethod!

    Type of US bank account verification to perform.

  • verificationAddOns: [UsBankAccountVerificationAddOn!]

    Type of US bank account verification add ons.


Objects

AcceptDisputePayload

Top-level field returned when accepting a dispute.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • dispute: Dispute

    Information about the dispute that was accepted.


AccessToken

An OAuth access token.

fields:
  • accessToken: String

    The access token.

  • refreshToken: String

    The refresh token for getting a new access token.

  • tokenType: OAuthTokenType

    The type of token.

  • expiresAt: String

    Expiration in ISO time format.


Address

Representation of an address.

fields:
  • company: String

    Company name.

  • streetAddress: String

    The street address.

  • addressLine1: String

    The first line of the street address, such as street number, street name.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number.

  • addressLine2: String

    Extended address information, such as an apartment number or suite number.

  • firstName: String

    First name.

  • lastName: String

    Last name.

  • fullName: String

    Full name.

  • locality: String

    Locality/city.

  • adminArea2: String

    A city, town, or village.

  • region: String

    State or province.

  • adminArea1: String

    Highest level subdivision, such as state, province, or ISO-3166-2 subdivison.

  • postalCode: String

    Postal code, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code.

  • countryCode: CountryCode

    Country code for the address.

  • phoneNumber: String

    Phone number.


ApplePayConfiguration

Configuration for Apple Pay on iOS.

fields:
  • status: ApplePayStatus

    The environment being used for Apple Pay.

  • countryCode: CountryCodeAlpha2

    The country code of the acquiring bank where the transaction is likely to be processed.

  • currencyCode: CurrencyCodeAlpha

    The merchant's Apple Pay currency code.

  • merchantIdentifier: String

    The merchant identifier that must be supplied when making an Apple Pay request.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Apple Pay.


ApplePayOriginDetails

Additional information about the payment method specific to Apple Pay.

fields:
  • paymentInstrumentName: String

    A human-readable description of the Apple Pay payment method. This usually consists of the Apple Pay card type and its last four digits. If there is no underlying credit card, this will describe the customer's payment method and the parent CreditCardDetail object's last4 field will be null.

  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


ApplePayWebConfiguration

Configuration for Apple Pay on web.

fields:
  • countryCode: CountryCodeAlpha2

    The merchant's Apple Pay country code.

  • currencyCode: CurrencyCodeAlpha

    The merchant's Apple Pay currency code.

  • merchantIdentifier: String

    The merchant identifier that must be supplied when making an Apple Pay request.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Apple Pay.


AuthenticationInsight

Information about the customer authentication regulation environment that applies to the payment method when processed with the provided merchant account.

fields:
  • merchantAccountId: String

    The merchant account used to determine authentication insight.

  • customerAuthenticationRegulationEnvironment: CustomerAuthenticationRegulationEnvironment

    The customer authentication regulation environment that applies when transacting with this payment method and merchant account.

  • customerAuthenticationIndicator: CustomerAuthenticationIndicator

    A value indicating when to perform further customer authentication.


AuthorizationAdjustment

Records of authorization adjustments performed when a transaction is captured for less or more than its original authorization amount.

fields:

AuthorizationExpiredEvent

Accompanying information for an authorization expired transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the authorization for this transaction was marked expired.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.


AuthorizedEvent

Accompanying information for an authorized transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was authorized.

  • amount: MonetaryAmount

    The amount the transaction was authorized for. This will match the amount on the transaction itself. In most cases, you can't request to settle more than this amount.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionAuthorizationProcessorResponse

    Fields describing the payment processor response to the authorization request.

  • networkResponse: PaymentNetworkResponse

    Fields describing the network response to the authorization request.

  • riskDecision: RiskDecision

    Risk decision for this transaction.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • authorizationExpiresAt: Timestamp

    The date/time the transaction will expire if it has the authorized status. For more details on authorization expiration timeframes, see the Statuses reference.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


BinRecord

Information about the credit card based on its BIN.

fields:
  • prepaid: BinRecordValue

    Whether or not the card is prepaid, such as a gift card.

  • healthcare: BinRecordValue

    Whether the card is designated only to be used for healthcare expenses.

  • debit: BinRecordValue

    Whether or not the card is a debit card.

  • durbinRegulated: BinRecordValue

    Whether the card is regulated by the Durbin Amendment due to the bank's assets, and therefore has a maximum interchange rate.

  • commercial: BinRecordValue

    Whether or not the card is a commercial card and capable of processing Level 2 transactions.

  • payroll: BinRecordValue

    Whether or not the card is designated for employee wages.

  • issuingBank: String

    The name of the bank that issued the card.

  • countryOfIssuance: CountryCode

    The country code of the country that issued the card.

  • productId: String

    A code representing any special program from the card issuer the card is part of.


BraintreeApiConfiguration

Configuration for payment methods in legacy clients.

fields:
  • url: String

    The URL for tokenizing payment methods.

  • accessToken: String

    The authentication for tokenizing payment methods.


BusinessAccountCreationRequest

Record of onboarding request.

fields:
  • id: ID!

    Unique identifier generated by PayPal for the onboarding request.

  • merchantAccount: MerchantAccount

    Information about the merchant account that is being created as a result of the request.

  • creationStatus: AccountCreationStatus

    The account creation status for this account.

  • completedAt: Timestamp

    The completion date and time of the merchant account application.

  • submittedAt: Timestamp

    The submitted date and time of the merchant account application.


BusinessAccountCreationRequestConnection

A paginated list of BusinessAccountCreationRequests.

fields:

BusinessAccountCreationRequestConnectionEdge

A BusinessAccountCreationRequest within a BusinessAccountCreationRequestConnection.

fields:
  • cursor: String

    This BusinessAccountCreationRequest's location within the BusinessAccountCreationRequestConnection. Used for requesting additional pages.

  • node: BusinessAccountCreationRequest

    The business account creation request.


CardPresentOriginDetails

Additional information about a card present payment method supplied by an in-store payment reader.

fields:
  • authorizationMode: InStoreReaderAuthorizationMode

    The authorization mode used to perform the transaction on the payment reader.

  • pinVerified: Boolean

    An indicator for whether the transaction was verified via pin.

  • inputMode: PaymentReaderInputMode

    The input mode used on the payment reader to facilitate an in-store transaction.

  • terminalId: String

    The ID of the terminal that was processed this transaction.


ChildCapture

A partial capture's relationship to its original authorization transaction.

fields:
  • parentAuthorization: Transaction

    The original authorization whose funds have been partially captured.


ClientConfiguration

Top-level fields returned from the client configuration query.

fields:

ClientSDKMetadata

Analytics data provided by a client SDK.

fields:
  • platform: String

    Name of the platform.

  • sessionId: String

    Session ID on the device.

  • version: String

    Version of the client SDK.

  • integration: String

    Name of the client SDK integration type (e.g. dropin or custom).


ConfirmMicroTransferAmountsPayload

Top-level output field from confirming micro-transfer amounts on bank account.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • verification: Verification

    The verification that was run on the payment method prior to vaulting.

  • status: ConfirmMicroTransferAmountsStatus

    The status of the micro-transfer amounts confirmation.


CreateClientTokenPayload

Top-level fields returned when creating a client token.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • clientToken: String

    A Base64 encoded string used to initialize client SDKs.


CreateCustomerPayload

Top-level fields returned when creating a customer.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customer: Customer

    Information about the customer that was created. Can be used when vaulting payment methods or creating transactions to associate those objects.


CreateDisputeFileEvidencePayload

Top-level field returned when creating file evidence for a dispute.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • evidence: DisputeFileEvidence

    The evidence object created.

  • dispute: Dispute

    Information about the dispute the evidence is attached to.


CreateDisputeTextEvidencePayload

Top-level field returned when creating text evidence for a dispute.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • evidence: DisputeTextEvidence

    The evidence object created.


CreateInStoreLocationPayload

Top-level fields returned when creating an in-store location.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • location: InStoreLocation

    The in-store location.


CreateNonInstantLocalPaymentContextPayload

The result of a request to make a local payment context.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentContext: LocalPaymentContext

    Details about the local payment context.


CreateOAuthClientSecretPayload

Details about OAuth client secret created for merchant.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • secret: String

    The client secret value.


CreatePayPalBillingAgreementPayload

Top-level fields returned from setting up a PayPal Billing Agreement Token.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • billingAgreementToken: ID

    The Billing Agreement token.

  • approvalUrl: URL

    The URL for getting user approval of the PayPal Billing Agreement.


CreatePayPalOneTimePaymentPayload

Top-level fields returned from setting up a PayPal One-Time Payment.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • approvalUrl: URL

    The URL for getting user approval of the PayPal payment.

  • paymentId: String

    The PayPal payment ID / order ID.


CreateTransactionPackageTrackingPayload

Top-level output field from creating a transaction package tracker.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • packageTracker: TransactionPackageTracker

    The package tracker created during the request.

  • transaction: Transaction

    The representing of the transaction for which the tracker was added.


CreateUniversalAccessTokenPayload

Top-level fields returned when creating a universal access token.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • accessToken: AccessToken

    The created universal access token.


CreditCardConfiguration

Configuration for credit card tokenization.

fields:
  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for credit card processing.

  • challenges: [Challenge!]

    A list of challenges that are required by the merchant to process a given credit card.

  • threeDSecureEnabled: Boolean

    Whether or not the merchant supports 3D Secure.

  • threeDSecure: ThreeDSecureConfiguration

    Configuration for 3D Secure.

  • fraudDataCollectionEnabled: Boolean

    Whether or not fraud data collection is enabled for the merchant.


CreditCardDetails

Details about a credit card.

fields:
  • brandCode: CreditCardBrandCode

    A static code identifying the card brand.

  • last4: String

    The last four digits of the card number.

  • bin: String

    The first 6 digits of the credit card number, known as the Bank Identification Number. If this card originates from a third party such as a wallet provider, this BIN may not be present and the PaymentMethodOriginDetails will contain a BIN instead.

  • binData: BinRecord

    Information about the card based on its BIN.

  • expirationMonth: String

    The month of the expiration date, formatted MM.

  • expirationYear: String

    The year of the expiration date, formatted YYYY.

  • cardholderName: String

    The cardholder's name.

  • uniqueNumberIdentifier: String

    An identifier that uniquely represents any credit card number, for cards stored in a merchant's vault. If the same credit card is added to a merchant's vault multiple times, each will have the same identifier. This identifier will only be returned if the field "origin" is null.

  • origin: PaymentMethodOrigin

    Additional information if the credit card was provided from a third-party origin, such as Apple Pay, Google Pay, or another digital wallet.

  • billingAddress: Address

    The billing address associated with the credit card.

  • threeDSecure: ThreeDSecureDetails

    3D Secure information for the payment method.

  • imageUrl: String

    A URL to an image logo representing the card brand.

  • brand: String

    The display name of the card brand, e.g. "Visa" or "American Express".

  • cardOnFileNetworkTokenized: Boolean

    Indicates whether the card on file is network tokenized.


CreditCardTransactionDetails

Credit card specific details on a transaction or verification.

fields:
  • creditCard: CreditCardDetails

    The details of the credit card itself.

  • networkTransactionId: String

    The network transaction identifier provided by the payment network. If this transaction was created in order to verify a payment method before storing it in an external vault, then this value can be pased when creating subsequent transactions with the same payment method.

  • accountType: CardAccountType

    For combo cards, what account type was used for this specific transaction.

  • acquirerReferenceNumber: String

    Reference value assigned to a card transaction once it has been processed.

  • processedWithCardOnFileNetworkToken: Boolean

    Indicates whether the transaction was processed with a card on file network token.

  • accountBalance: MonetaryAmount

    The remaining balance in the account after this transaction. This field is only returned for payment methods such as prepaid cards.


CreditCardVerificationDetails

Information specific to verifications of credit card payment methods.

fields:
  • amount: MonetaryAmount

    The amount used when performing the verification. May be 0.


CustomActionsPaymentContext

Top-level fields returned from a Custom Actions payment context.

fields:
  • id: ID!

    The identifier of the payment context.

  • createdAt: Timestamp!

    Date and time when the payment context was created.

  • updatedAt: Timestamp!

    Date and time when the payment context was updated.

  • customFields: [CustomActionsPaymentContextField!]

    A list of fields stored on a PaymentContext during execution of a Custom Actions handler (Five (5) entries maximum).


CustomActionsPaymentContextField

Fields returned by the createPaymentContext custom actions event handler.

fields:
  • name: String!

    An alphanumeric string used as a key to lookup a CustomField value (255 characters maximum).

  • value: String!

    An alphanumeric string used to store a CustomField value (7168 characters maximum).


CustomActionsPaymentMethodDetails

Details about a custom actions payment method.

fields:

CustomActionsPaymentMethodField

Fields that are provided during tokenization and are presented to the invoked action to be consumed.

fields:
  • name: String

    The name of this field, e.g. "accountNumber".

  • displayValue: String

    The value displayed in the Control Panel or API, e.g. "*****6789".


CustomField

A merchant-defined custom field to store additional information.

fields:
  • name: String

    The name of the custom field.

  • value: String

    The value of the custom field.


Customer

Information about a customer and their associated payment methods and transactions.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • company: String

    Company or business name associated with this customer.

  • createdAt: Timestamp

    Date and time at which the customer was created.

  • customFields: [CustomField!]

    Collection of custom field/value pairs. Custom fields are defined in the Control Panel.

  • defaultPaymentMethod: PaymentMethod

    Customer's default payment method.

  • email: String

    Email address for this customer.

  • firstName: String

    Customer's first name.

  • lastName: String

    Customer's last name.

  • phoneNumber: String

    The phone number for this customer.

  • fax: String

    Customer's fax.

  • website: String

    Customer's website.

  • paymentMethods: PaymentMethodConnection

    Payment methods belonging to this customer.

  • transactions: TransactionConnection

    Transactions associated with this customer. This includes transactions created by charging a vaulted payment method that belongs or belonged to the customer, or by passing a customer ID when charging a single-use payment method.


CustomerConnection

A paginated list of customers.

fields:

CustomerConnectionEdge

A customer within a CustomerConnection.

fields:
  • cursor: String

    This customer's location within the CustomerConnection. Used for requesting additional pages.

  • node: Customer

    The customer.


DeleteCustomerPayload

Top-level output field from deleting a customer.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DeleteDisputeEvidencePayload

Top-level field returned when deleting evidence from a dispute.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DeleteInStoreLocationPayload

Top-level fields returned when deleting an in-store location.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DeleteOAuthClientSecretPayload

Details about OAuth client secret delete operation.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DeletePaymentMethodFromSingleUseTokenPayload

Top-level output field from deleting a payment method referenced by a single-use token.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DeletePaymentMethodFromVaultPayload

Top-level output field from deleting a multi-use payment method.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.


DisableOAuthClientSecretPayload

Details about OAuth client secret disable operation.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • oauthClientSecret: OAuthClientSecret

    OAuth Client Secret details.


DisableProductForMerchantPayload

Payload from disabling a Product for a Merchant.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • product: Product

    Product that was disabled.


DisbursementBankAccount

Details about the disbursement bank account.

fields:
  • last4: String

    The last four digits of the bank account number.

  • routingNumber: String

    The routing number of the bank.


DisbursementDetails

Disbursement details contain information about how and when the transaction was disbursed, including timing and currency information. This field is only available if you have an eligible merchant account.

fields:
  • date: Date

    The date that the funds associated with this transaction were disbursed.

  • amount: MonetaryAmount

    Amount of money disbursed in the settlement currency, which may be different than the transaction's presentment currency.

  • exchangeRate: String

    The exchange rate from the presentment currency to the settlement currency. If the currencies are the same, this will be 1.

  • fundsHeld: Boolean

    Indicates whether funds have been withheld from a disbursement to the merchant's account.


Dispute

A case raised by a customer to either request information about or to challenge a charge. These are initiated via a customer's payment provider, such as their bank, and require a merchant to provide evidence or further information.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • amountDisputed: MonetaryAmount

    The amount of money from the original charge that the customer is disputing. Can be 0. This amount is debited from a merchant's account and held in a third-party account until the dispute is resolved, at which time it is sent to either the merchant or customer.

  • amountWon: MonetaryAmount

    If an amount was disputed, the amount of money awarded back to the merchant if the dispute was reversed.

  • caseNumber: String

    The case number for the dispute.

  • createdAt: Timestamp

    Date and time at which the dispute was created.

  • receivedDate: Date

    Date the dispute was received by the merchant.

  • referenceNumber: String

    The transaction reference number for the dispute.

  • responseDeadline: Timestamp

    The deadline for the merchant to submit a response to the dispute.

  • replyByDate: Date

    The reply by date for the merchant to submit a response to the dispute.

  • type: DisputeType

    The type of dispute.

  • evidence: [DisputeEvidence!]

    Evidence records submitted by the merchant for the dispute.

  • originalDispute: Dispute

    If this dispute is a follow-up to a previous chargeback or retrieval, the original dispute.

  • processorResponse: DisputeProcessorResponse

    Additional information from the payment processor.

  • status: DisputeStatus

    The status of the dispute.

  • statusHistory: [DisputeStatusEvent!]

    A log of history events containing status changes by date for this dispute.

  • transaction: Transaction

    The disputed transaction which the customer is either requesting further information on or challenging.

  • chargebackProtectionLevel: ChargebackProtectionLevel

    The chargeback protection status of the dispute.

  • protectionLevel: DisputeProtectionLevel

    The protection level of the dispute.

  • evidenceSubmittable: Boolean

    Indicates whether or not the merchant can upload evidence for this dispute based on its current status.

  • preDisputeProgram: PreDisputeProgram

    The pre-dispute program of the dispute.


DisputeConnection

A paginated list of disputes.

fields:

DisputeConnectionEdge

A dispute within a DisputeConnection.

fields:
  • cursor: String

    This dispute's location within the DisputeConnection. Used for requesting additional pages.

  • node: Dispute

    The dispute.


DisputeFileEvidence

Images, files, or other evidence supporting a dispute case.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time at which the evidence was created with Braintree.

  • sentToProcessorAt: Timestamp

    Date and time at which the evidence was sent to the processor.

  • url: String

    A URL where you can retrieve the dispute evidence.

  • category: DisputeEvidenceCategory

    The evidence category.


DisputeProcessorResponse

Information about the dispute provided by the processor.

fields:
  • processorComments: String

    Additional comments forwarded by the processor.

  • reason: DisputeReason

    The reason the dispute was created.

  • reasonCode: String

    The reason code provided by the processor.

  • reasonDescription: String

    The reason code description based on the reasonCode.

  • receivedDate: Date

    Date the dispute was received by the merchant.

  • referenceNumber: String

    The string value representing the reference number provided by the processor (if any).


DisputeStatusEvent

A record of a status the dispute has passed through.

fields:
  • disbursementDate: Date

    The date any funds associated with this event were disbursed.

  • status: DisputeStatus

    The status of the dispute.

  • timestamp: Timestamp

    Date and time when the status event occurred.

  • effectiveDate: Date

    The date the status event took effect.


DisputeTextEvidence

Text evidence supporting a dispute case.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time at which the evidence was created with Braintree.

  • sentToProcessorAt: Timestamp

    Date and time at which the evidence was sent to the processor.

  • comment: String

    The body for text evidence.

  • content: String

    The body for text evidence.

  • category: DisputeEvidenceCategory

    The evidence category.


EmvCardOriginDetails

Additional information about an integrated circuit card (ICC) payment method supplied by an in-store payment reader.

fields:
  • authorizationMode: InStoreReaderAuthorizationMode

    The authorization mode used to perform the transaction on the payment reader.

  • pinVerified: Boolean

    An indicator for whether the transaction was verified via pin.

  • inputMode: PaymentReaderInputMode

    The input mode used on the payment reader to facilitate an in-store transaction.

  • terminalId: String

    The ID of the terminal that was processed this transaction.

  • applicationPreferredName: String

    The preferred name associated with the application used to process an EMV transaction.

  • applicationIdentifier: String

    The identifier specifying which EMV application was used to process the transaction.

  • terminalVerificationResult: String

    A status code representing the result of a series of validations performed against an EMV enabled credit card.

  • cardSequenceNumber: String

    A unique identifier for credit cards that share the same PAN.

  • applicationInterchangeProfile: String

    An indicator of the credit card's capabilities within the processing application.

  • terminalTransactionDate: String

    The local date that the transaction requested authorization from the payment reader, formatted YYMMDD.

  • terminalTransactionType: String

    An indicator of the type of transaction specified during authorization processing.

  • cashbackAmount: String

    An additional amount associated with the transaction that represents the cashback amount requested by the cardholder.

  • applicationUsageControl: String

    An indicator used to specify an issuer's restrictions for processing in a geographic region.

  • terminalCountryCode: String

    The country code indicated by the payment reader to process the transaction with.

  • applicationCryptogram: String

    The cryptogram provided by an integrated circuit card (ICC) used for processing the transaction.

  • cryptogramInformationData: String

    An indicator for the type of application cryptogram provided by an integrated circuit card (ICC) to process the transaction.

  • cardholderVerificationMethodResults: String

    An indicator of the cardholder verification method and if it was successful or unsuccessful.

  • applicationTransactionCounter: String

    A counter managed by an integrated circuit card (ICC) that provides a reference to each transaction using that card.

  • unpredictableNumber: String

    A value used to uniquely differentiate an application cryptogram used during authorization processing.

  • issuerActionCodeDefault: String

    An indicator of the conditions that caused a transaction to be offline declined by the issuer, in a scenario where the transaction may have authorized if the payment reader made a processor request but was unable to.

  • issuerActionCodeDenial: String

    An indicator of the conditions that caused a transaction to be offline declined by the issuer, in a scenario where the payment reader did not attempt to make a processor request.

  • issuerActionCodeOnline: String

    An indicator of the conditions that caused the payment reader to attempt to make a processor request.


EnableProductForMerchantPayload

Payload from enabling a Product for a Merchant.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • product: Product

    Product that was enabled.


ExchangeRateQuote

Details of the generated exchange rate quote.

fields:
  • id: ID!

    Unique identifier, which must be passed in the payment request in order to honor the exchange rate during settlement.

  • baseAmount: MonetaryAmount

    The amount in the baseCurrency to be converted to the quoteCurrency. If no amount was provided, then this amount is 1 unit of baseCurrency.

  • quoteAmount: MonetaryAmount

    The amount in the quoteCurrency converted from the baseCurrency. If no amount was provided, then this amount is converted from 1 unit of baseCurrency, which will be the same as exchangeRate after rounding-off.

  • exchangeRate: ExchangeRate

    This much of quoteCurrency is required to buy 1 unit of baseCurrency. This includes merchant markupPercentage if any. If a markupPercentage is specified, this field will be the sum of that percentage and the tradeRate.

  • tradeRate: ExchangeRate

    This is the rate at which PayPal will settle with the merchant.

  • expiresAt: Timestamp

    When the exchange rate quote represents expires.

  • refreshesAt: Timestamp

    When the exchange rate quote represents will be refreshed.


ExchangeRateQuotePayload

Exchange rate quotes for a specific customer.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • quotes: [ExchangeRateQuote!]

    Exchange rate quote details for each base and quote currency combination.


FacilitatorDetails

Fields capturing information about a third party that provided payment information for this transaction via the Grant API, Shared Vault, or Google Pay.

fields:
  • oauthApplication: OAuthApplication

    The OAuth application that owns the payment information used to create the transaction.


FailedEvent

Accompanying information for a transaction that failed because it could not be successfully sent to the processor.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction failed.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionAuthorizationProcessorResponse

    Fields describing the payment processor response, or an explanation for the lack thereof.

  • networkResponse: PaymentNetworkResponse

    Fields describing the network response to the authorization request.

  • merchantAdviceCodeResponse: MerchantAdviceCodeResponse

    Fields describing the merchant advice code response to the authorization request.

  • riskDecision: RiskDecision

    Risk decision for this transaction.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


FastlaneConfiguration

Configuration for PayPal Fastlane.

fields:
  • enabled: Boolean

    Whether or not Fastlane is enabled for the merchant.


FinalizeDisputePayload

Top-level field returned when finalizing a dispute.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • dispute: Dispute

    Information about the dispute that was finalized.


FraudProviderConfiguration

Configuration for fraud protection provider.

fields:
  • merchantId: String

    The merchant ID used by the fraud protection provider to identify the fraud data collection request.

  • name: String

    The name of the fraud provider.


GatewayRejectedEvent

Accompanying information for a gateway rejected transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was rejected by the gateway.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • gatewayRejectionReason: GatewayRejectionReason

    The reason the transaction was rejected, based on your gateway settings.

  • processorResponse: TransactionAuthorizationProcessorResponse

    Fields describing the payment processor response. Depending on your gateway settings, the AVS and CVV responses may be the reason for the rejection.

  • networkResponse: PaymentNetworkResponse

    Fields describing the network response to the authorization request.

  • merchantAdviceCodeResponse: MerchantAdviceCodeResponse

    Fields describing the merchant advice code response to the authorization request.

  • riskDecision: RiskDecision

    Risk decision for this transaction. If the gatewayRejectionReason is fraud, this may be the reason for the rejection.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • duplicateOf: Transaction

    The original transaction if the gateway rejection reason was DUPLICATE.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


GeoCoordinates

Coordinates describing a geographic position.

fields:
  • latitude: Float

    The angular distance of a place north or south of the earth's equator. A positive value is north of the equator, a negative value is south of the equator.

  • longitude: Float

    The angular distance of a place east or west of the meridian at Greenwich, England. A positive value is east of the prime meridian, a negative value is west of the prime meridian.


GooglePayConfiguration

Configuration for Google Pay on Android and the web.

fields:
  • countryCode: CountryCodeAlpha2

    The country code of the acquiring bank where the transaction is likely to be processed.

  • displayName: String

    A string used to identify the merchant to the customer.

  • environment: GooglePayEnvironment

    The environment being used for Google Pay.

  • googleAuthorization: String

    Authorization to use when tokenizing a Google Pay payment method.

  • paypalClientId: String

    A string used to identify the merchant's PayPal account when generating a PayPal Closed Loop Token.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Google Pay.


GooglePayOriginDetails

Additional information about the payment method specific to Google Pay.

fields:
  • googleTransactionId: String

    A reference ID for the Google transaction.

  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


HyperwalletAccountDetails

Details about a Hyperwallet account.

fields:
  • userId: String

    The ID of the Hyperwallet account.


IDealConfiguration

Configuration for iDEAL.

fields:
  • routeId: String

    The route ID used to process an iDEAL payment.

  • assetsUrl: String

    A URL used to redirect the customer to the bank's web page.


InStoreContext

Reference object for an in-store request.

fields:
  • id: ID!

    A unique ID for this in-store request.

  • transaction: Transaction

    The transaction representing the charge on the payment method.

  • refund: Refund

    The refund representing the refund on the payment method.

  • reader: InStoreReader

    The reader associated with the in-store request.

  • status: InStoreContextStatus!

    The status of the context created.


InStoreContextError

An in-store context error object.

fields:
  • message: String

    The text explanation of the in-store context error.

  • errorCode: String

    A unique code identifying the error, which can be used to look up a detailed description.


InStoreContextPayload

Top-level fields returned when requesting a state change on an in-store reader.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • inStoreContext: InStoreContext

    The in-store context created when an in-store flow is initiated.

  • id: ID!

    A unique ID for this in-store context request.

  • reader: InStoreReader

    The reader associated with the in-store request.

  • status: InStoreContextStatus!

    The status of the context created.


InStoreLocation

An in-store location.

fields:
  • id: ID!

    Unique identifier.

  • name: String

    Name of the in-store location.

  • internalName: String

    A merchant-assigned internal name of this location, unique to this merchant.

  • address: InStoreLocationAddress

    The address of the in-store location.

  • geoCoordinates: GeoCoordinates

    The coordinates of this location.

  • payerId: ID

    The PayPal account ID to which this location was added.

  • qrCodePaymentsEnabled: Boolean

    Whether QR code payments will be enabled for this location.


InStoreLocationAddress

Input fields for an in-store location address.

fields:
  • streetAddress: String

    The street address.

  • extendedAddress: String

    Extended address information, such as an apartment or suite number.

  • locality: String

    Locality/city.

  • region: String

    State or province.

  • postalCode: String

    Postal code in any country's format, otherwise known as CAP, CEP, Eircode, NPA, PIN, PLZ, or ZIP code.

  • countryCode: CountryCode

    Country code for the address.


InStoreLocationConnection

A paginated list of in-store locations.

fields:

InStoreLocationConnectionEdge

An in-store location within an InStoreLocationConnection.

fields:
  • cursor: String

    The in-store locations's location within the InStoreLocationConnection. Used for requesting additional pages.

  • node: InStoreLocation

    The in-store location.


InStoreLocationSearchConnection

A paginated list of searched in-store locations.

fields:

InStoreReader

An in-store payment card reader.

fields:
  • id: ID!

    Unique identifier.

  • name: String

    Name given to the reader.

  • vendor: InStoreReaderVendor

    Vendor-specific information about the reader.

  • location: InStoreLocation

    The in-store location the reader is attached to.

  • status: ReaderStatus

    Current status of the reader.

  • pairedAt: Timestamp

    Date and time when the reader was paired.

  • lastSeenAt: Timestamp

    Date and time when the reader last established a connection.

  • offlineSince: Timestamp

    Date and time when the reader last disconnected.

  • softwareVersion: String

    The version of the payment application running on the Reader.


InStoreReaderConnection

A paginated list of in-store readers.

fields:

InStoreReaderConnectionEdge

An in-store reader within an InStoreReaderConnection.

fields:
  • cursor: String

    The in-store reader's location within the InStoreReaderConnection. Used for requesting additional pages.

  • node: InStoreReader

    The in-store reader.


InStoreReaderPayload

Top-level fields returned for an in-store reader.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • reader: InStoreReader

    The reader.


KountConfiguration

Configuration for Kount fraud tools.

fields:
  • merchantId: String

    The Kount merchant ID used to identify the fraud data collection request.


LiabilityShift

A scenario detailing which party assumes liability for certain conditions in the event of a transaction being disputed.

fields:

LineItemUpc

UPC(Universal Product Code) of a line items.

fields:
  • upcCode: String

    UPC code for the item. Minimum 6 characters, maximum 17 characters.

  • upcType: UpcType

    UPC type for the item.


LocalPaymentBlikAlias

BLIK alias for BLIK OneClick Local Payment transaction details.

fields:
  • key: String

    BLIK OneClick alias key.

  • label: String

    BLIK OneClick alias label.


LocalPaymentContext

The LocalPayment object.

fields:
  • id: ID!

    Unique identifier for the payment context.

  • legacyId: ID!

    Legacy unique identifier.

  • type: LocalPaymentMethodType

    The type of the local payment.

  • approvalUrl: String

    The URL to which a customer should be redirected to approve the local payment.

  • amount: MonetaryAmount

    The amount charged in this local payment.

  • merchantAccountId: String

    The merchant account used to create the payment context.

  • transactedAt: Timestamp

    Date and time when the local payment context was used to create a transaction.

  • approvedAt: Timestamp

    Date and time when the local payment context was approved by the customer.

  • createdAt: Timestamp!

    Date and time when the local payment context was created.

  • updatedAt: Timestamp!

    Date and time when the local payment context was updated.

  • expiredAt: Timestamp

    Date and time when the local payment context was expired.

  • paymentId: String!

    Unique identifier for the local payment.

  • orderId: String

    The PayPal Invoice ID.


LocalPaymentDetails

Local payment specific details on a transaction.

fields:
  • origin: PaymentMethodOrigin

    Additional information about the local payment method provided from a third-party origin, such as PayPal or another regional payment method provider.

  • type: LocalPaymentMethodType

    Regional payment method selected by the customer.

  • displayName: String

    Description of the payment method that can be displayed to customers.

  • implicitlyVaultedPaymentMethodId: String

    Payment method identifier for recurrent local payment.


MasterpassConfiguration

Configuration for Masterpass.

fields:
  • merchantCheckoutId: String

    The Masterpass merchant checkout ID used to identify the merchant in Masterpass requests.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Masterpass.


MasterpassOriginDetails

Additional information about the payment method specific to Masterpass.

fields:
  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


Merchant

Details about a merchant and its current settings.

fields:
  • id: ID!

    Unique identifier.

  • status: String

    Current status.

  • companyName: String

    Company name.

  • website: String

    The merchant's main website.

  • timezone: String

    The timezone that the merchant operates in.

  • merchantAccounts: MerchantAccountConnection

    A paginated list of merchant accounts that belong to this merchant. Filtered by search criteria, if provided.

  • products: [Product!]

    Detailed information about products available to the calling merchant.


MerchantAccount

Information about a merchant account associated with a merchant.

fields:
  • id: ID!

    Unique identifier for the merchant account. Used to determine what merchant account processed or will process a given Payment.

  • bankAccount: DisbursementBankAccount

    The disbursement bank account linked with the merchant account.

  • currencyCode: CurrencyCodeAlpha

    The ISO code for the currency the merchant account uses.

  • dbaName: String

    Business name of the account.

  • externalId: String

    A unique identifier for this account in external systems.

  • status: MerchantAccountStatus

    The status of a merchant account. This determines whether the merchant account can be used to create a Payment.

  • isDefault: Boolean

    Whether this merchant account is the default for this merchant. The default merchant account is used to process all Payments where a merchant account ID is not specified.

  • paypalAccount: PayPalAccountDetails

    The PayPal account linked with the merchant account.

  • hyperwalletAccount: HyperwalletAccountDetails

    The Hyperwallet account linked with the merchant account.

  • venmoAccount: VenmoAccountDetails

    The Venmo account linked with the merchant account.

  • threeDSecure: MerchantAccountThreeDSecureConfiguration

    The 3D Secure configuration for the merchant account.


MerchantAccountApplication

A record of a merchant account application.

fields:
  • id: ID!

    A unique ID for the account application. Can be used to query the status of the onboarding request in the future.

  • legacyId: ID!

    Legacy unique ID.

  • status: ApplicationStatus

    The status of the application.


MerchantAccountConnection

A paginated list of merchant accounts.

fields:

MerchantAccountConnectionEdge

A merchant account within a MerchantAccountConnection.

fields:
  • cursor: String

    This merchant account's location within the MerchantAccountConnection. Used for requesting additional pages.

  • node: MerchantAccount

    The merchant account.


MerchantAccountThreeDSecureConfiguration

Details about the 3D Secure configuration of the merchant account.

fields:

MerchantAccountThreeDSecureVersionConfiguration

Details about the configuration of a version of 3D Secure for the merchant account.

fields:

MerchantAdviceCodeResponse

The Merchant Advice Code response, this field can provide to merchants the reason for declining a recurring payment transaction, and the actions merchants can take to continue to serve their recurring payment customers.

fields:

MetaCheckoutConfiguration

Configuration for Meta Checkout.

fields:
  • partnerId: String

    The Meta Checkout partner id.

  • partnerMerchantId: String

    The merchant identifier that must be supplied to Meta when onboarding a merchant for Meta Checkout.

  • supportedContainers: [String!]

    A list of supported container types for Meta Checkout.

  • acquirerCountryCode: String

    The acquirer country code used for Meta Checkout.


MetaCheckoutOriginDetails

Additional information about the payment method specific to Meta Checkout.

fields:
  • containerId: String

    A Meta assigned identifier for the transaction.

  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


MonetaryAmount

A monetary amount with currency.

fields:
  • value: Amount

    The amount of money, either a whole number or a number with up to 3 decimal places.

  • currencyIsoCode: CurrencyCodeAlpha

    The ISO code for the money's currency.

  • currencyCode: CurrencyCodeAlpha

    The currency code for the monetary amount.


NetworkTokenOriginDetails

Additional information about the payment method specific to Network Token.

fields:
  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


NonPciFinancialCardMagneticStripeData

Financial card data from its magnetic stripe, read by an in-store reader.

fields:

OAuthApplication

Information about an OAuth Application.

fields:
  • clientId: String

    The unique identifier of the OAuth application.

  • name: String

    The name of the OAuth application.


OAuthClientSecret

OAuth Client Secret details.

fields:
  • maskedSecret: String

    Masked client secret value.

  • disabled: Boolean

    True if secret is disabled.


PageInfo

The page information for a connection.

fields:
  • hasNextPage: Boolean!

    Whether or not there is a next page available.

  • hasPreviousPage: Boolean!

    Always false; backwards pagination is not supported. Present to comply with Relay specifications.

  • startCursor: String

    The cursor for the first item in the connection page.

  • endCursor: String

    The cursor for the last item in the connection page.


ParentAuthorization

An original authorization's relationship to all its partial capture transactions.

fields:
  • childCaptures: [Transaction!]

    The captures on a partially captured authorization.

  • totalAmountAuthorized: MonetaryAmount

    The total amount authorized by this transaction. This amount will not change as this transaction is partially captured.


PartialCaptureTransactionPayload

Top-level output field from partially capturing a transaction.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • capture: Transaction

    The transaction representing the partial capture.


PayPalAccountDetails

Details about a PayPal account.

fields:
  • billingAgreementId: String

    The ID of the billing agreement for this PayPal account.

  • billingAddress: Address

    The billing address associated with the PayPal account.

  • shippingAddress: Address

    The shipping address associated with the PayPal account.

  • email: String

    The email address associated with the PayPal account.

  • phone: String

    The primary phone number associated with the PayPal account.

  • payerId: String

    The PayPal ID of the PayPal account.

  • firstName: String

    The first name on the PayPal account.

  • lastName: String

    The last name on the PayPal account.

  • cobrandedCardLabel: String

    The label of the co-branded card used as a funding source.

  • origin: PaymentMethodOrigin

    Additional information if the PayPal account was provided from a third-party origin, such as Apple Pay, Google Pay, or another digital wallet.

  • limitedUseOrderId: String

    Limited use PayPal provided Order ID (starts with O-).

  • selectedFinancingOption: SelectedPayPalFinancingOptionDetails

    Payer's selected financing option at the time of creating a transaction.


PayPalConfiguration

Configuration for PayPal.

fields:
  • displayName: String

    The merchant's company name for displaying to customers in the PayPal UI.

  • clientId: String

    The merchant's PayPal client ID.

  • privacyUrl: String

    The merchant's privacy policy URL.

  • userAgreementUrl: String

    The merchant's user agreement URL.

  • assetsUrl: String

    A URL pointing to the base path of Braintree's web pages used for various browser switches and popups.

  • environment: PayPalEnvironment

    The PayPal environment.

  • environmentNoNetwork: Boolean

    For internal use only.

  • unvettedMerchant: Boolean

    Whether or not the merchant has been vetted.

  • braintreeClientId: String

    Braintree's PayPal client ID.

  • billingAgreementsEnabled: Boolean

    Whether billing agreements are enabled and should be used instead of future payments.

  • merchantAccountId: String

    The merchant account being used. This affects the currency code and other options.

  • currencyCode: CurrencyCodeAlpha

    The currency code to use.

  • payeeEmail: String

    The email address of the PayPal account that will receive the funds when a transaction is created.

  • directBaseUrl: String

    For internal use only.


PayPalFinancingOption

PayPal financing options available for a transaction.

fields:

PayPalFinancingOptionsPayload

PayPal financing options response payload.

fields:

PayPalLocalPaymentOriginDetails

Additional information about the local payment method specific to PayPal.

fields:
  • captureId: String

    If funds for the transaction have settled, the PayPal ID for the capture of funds.

  • customField: String

    A string of field/value pairs passed directly to PayPal.

  • paymentId: String

    The identification value of the payment within PayPal's API.

  • transactionFee: MonetaryAmount

    The fee charged by PayPal for the transaction.

  • blikAliases: [LocalPaymentBlikAlias!]

    List of BLIK aliases for BLIK OneClick type of local payment.


PayPalLocalPaymentRefundDetails

PayPal local payment specific refund details.

fields:
  • refundId: String

    The PayPal refund ID.

  • refundedFee: MonetaryAmount

    Refunded transaction fee charged by PayPal.


PayPalQualifyingFinancingOption

PayPal qualifying financing options for a product.

fields:
  • apr: Percentage

    APR percentage.

  • nominalRate: Percentage

    Nominal rate percentage.

  • term: Int

    Total number of payments over which to finance the transaction.

  • intervalDuration: Duration

    The duration between each interval or payment.

  • countryCode: CountryCodeAlpha2

    The country or region for the financing option.

  • creditType: PayPalFinancingOptionCreditType

    Credit type.

  • minimumAmount: MonetaryAmount

    The minimum qualifying amount for a transaction.

  • monthlyInterestRate: Percentage

    The monthly interest rate for this financing option.

  • periodicPayment: MonetaryAmount

    The amount for transaction periodic payments.

  • monthlyPayment: MonetaryAmount

    The amount for transaction monthly payments.

  • discountAmount: MonetaryAmount

    The discount amount on the transaction for this financing option.

  • discountPercentage: Percentage

    The discount percentage for this financing option.

  • totalInterest: MonetaryAmount

    The total interest cost for this financing option.

  • totalCost: MonetaryAmount

    The total amount for the transaction, including interest.

  • paypalSubsidized: Boolean

    Indicates whether the financing option's credit fee is funded by PayPal.


PayPalRefundDetails

PayPal-specific refund details.

fields:
  • refundId: String

    The PayPal refund ID.

  • refundedFee: MonetaryAmount

    Refunded transaction fee charged by PayPal.

  • description: String

    The description of this refund.

  • reason: String

    The reason this refund was created.


PayPalTransactionDetails

PayPal-specific details on a transaction.

fields:
  • authorizationId: String

    If the transaction was successfully authorized, the PayPal ID for the authorization.

  • captureId: String

    If funds for the transaction have settled, the PayPal ID for the capture of funds.

  • customField: String

    A string of field/value pairs passed directly to PayPal.

  • payer: PayPalAccountDetails

    Details about the payer or owner of the PayPal account.

  • payee: PayPalAccountDetails

    Details about the PayPal account that received the funds.

  • payerStatus: String

    Whether or not the PayPal account has been verified by PayPal.

  • paymentId: String

    The identification value of the payment within PayPal's API.

  • refundId: String

    If the transaction is a refund, the PayPal refund ID.

  • sellerProtectionStatus: String

    Whether or not the transaction qualifies for PayPal Seller Protection.

  • taxId: String

    Payer's tax ID. Only returned for payments from Brazilian accounts.

  • taxIdType: String

    Payer's tax ID type. Only returned for payments from Brazilian accounts. Allowed values BR_CPF or BR_CNPJ.

  • transactionFee: MonetaryAmount

    The fee charged by PayPal for the transaction.

  • transactionFeeAmount: String

    The fee charged by PayPal for the transaction.

  • transactionFeeCurrencyIsoCode: String

    The currency code for the currency of the PayPal transaction fee.

  • description: String

    Description of the transaction that is displayed to customers in PayPal email receipts.

  • origin: PaymentMethodOrigin

    Additional information if the credit card was provided from a third-party origin, such as Google Pay.

  • selectedFinancingOption: SelectedPayPalFinancingOptionDetails

    Buyer selected financing option at the time of creating a transaction.

  • appUsedForScanning: PayPalRetailAppUsedForScanning

    The application used by the payer to scan the QR code.


PayPalTransactionPayload

Top-level output field from creating a PayPal transaction.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transaction: Transaction

    The transaction representing the charge on the payment method.

  • billingAgreementWithPurchasePaymentMethod: PaymentMethod

    If the paymentMethodId passed to this mutation was a single-use PayPal payment method created with the Billing Agreement with Purchase flow, then this field will be populated with a multi-use PayPal payment method created alongside the transaction. Otherwise, this will be null.


PaymentConnection

A paginated list of transactions and refunds.

fields:

PaymentConnectionEdge

A transaction or refund within a PaymentConnection.

fields:
  • cursor: String

    This transaction or refund's location within the PaymentConnection. Used for requesting additional pages.

  • node: Payment

    The transaction or refund.


PaymentLevelFeeReport

The payment-level fee report (formerly known as the transaction-level fee report) provides a breakdown of fees per individual payments (encompassing transactions and refunds).

fields:
  • url: String

    The URL where the generated report is stored. Download the report from this URL.


PaymentMethod

Top-level field representing a payment method.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier. May be the same as ID for single-use payment methods.

  • usage: PaymentMethodUsage

    Whether a payment method may be used only once or multiple times.

  • createdAt: Timestamp

    Date and time when the payment method was vaulted.

  • details: PaymentMethodDetails

    Details about the payment method specific to the type (e.g. credit card, PayPal account).

  • verifications: VerificationConnection

    A paginated list of verifications that have been run against the payment method.

  • customer: Customer

    The customer that the payment method belongs to.


PaymentMethodConnection

A paginated list of payment methods.

fields:

PaymentMethodConnectionEdge

A payment method within a PaymentMethodConnection.

fields:
  • cursor: String

    This payment method's location within the PaymentMethodConnection. Used for requesting additional pages.

  • node: PaymentMethod

    The payment method.


PaymentMethodOrigin

Information about how the customer provided a payment method, such as via a digital wallet.

fields:

PaymentNetworkResponse

The network response. When present, this field can provide additional detail about why an authorization or verification was declined, but the processorResponse should be considered the source of truth.

fields:

PaypalLineItem

Line items for a PayPal payment.

fields:
  • name: String

    Item name. Maximum 127 characters.

  • quantity: Int

    Number of units of the item purchased. This value can't be negative or zero.

  • unitAmount: Amount

    Per-unit price of the item. Can include up to 2 decimal places. This value can't be negative or zero.

  • type: TransactionLineItemType

    Indicates whether the line item is a debit (sale) or credit (refund or discount) to the customer.

  • description: String

    Item description. Maximum 127 characters.

  • productCode: String

    Product or UPC code for the item. Maximum 127 characters.

  • unitTaxAmount: Amount

    Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero. If this is a line item for a Venmo transaction, this value can be zero.

  • url: URL

    The URL to product information.

  • imageUrl: URL

    URL to an image that represents the product. Max 1024 characters.

  • upc: LineItemUpc

    UPC of the line item.


PerformThreeDSecureLookupPayload

Top-level fields returned when performing a 3D Secure Lookup.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • threeDSecureLookupData: ThreeDSecureLookupData

    Data fields containing information from the MPI provider about the 3D Secure Lookup result.

  • paymentMethod: PaymentMethod

    A single-use payment method.


ProcessorDeclinedEvent

Accompanying information for a processor declined transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was declined by the processor.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • declineType: ProcessorDeclineType

    Whether or not the decline is the result of a temporary issue.

  • processorResponse: TransactionAuthorizationProcessorResponse

    Fields describing the payment processor response and why they declined the transaction.

  • networkResponse: PaymentNetworkResponse

    Fields describing the network response to the authorization request.

  • merchantAdviceCodeResponse: MerchantAdviceCodeResponse

    Fields describing the merchant advice code response to the authorization request.

  • riskDecision: RiskDecision

    Risk decision for this transaction.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


Product

Represents a product that may be enabled.

fields:

ProductRequestPayload

Payload for requesting access to a product.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • productCode: ProductCode

    Code of product to be requested.


Refund

A refund of a charge on a payment method, representing an attempt to send money from a previous transaction back to the customer.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time when the refund was created.

  • amount: MonetaryAmount

    The amount that will be refunded, which can be less than or equal to the original charge amount.

  • orderId: String

    The order ID for this refund. For PayPal transactions, the PayPal Invoice ID.

  • status: PaymentStatus

    The current status of this refund.

  • statusHistory: [PaymentStatusEvent!]

    The records of all statuses this refund has passed through, with additional information on why each status occurred. Returned in reverse chronological order, with the most recent event first in the list.

  • details: RefundPaymentMethodDetails

    Payment method specific details about the refund.

  • merchantAccountId: ID

    The ID of the merchant account that processed this refund.

  • source: PaymentSource

    How the refund was created.

  • refundedTransaction: Transaction

    The original transaction that this refunds. If this is not present, then this refund represents a refund of a transaction that does not belong to this Braintree gateway account.

  • paymentMethodSnapshot: PaymentMethodSnapshot

    Snapshot of payment method details that will receive the refund, typically based on the original transaction. This will always be present. Equivalent to refundedTransaction.paymentMethodSnapshot.

  • paymentMethod: PaymentMethod

    The multi-use payment method that will receive the refund. Only present if a multi-use payment method was used to create the original transaction and it has not been since deleted. The details of this PaymentMethod may have changed since the transaction was created; details used for the transaction can be found in the paymentMethodSnapshot field. Equivalent to refundedTransaction.paymentMethod (if present).

  • customer: Customer

    The customer that the vaulted payment method (if it exists) belongs to. Equivalent to refundedTransaction.customer (if present).

  • lineItems: [TransactionLineItem!]

    Line items for this refund.

  • customFields: [CustomField!]

    Collection of custom field/value pairs passed when creating the refund. Custom fields are defined in the Control Panel. For all refunds except "detached refunds", these will always be null.

  • descriptor: TransactionDescriptor

    Fields used to define what will appear on a customer's statement (for instance, credit card or bank statement) for this refund. This will always match the descriptor from the refunded transaction (if present).

  • disbursementDetails: DisbursementDetails

    The disbursement details associated with this refund. This field is only available after the refund is SETTLED and if you have an eligible merchant account.

  • paymentInitiatedAt: Timestamp

    The refund date and time as reported by the in-store payment terminal.


RefundConnection

A paginated list of refunds.

fields:

RefundConnectionEdge

A transaction within a RefundConnection.

fields:
  • cursor: String

    This refund's location within the RefundConnection. Used for requesting additional pages.

  • node: Refund

    The refund.


RefundCreditCardPayload

Top-level output field from creating a detached refund for a credit card.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • refund: Refund

    The information about the created refund.


RefundTransactionPayload

Top-level output field from refunding a transaction.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • refund: Refund

    The information about the created refund.


RefundUsBankAccountPayload

Top-level output field from creating a detached refund for a US Bank Account.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • refund: Refund

    The information about the created refund.


Report

Top-level fields returned for a report query.

fields:

RequestAmountPromptInStoreContext

Reference object for an in-store reader amount prompt.

fields:
  • id: ID!

    A unique ID for this amount prompt request.

  • reader: InStoreReader

    The reader from which the amount prompt was requested.

  • status: InStoreContextStatus!

    The status of the context created when the amount prompt was requested.

  • amountPromptResult: Amount

    The amount collected by the in-store reader.


RequestAuthorizeInStoreContext

Reference object for an in-store authorize request.

fields:

RequestChargeInStoreContext

Reference object for an in-store charge request.

fields:

RequestConfirmationPromptInStoreContext

Reference object for an in-store reader confirmation prompt.

fields:
  • id: ID!

    A unique ID for this confirmation prompt request.

  • reader: InStoreReader

    The reader from which the confirmation prompt was requested.

  • status: InStoreContextStatus!

    The status of the context created when the confirmation prompt was requested.

  • confirmed: Boolean

    The confirmation response collected by the in-store reader.


RequestDisplayInStoreContext

Reference object for an in-store display request.

fields:
  • id: ID!

    A unique ID for this display request.

  • reader: InStoreReader

    The reader from which the display was requested.

  • status: InStoreContextStatus!

    The status of the context created when the display was requested.


RequestFirmwareUpdateInStoreContext

Reference object for an in-store reader firmware update.

fields:
  • id: ID!

    A unique ID for this firmware update request.

  • reader: InStoreReader

    The reader for which the firmware update was requested.

  • status: InStoreContextStatus!

    The status of the context created when the firmware update was requested.


RequestMultiChoiceSingleSelectPromptInStoreContext

Reference object for an in-store reader multi-choice single-select prompt.

fields:
  • id: ID!

    A unique ID for this multi-choice single-select prompt request.

  • reader: InStoreReader

    The reader from which the multi-choice single-select prompt was requested.

  • status: InStoreContextStatus!

    The status of the context created when the multi-choice single-select prompt was requested.

  • selections: [Int!]

    A list of choices where '1' signifies selected choices and '0' indicates unselected choices. The original ordering is maintained from the input.


RequestNonPciCardDataInStoreContext

Reference object for an in-store reader non PCI-scoped card data request.

fields:
  • id: ID!

    A unique ID for this card data request.

  • reader: InStoreReader

    The reader from which the card data was requested.

  • status: InStoreContextStatus!

    The status of the context created when the card data was requested.

  • cardData: NonPciCardData

    The non-pci data read from the card by the in-store reader.


RequestPrintInStoreContext

Reference object for an in-store reader print content.

fields:

RequestRefundInStoreContext

Reference object for an in-store refund request.

fields:
  • id: ID!

    A unique ID for this refund request.

  • reader: InStoreReader

    The reader from which the refund was requested.

  • status: InStoreContextStatus!

    The status of the context created when the refund was requested. A status of COMPLETE does not indicate a successful payment.

  • refund: Refund

    The refund representing the refund on the payment method.


RequestSignaturePromptInStoreContext

Reference object for an in-store reader signature prompt.

fields:
  • id: ID!

    A unique ID for this signature prompt request.

  • reader: InStoreReader

    The reader from which the signature prompt was requested.

  • status: InStoreContextStatus!

    The status of the context created when the signature prompt was requested.

  • signatureData: String

    The signature data collected by the in-store reader. Base64 encoded PNG image.


RequestTextPromptInStoreContext

Reference object for an in-store reader text prompt.

fields:
  • id: ID!

    A unique ID for this text prompt request.

  • reader: InStoreReader

    The reader from which the text prompt was requested.

  • status: InStoreContextStatus!

    The status of the context created when the text prompt was requested.

  • inputType: InStoreReaderTextPromptType

    The input types available for user input.

  • textPromptResult: String

    The text collected by the in-store reader.


RequestVaultInStoreContext

Reference object for an in-store vault request.

fields:
  • id: ID!

    A unique ID for this vault request.

  • reader: InStoreReader

    The reader from which the vault was requested.

  • status: InStoreContextStatus!

    The status of the context created when the vault was requested.

  • paymentMethod: PaymentMethod

    A payment method that has been stored in a merchant's vault and can be reused.

  • verification: Verification

    The verification that was run on the payment method prior to vaulting.


ReverseTransactionPayload

Top-level output field for reversing a transaction.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • reversal: TransactionReversal

    A transaction (if the original transaction was voided) or refund (if the original transaction was refunded). A reversal will attempt to void the original transaction if it has not yet settled. If the original transaction has settled, a reversal will create a refund for the full amount.


Right

A right assigned to a user.

fields:
  • name: String

    A human-readable name.


RiskData

Data from advanced risk evaluations.

fields:
  • id: ID

    Unique identifier.

  • decision: RiskDecision

    The risk decision on whether the transaction should be permitted.

  • decisionReasons: [String!]

    The reasons for the decision from the fraud service provider.

  • deviceDataCaptured: Boolean

    Whether data associated with the customer's device was captured and used in the decision process.

  • fraudServiceProvider: FraudServiceProvider

    The fraud service provider used to generate the risk decision.

  • liabilityShift: LiabilityShift

    Liability Shift information in the event of a chargeback.

  • score: Int

    The numeric risk score assigned by the fraud service provider.


Role

Groups of rights assigned to the user.

fields:
  • id: ID!

    Unique identifier.

  • name: String

    A human-readable name.

  • isAccountAdmin: Boolean

    Whether the role grants account admin status.

  • rights: [Right!]

    The rights associated with the role.


SEPADirectDebitAccountDetails

Details about a SEPA Direct Debit account.

fields:
  • merchantOrPartnerCustomerId: String

    Merchant or Partner Customer ID.

  • last4: String

    Last 4 characters of IBAN number.

  • bankReferenceToken: String

    Bank reference token.

  • mandateType: MandateType

    Mandate type.


SEPADirectDebitRefundDetails

Refund-related details for SEPA Direct Debit transactions.

fields:
  • refundId: ID

    The SEPA Direct Debit refund ID.

  • refundedFee: MonetaryAmount

    Refunded transaction fee charged by SEPA Direct Debit.

  • paymentId: String

    PayPal V2 OrderId.


SEPADirectDebitTransactionDetails

Details about a SEPA Direct Debit account.

fields:
  • captureId: String

    If funds for the transaction have settled, the PayPal ID for the capture of funds.

  • transactionFee: MonetaryAmount

    The fee charged by PayPal for the transaction.

  • paymentId: String

    PayPal V2 OrderId.


SamsungPayCardDetails

Deprecated: Samsung pay is no longer supported.

Details about a Samsung Pay card.

fields:
  • brand: String

    The display name of the card brand, e.g. "Visa" or "American Express".

  • brandCode: CreditCardBrandCode

    A static code identifying the card brand of the FPAN (the customer's actual backing card).

  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN will differ from the BIN of the source (customer's actual) card.

  • binData: BinRecord

    Information about the card based on its BIN. This BIN will differ from the BIN of the source (customer's actual) card.

  • sourceCardLast4: CreditCardLast4

    The last four digits of the FPAN (the customer's actual backing card).


SamsungPayConfiguration

Deprecated: Samsung Pay is no longer supported.

Configuration for Samsung Pay on Android.

fields:
  • displayName: String

    A string used to identify the merchant to the customer.

  • environment: SamsungPayEnvironment

    The Samsung Pay environment.

  • serviceId: String

    The Samsung Pay service ID.

  • samsungAuthorization: String

    Authorization to use when tokenizing Samsung Pay.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Samsung Pay.


SamsungPayOriginDetails

Deprecated: Samsung pay is no longer supported.

Additional information about the payment method specific to Samsung Pay.

fields:
  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


SelectedPayPalFinancingOptionDetails

Details about a selected financing option by a PayPal buyer.

fields:
  • term: Int

    Total number of payments over which to finance the transaction.

  • monthlyPayment: MonetaryAmount

    The amount for each monthly payment.

  • discountPercentage: Percentage

    The percent discount off the total transaction amount due to the selected financing option.

  • discountAmount: MonetaryAmount

    The amount reduced from the total transaction amount.


SettledEvent

Accompanying information for a settled transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was settled.

  • amount: MonetaryAmount

    The amount the transaction was settled for, in the same currency as the original authorization (aka the "presentment" currency.) If you have elected to settle the transaction into a bank account with a different currency, this will not reflect that.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionSettlementProcessorResponse

    Fields describing the payment processor response.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • settlementBatchId: String

    The ID of the settlement batch in which the transaction was processed.


SettlementConfirmedEvent

Accompanying information for a settlement confirmed transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction became settlement confirmed.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionSettlementProcessorResponse

    Fields describing the payment processor response to the settlement request.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.


SettlementDeclinedEvent

Accompanying information for a settlement declined transaction.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the processor declined to settle this transaction.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionSettlementProcessorResponse

    Fields describing the payment processor response to the settlement request.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.


SettlementPendingEvent

Accompanying information for a settlement pending transaction. This typically only occurs for PayPal transactions.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction became settlement pending.

  • amount: MonetaryAmount

    The amount of the transaction for this status event.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • processorResponse: TransactionSettlementProcessorResponse

    Fields describing the payment processor response to the settlement request.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


SettlingEvent

Accompanying information for a transaction that is settling. This is typically a transient state during which the transaction is being settled with the processor.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction began settling.

  • amount: MonetaryAmount

    The amount of the transaction for this status event. This should match the amount submitted for settlement.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.


SubmittedForSettlementEvent

Accompanying information for a transaction that is submitted for settlement. This status indicates that the transaction is scheduled to be settled.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was submitted for settlement.

  • amount: MonetaryAmount

    The amount that was submitted for settlement. This can differ from the authorized amount, but by default is the same.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


ThreeDSecureAuthentication

Information about the 3D Secure authentication for a payment method.

fields:
  • cavv: String

    The cardholder authentication verification value. This value should be appended to the authorization message signifying that the transaction has been successfully authenticated with 3D Secure. This value will be encoded according to the merchant's configuration with CardinalCommerce, with either Base64 or Hex encoding. The decoded value will be of different length and format per card scheme.

  • directoryServerTransactionId: String

    A unique identifier for the 3D Secure interaction with the card brand directory server.

  • eciFlag: ECommerceIndicator

    The electronic commerce indicator.

  • liabilityShifted: Boolean

    A boolean indicating if the card has received liability shift.

  • liabilityShiftPossible: Boolean

    A boolean indicating if the card is eligible for liability shift.

  • cardEnrolled: ThreeDSecureCardEnrolled

    Indicates whether the card is enrolled in a 3D Secure program.

  • authenticationStatus: ThreeDSecureAuthenticationStatus

    The 3D Secure authentication status of the card.

  • version: String

    The version of the 3D Secure protocol used during authentication.

  • xId: String

    A unique identifier for the 3D Secure interaction with the provider.

  • threeDSecureServerTransactionId: String

    A unique identifier for the 3D Secure interaction with the 3D Secure server.

  • acsTransactionId: String

    A unique identifier for the 3D Secure interaction with the access control server.

  • paresStatus: ThreeDSecureAuthenticationStatusIndicator

    Indicates the current status of the 3D Secure authentication from the 3D Secure server for 3D Secure 1.0 authentications.

  • transactionStatus: ThreeDSecureAuthenticationStatusIndicator

    Indicates the current status of the 3D Secure authentication from the 3D Secure server for 3D Secure 2.0 authentications.

  • transactionStatusReason: String

    Indicates the reason for the transaction status. This will be null if status is SUCCESSFUL_AUTHENTICATION.


ThreeDSecureConfiguration

Configuration for 3D Secure.

fields:
  • cardinalAuthenticationJWT: String

    Authentication information for initializing Cardinal's songbird.js library.


ThreeDSecureDetails

3D Secure information for the payment method.

fields:
  • authentication: ThreeDSecureAuthentication

    Contains relevant data fields if the payment method has been authenticated using 3D Secure. Only available on 3D Secure authenticated single-use payment methods and 3D Secure paymentMethodSnapshots.

  • authenticationInsight: AuthenticationInsight

    Information about the customer authentication regulation environment that applies to the payment method when processed with the provided merchant account. This can be used to determine whether to perform 3D Secure authentication.

  • cavv: String

    The cardholder authentication verification value. This value should be appended to the authorization message signifying that the transaction has been successfully authenticated with 3D Secure. This value will be encoded according to the merchant's configuration with CardinalCommerce, with either Base64 or Hex encoding. The decoded value will be of different length and format per card scheme.

  • directoryServerTransactionId: String

    A unique identifier for the 3D Secure interaction with the card brand directory server.

  • eciFlag: ECommerceIndicator

    The electronic commerce indicator.

  • liabilityShifted: Boolean

    A boolean indicating if the card has received liability shift.

  • liabilityShiftPossible: Boolean

    A boolean indicating if the card is eligible for liability shift.

  • cardEnrolled: ThreeDSecureCardEnrolled

    Indicates whether the card is enrolled in a 3D Secure program.

  • authenticationStatus: ThreeDSecureAuthenticationStatus

    The 3D Secure authentication status of the card.

  • version: String

    The version of the 3D Secure protocol used during authentication.

  • xId: String

    A unique identifier for the 3D Secure interaction with the provider.

  • threeDSecureServerTransactionId: String

    A unique identifier for the 3D Secure interaction with the 3D Secure server.

  • acsTransactionId: String

    A unique identifier for the 3D Secure interaction with the access control server.

  • paresStatus: ThreeDSecureAuthenticationStatusIndicator

    Indicates the current status of the 3D Secure authentication from the 3D Secure server for 3D Secure 1.0 authentications.

  • transactionStatus: ThreeDSecureAuthenticationStatusIndicator

    Indicates the current status of the 3D Secure authentication from the 3D Secure server for 3D Secure 2.0 authentications.

  • transactionStatusReason: String

    Indicates the reason for the transaction status. This will be null if status is SUCCESSFUL_AUTHENTICATION.


ThreeDSecureLookupData

Data fields containing information from the MPI provider about the 3D Secure Lookup result.

fields:
  • acsUrl: String

    The URL to use to issue a challenge to the cardholder for 3D Secure authentication.

  • authenticationId: String

    Braintree unique ID of the 3D Secure authentication performed for this transaction. You will only need to use this field if you are charging or authorizing a vaulted payment method ID.

  • version: String

    The version of the 3D Secure protocol used in the authentication.

  • pareq: String

    The "PAReq" or "Payment Authentication Request" is the encoded request message used to initiate authentication.

  • md: String

    The unique 3D Secure identifier assigned by Braintree to track the 3D Secure call as it progresses.

  • termUrl: String

    A fully qualified URL that the customer will be redirected to once the authentication completes.

  • transactionId: String

    A unique identifier used by the MPI provider to identify the 3D Secure interaction. The MPI provider provides the framework for determining if a card is enrolled in a 3D Secure program and for facilitating interactions with the issuer.


TokenizeCreditCardPayload

Top-level fields returned from a tokenized credit card.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • token: String

    A one-time-use reference to tokenized sensitive information.

  • creditCard: CreditCardDetails

    Details about the tokenized card.

  • singleUseToken: PaymentMethod

    A single-use payment method.

  • paymentMethod: PaymentMethod

    A single-use payment method.

  • authenticationInsight: AuthenticationInsight

    Information about the customer authentication regulation environment that applies to the payment method when processed with the provided merchant account. This can be used to determine whether to perform 3D Secure authentication.


TokenizeCustomActionsPaymentMethodPayload

Top-level fields returned from tokenizing a CustomActionsPaymentMethod.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizeCvvPayload

Top-level fields returned from a tokenized CVV.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • tokenizedCvv: TokenizedCvv

    A single-use tokenized CVV.

  • singleUseToken: PaymentMethod

    A single-use payment method representing just a CVV.


TokenizeNetworkTokenPayload

Top-level fields returned from a tokenized Network Token.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizePayPalBillingAgreementPayload

Top-level fields returned from a tokenized PayPal account.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizePayPalOneTimePaymentPayload

Top-level fields returned from a tokenized PayPal account.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizeSamsungPayCardPayload

Deprecated: Samsung pay is no longer supported.

Top-level fields returned from a tokenized Samsung Pay card.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • singleUseToken: PaymentMethod

    A one-time-use reference to tokenized sensitive information.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizeUsBankAccountPayload

Top-level fields returned from a tokenized US bank account.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.


TokenizedCvv

A single-use, tokenized value representing a CVV (card verification value), otherwise known as CSC or CVC. This cannot be charged or authorized, since it is not a payment method, but it can be used alongside a multi-use credit card payment method.

fields:
  • id: ID!

    Unique identifier for the tokenized CVV.


Transaction

A charge on a payment method.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • createdAt: Timestamp

    Date and time when the transaction was created.

  • paymentMethodSnapshot: PaymentMethodSnapshot

    Snapshot of payment method details used to create the transaction, preserved at the time the transaction was created. This will always be present.

  • paymentMethod: PaymentMethod

    The multi-use payment method associated with the transaction. Only present if a multi-use payment method was used to create the transaction and it has not been deleted. The details of this PaymentMethod may have changed since the transaction was created; details used for the transaction can be found in the paymentMethodSnapshot field.

  • amount: MonetaryAmount

    The amount charged in this transaction. For transactions that are partially captured, this amount will be the cummulative amount captured on this transaction. For transactions that are partially authorized, the amount will be less than the initialRequestedAuthorizationAmount.

  • initialRequestedAuthorizationAmount: MonetaryAmount

    The initial requested authorization amount for this transaction.

  • customFields: [CustomField!]

    Collection of custom field/value pairs. Custom fields are defined in the Control Panel.

  • merchantId: String

    The ID of the merchant that processed this transaction.

  • merchantAccountId: ID

    The ID of the merchant account that processed this transaction.

  • merchantName: String

    The display name of the merchant that processed this transaction.

  • merchantAddress: Address

    The address of the merchant that processed this transaction.

  • orderId: String

    The order ID for this transaction. For PayPal transactions, the PayPal Invoice ID.

  • purchaseOrderNumber: String

    A purchase order identification value you associate with this transaction.

  • status: PaymentStatus

    The current status of this transaction.

  • processorResponse: TransactionAuthorizationProcessorResponse

    Fields describing the payment processor response.

  • riskData: RiskData

    Risk data evaluated for this transaction.

  • descriptor: TransactionDescriptor

    Fields used to define what will appear on customers' credit card statements for a specific purchase.

  • statusHistory: [PaymentStatusEvent!]

    The records of all statuses this transaction has passed through, with additional information on why each status occurred. Returned in reverse chronological order, with the most recent event first in the list.

  • channel: String

    If the transaction request was performed through a shopping cart provider or Braintree partner, this field will have a string identifier for that shopping cart provider or partner. For PayPal transactions, this maps to the PayPal account's bn_code.

  • source: PaymentSource

    How the transaction was created.

  • customer: Customer

    Customer associated with the transaction, if applicable.

  • shipping: TransactionShipping

    Shipping information.

  • tax: TransactionTaxInformation

    Tax information.

  • scaExemptionRequested: ScaExemptionType

    The type of Strong Customer Authentication Exemption that was requested for this transaction.

  • discountAmount: String

    Discount amount that was included in the total transaction amount.

  • surchargeAmount: String

    Surcharge amount that was included in the total transaction amount.

  • lineItems: [TransactionLineItem!]

    Line items for this transaction.

  • refunds: [Refund!]

    The list of refunds issued against this transaction.

  • partialCaptureDetails: PartialCaptureDetails

    For transactions created or captured using the partialCaptureTransaction mutation. This field links a given transaction to its original authorization or all its partial captures.

  • disputes: [Dispute!]

    A collection of disputes associated with the transaction.

  • facilitatorDetails: FacilitatorDetails

    If the transaction request was performed using payment information from a third party via the Grant API, Shared Vault or Google Pay, these fields will capture information about the third party. These fields are primarily useful for the merchant of record.

  • disbursementDetails: DisbursementDetails

    The disbursement details associated with this transaction. This field is only available after the transaction is SETTLED and if you have an eligible merchant account.

  • billingAddress: Address

    The billing address associated with the transaction.

  • authorizationAdjustments: [AuthorizationAdjustment!]

    A collection of AuthorizationAdjustments associated with the transaction.

  • retried: Boolean

    Whether or not the transaction was automatically retried by Braintree's internal systems.

  • retriedParentTransaction: Transaction

    If this transaction is an automatic retry of a previous, failed transaction, this is the parent transaction that was retried.

  • retriedTransactions: [Transaction!]

    If this transaction was automatically retried, this is a collection of all the retry transactions.

  • installmentDetails: TransactionInstallmentDetails

    Installment details associated with the transaction.

  • paymentInitiatedAt: Timestamp

    The transaction date and time as reported by the in-store payment terminal.

  • processingMode: ProcessingMode

    The processing mode of the transaction.

  • partiallyAuthorized: Boolean

    Indicates whether the transaction has been authorized for an amount lower than the requested amount.


TransactionAuthorizationAdjustmentProcessorResponse

Record of processor response data received in response to authorization adjustment requests.

fields:
  • legacyCode: String

    The processor response code indicating the result of attempting the adjustment.

  • message: String

    The text explanation of the processor response code.

  • declineType: ProcessorDeclineType

    Whether or not the decline is the result of a temporary issue. Only present if adjustment is declined.


TransactionAuthorizationProcessorResponse

Detailed response information from the processor when attempting to authorize a transaction.

fields:
  • legacyCode: String

    A code based on the response from the processor, indicating the result of attempting to authorize this transaction. See the list of possible processor response codes for authorization.

  • message: String

    The text explanation of the processor response legacyCode.

  • cvvResponse: AvsCvvResponseCode

    The processing bank's response to the provided CVV.

  • avsPostalCodeResponse: AvsCvvResponseCode

    The processing bank's response to the provided billing postal or zip code.

  • avsStreetAddressResponse: AvsCvvResponseCode

    The processing bank's response to the provided billing street address.

  • authorizationId: String

    The processor's unique ID or "code" for the authorization.

  • additionalInformation: String

    If present, any additional information recieved from the processor. May provide further insight into the legacyCode.

  • retrievalReferenceNumber: String

    The processor's reference number for the authorization.

  • emvData: String

    Response EMV data provided by the processor if this was an EMV transaction.


TransactionConnection

A paginated list of transactions.

fields:

TransactionConnectionEdge

A transaction within a TransactionConnection.

fields:
  • cursor: String

    This transaction's location within the TransactionConnection. Used for requesting additional pages.

  • node: Transaction

    The transaction.


TransactionDescriptor

Fields used to define what will appear on a customer's bank statement for a specific purchase.

fields:
  • name: String

    The value in the business name field of a customer's statement.

  • phone: String

    The value in the phone number field of a customer's statement.

  • url: String

    The value in the URL/web address field of a customer's statement.


TransactionInstallment

Transaction Installment information.

fields:
  • id: ID!

    Installment ID.

  • projectedDisbursementDate: Date

    The projected date for the funds associated with this installment to be disbursed.

  • actualDisbursementDate: Date

    The date that the funds associated with this installment were actually disbursed.

  • amount: Amount

    Installment amount.The total transaction amount is split equally into each installment.

  • adjustments: [TransactionInstallmentAdjustment!]

    List of adjustments associated with the installment.


TransactionInstallmentAdjustment

Adjustment information.

fields:
  • projectedDisbursementDate: Date

    The projected date for the funds associated with the adjustements to be disbursed.

  • actualDisbursementDate: Date

    The date that the funds associated with this adjustments were actually disbursed.

  • amount: Amount

    Adjustment amount for the installment.

  • type: TransactionInstallmentAdjustmentType!

    Transaction Installment Adjustment type.


TransactionInstallmentDetails

Installment details for the transaction.

fields:
  • count: String

    The installment count associated with the transaction.

  • installments: [TransactionInstallment!]

    List of installments associated with the transaction.


TransactionLevelFeeReport

The transaction-level fee report provides a breakdown of fees per individual transactions and refunds. This type is no longer in use; see PaymentLevelFeeReport instead.

fields:
  • url: String

    The URL where you can access the requested report.


TransactionLineItem

Data for individual line items on a transaction.

fields:
  • name: String

    Item name.

  • kind: TransactionLineItemType

    Indicates whether the line item is a sale or refund.

  • quantity: String

    Number of units of the item purchased.

  • unitAmount: String

    Per-unit price of the item.

  • totalAmount: String

    Total price amount for the line item, i.e. quantity multiplied by unit amount.

  • unitTaxAmount: String

    Per-unit tax price of the item.

  • taxAmount: String

    Tax amount for the line item.

  • discountAmount: String

    The discount amount of the line item.

  • unitOfMeasure: String

    The unit of measure or the unit of measure code.

  • productCode: String

    Product or UPC code for the item.

  • commodityCode: String

    Code used to classify items purchased and track the total amount spent across various categories of products and services. Different corporate purchasing organizations may use different standards, but the United Nations Standard Products and Services Code (UNSPSC) is frequently used.

  • description: String

    Item description.

  • url: String

    The URL to product information.

  • itemType: String

    The type of the line item, i.e., physical, digital etc.

  • imageUrl: String

    URL to an image that represents the product. Max 1024 characters.

  • upc: LineItemUpc

    UPC of the line item.


TransactionPackageTracker

Data for an individual package tracker on a PayPal transaction.

fields:
  • id: ID

    Unique identifier for the tracker.

  • trackingNumber: String

    Tracking number for this package.

  • carrier: String

    Shipping carrier.

  • paypalTrackerId: String

    PayPal assigned identifier for this tracker. This field may not be immediately available, but will be available when querying the transaction at a later time. This field is only available for PayPal transactions.


TransactionPayload

Top-level output field from creating a transaction.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • transaction: Transaction

    The transaction representing the charge on the payment method.


TransactionSettlementProcessorResponse

Detailed response information from the processor when attempting to settle a transaction.

fields:

TransactionShipping

Information related to shipping a physical product.

fields:
  • shippingAddress: Address

    Shipping address information.

  • shippingAmount: Amount

    The shipping cost of the entire transaction.

  • shipsFromPostalCode: String

    The postal code of the source shipping location.

  • shippingMethod: TransactionShippingMethod

    The shipping method.

  • packageTrackers: [TransactionPackageTracker!]

    Shipment package trackers for PayPal transactions.

  • shippingTaxAmount: Amount

    Shipping tax amount on the entire transaction.


TransactionTaxInformation

Information related to taxes on the transaction.

fields:
  • taxAmount: Amount

    The amount of tax that was included in the total transaction amount.

  • taxExempt: Boolean

    Whether the transaction should be considered eligible for tax exemption.


UnionPayConfiguration

Configuration for UnionPay cards.

fields:
  • merchantAccountId: String

    The Braintree merchant account ID with UnionPay processing enabled.


UpdateCreditCardBillingAddressPayload

Top-level fields returned when updating a multi-use credit card to a new billing address.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    The multi-use payment method which was updated.

  • billingAddress: Address

    The new billing address. Will be null if a failed verification prevented the update.

  • verification: Verification

    The verification that was run on the payment method prior to updating the billing address, if present.


UpdateCreditCardCardholderNamePayload

Top-level fields returned when updating a multi-use credit card to a new cardholder name.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.

  • verification: Verification

    The verification that was run on the payment method prior to updating the cardholder name, if present.


UpdateCreditCardExpirationDatePayload

Top-level fields returned when updating a multi-use credit card to a new expiration date.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A single-use payment method.

  • verification: Verification

    The verification that was run on the payment method prior to updating the expiration date, if present.


UpdateCustomFieldsPayload

Top-level output field from updating custom fields for a specific transaction or a refund.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customFields: [CustomField!]

    A list of all custom fields on the updated transaction or refund. Custom fields are defined in the Control Panel.


UpdateCustomerPayload

Top-level fields returned when updating a customer.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • customer: Customer

    Information about the customer that was updated.


UpdateInStoreLocationPayload

Top-level fields returned when updating an in-store location.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • location: InStoreLocation

    The in-store location.


UpdateTransactionCustomFieldsPayload

Deprecated: UpdateTransactionCustomFields mutation is no longer supported, please use UpdateCustomFields mutation instead. Top-level output field from updating custom fields for a specific transaction.

fields:

UsBankAccountAchMandate

Details about the customer's acceptance of ACH terms.

fields:
  • acceptanceText: String

    The text the customer agreed to when setting up ACH.

  • acceptedAt: Timestamp

    Date and time when the text terms were accepted.


UsBankAccountConfiguration

Configuration for US bank account processing.

fields:
  • routeId: String

    The route ID used to process a US bank account payment.

  • plaidPublicKey: String

    The public key for Plaid to use to log in to a bank account.


UsBankAccountDetails

Details about a US bank account.

fields:
  • accountholderName: String

    The name of the accountholder. This is either the business name for a business account, or the owner's full name for an individual account.

  • accountType: UsBankAccountType

    The bank account type.

  • ownershipType: UsBankAccountOwnershipType

    The ownership type of the account, i.e. business or personal.

  • bankName: String

    The name of the bank at which the account exists.

  • last4: String

    The last four digits of the bank account number.

  • routingNumber: String

    The routing number of the bank.

  • verified: Boolean

    Whether or not the bank account has been verified and can be transacted on.

  • achMandate: UsBankAccountAchMandate

    NACHA-mandated proof of acceptance of ACH terms.


UsBankAccountVerificationDetails

Information specific to verifications of US bank account payment methods.

fields:
  • method: UsBankAccountVerificationMethod

    Type of US bank account verification performed.

  • verificationDeterminedAt: Timestamp

    Time at which the verification was determined to be successful or not. If successful, at this time the payment method will be marked verified and you will be able to charge it.


User

Details about the user.

fields:

VaultPayPalBillingAgreementPayload

Top-level fields returned when importing and vaulting a PayPal Billing Agreement.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    The vaulted payment method containing the imported PayPal Billing Agreement.


VaultPaymentMethodPayload

Top-level output field from vaulting a payment method.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • paymentMethod: PaymentMethod

    A payment method that has been stored in a merchant's vault and can be reused.

  • verification: Verification

    The verification that was run on the payment method prior to vaulting.


VenmoAccountDetails

Details about a Venmo Account.

fields:
  • username: String

    The Venmo username, as chosen by the user.

  • venmoUserId: String

    The Venmo user ID.


VenmoConfiguration

Configuration for Pay with Venmo.

fields:
  • merchantId: String

    The Venmo merchant ID.

  • accessToken: String

    Authorization to use when tokenizing a Venmo payment method.

  • environment: VenmoEnvironment

    The Venmo environment.

  • enrichedCustomerDataEnabled: Boolean

    Indicates whether Enriched Customer Data is enabled for your merchant.


VenmoPayerInfo

Information about a payer's Venmo account.

fields:
  • firstName: String

    The payer's first name.

  • lastName: String

    The payer's last name.

  • phoneNumber: String

    The payer's phone number.

  • email: EmailAddress

    The payer's email address.

  • externalId: String

    The external ID of the payer's Venmo account.

  • userName: String

    The username of the payer's Venmo account.

  • billingAddress: Address

    The payer's billing address.

  • shippingAddress: Address

    The payer's shipping address.


VenmoPaymentContext

Fields returned from a Venmo payment context.

fields:
  • id: ID!

    The unique identifier.

  • merchantId: String

    The ID of the transacting merchant.

  • intent: VenmoIntent

    The intended payment flow this payment context was created with.

  • createdAt: Timestamp!

    Date and time when the payment context was created.

  • updatedAt: Timestamp!

    Date and time when the payment context was updated.

  • status: VenmoPaymentContextStatus

    The status of the payment context.

  • environment: VenmoEnvironment

    The Venmo environment this payment context was created in.

  • isFinalAmount: Boolean

    Indicates whether the purchase amount is the final amount.

  • expiresAt: Timestamp

    Date and time when the payment context expires.

  • paymentMethodId: ID

    The single-use Venmo account payment method ID.

  • clientSDKMetadata: ClientSDKMetadata

    Analytics data of the SDK where the QR code was scanned.

  • userName: String

    Deprecated: This field is included for supporting legacy clients. Please use payerInfo.userName instead.

    The username associated with the payment.

  • paymentMethodUsage: PaymentMethodUsage

    Whether the paymentMethodId may be used to make a one time payment (SINGLE_USE) or to create a vaulted multi-use payment token (MULTI_USE). This field will only be populated when the context was created by the createVenmoPaymentContext mutation, it will be null if the context was created by the deprecated createVenmoQRCodePaymentContext mutation.

  • customerClient: CustomerClient

    Client the customer used to initiate the transaction. This field will only be populated when the context was created by the createVenmoPaymentContext mutation, it will be null if the context was created by the deprecated createVenmoQRCodePaymentContext mutation.

  • merchantProfileId: ID

    An identifier representing the profile of the merchant used to initiate the transaction.

  • parentPaymentContextId: ID

    The unique identifier of the parent payment context. The presence of this field indicates that a customer has previously consented to all future purchases with this merchant, so they should not be asked again for this specific merchant.

  • displayName: String

    The sub-merchant display name shown on the Venmo app consent screen. This field will only be present for PayFast channel partner merchants.

  • payerInfo: VenmoPayerInfo

    Information about the payer's Venmo account.

  • paysheetDetails: VenmoPaysheetDetails

    Details about the information to be displayed on the paysheet.

  • returnUrl: URL

    URL for redirecting back to merchant app on the client.


VenmoPaymentContextPayload

Top-level fields returned when creating a Venmo payment context.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • venmoPaymentContext: VenmoPaymentContext

    The payment context object.


VenmoPaysheetDetails

Details about the information to be displayed on the Venmo paysheet.

fields:
  • collectCustomerBillingAddress: Boolean

    Indicates whether to collect a billing address from the customer on the paysheet.

  • collectCustomerShippingAddress: Boolean

    Indicates whether to collect a shipping address from the customer on the paysheet.

  • transactionDetails: VenmoPaysheetTransactionDetails

    The different amounts and line items belonging to the transaction.


VenmoPaysheetLineItem

Line items for a Venmo pay sheet.

fields:
  • name: String

    Item name. Maximum 127 characters.

  • quantity: Int

    Number of units of the item purchased. This value can't be negative or zero.

  • unitAmount: Amount

    Per-unit price of the item. Can include up to 2 decimal places. This value can't be negative or zero.

  • type: TransactionLineItemType

    Indicates whether the line item is a debit (sale) or credit (refund or discount) to the customer.

  • description: String

    Item description. Maximum 127 characters.

  • productCode: String

    Product or UPC code for the item. Maximum 127 characters.

  • unitTaxAmount: Amount

    Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero. If this is a line item for a Venmo transaction, this value can be zero.

  • url: URL

    The URL to product information.


VenmoPaysheetTransactionDetails

Details about the different amounts and line items belonging to a transaction.

fields:
  • subTotalAmount: Amount

    The subtotal amount of the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • taxAmount: Amount

    The tax amount of the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • discountAmount: Amount

    The total discount applied to the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • shippingAmount: Amount

    The shipping amount for the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • totalAmount: Amount

    The grand total amount of the transaction. Either a whole number or a number with two decimal places. Must be non-negative.

  • lineItems: [PaypalLineItem!]

    The list of line items belonging to the transaction. Can include up to 249 line items.

  • venmoPaysheetLineItems: [VenmoPaysheetLineItem!]

    The list of line items belonging to the Venmo pay sheet. Can include up to 249 line items.


Verification

A verification reporting whether the payment method has passed your fraud rules and the issuer has ensured it is associated with a valid account.

fields:
  • id: ID!

    Unique identifier.

  • legacyId: ID!

    Legacy unique identifier.

  • paymentMethodSnapshot: PaymentMethodSnapshot

    Snapshot of payment method details that were verified. This will always be present.

  • paymentMethod: PaymentMethod

    The multi-use payment method that was verified, if it was vaulted. The details of this PaymentMethod may have changed since it was verified.

  • amount: MonetaryAmount

    For a credit card, the amount used when performing the verification.

  • merchantAccountId: ID

    The merchant account used for the verification.

  • status: VerificationStatus

    The current status of this verification, indicating whether the verification was successful. Braintree recommends only vaulting payment methods that are successfully verified.

  • processorResponse: VerificationProcessorResponse

    Detailed response information from the processor. Will not be present if the verification was rejected prior to contacting the processor.

  • networkResponse: PaymentNetworkResponse

    Fields describing the network response to the verification request.

  • createdAt: Timestamp

    Date and time at which the verification was created.

  • gatewayRejectionReason: GatewayRejectionReason

    The reason the verification was rejected. This will only be set if status is GATEWAY_REJECTED.

  • riskData: RiskData

    Risk data evaluated for this verification.

  • paymentMethodVerificationDetails: VerificationDetails

    Details unique to the verification based on payment method type being verified.


VerificationConnection

A paginated list of verifications.

fields:

VerificationConnectionEdge

A verification within a VerificationConnection.

fields:
  • cursor: String

    The verification's location within the VerificationConnection. Used for requesting additional pages.

  • node: Verification

    The verification.


VerificationProcessorResponse

Detailed response information from the processor.

fields:
  • legacyCode: String

    The processor response code indicating the result of attempting the verification.

  • message: String

    The text explanation of the processor response code.

  • cvvResponse: AvsCvvResponseCode

    The processing bank's response to the provided CVV.

  • avsPostalCodeResponse: AvsCvvResponseCode

    The processing bank's response to the provided billing postal or zip code.

  • avsStreetAddressResponse: AvsCvvResponseCode

    The processing bank's response to the provided billing street address.

  • additionalInformation: String

    If present, any additional information recieved from the processor. May provide further insight into the legacyCode.


VerifoneVendor

Verifone specific in-store reader information.

fields:
  • model: String

    Model name or number of reader.

  • osVersion: String

    Current OS version running on the reader.

  • serialNumber: String

    Vendor-specific device serial number.


VerifyPaymentMethodPayload

Top-level output field from verifying a payment method.

fields:
  • clientMutationId: String

    An identifier used to reconcile requests and responses. 255 characters maximum.

  • verification: Verification

    The verification that was run on the payment method.


Viewer

Details about the user and merchant authenticated in this request.

fields:
  • id: ID

    Unique identifier.

  • email: String

    Email address.

  • status: UserStatus

    Current status.

  • name: String

    Full name.

  • roles: [Role!]

    Associated roles.

  • user: User

    Details about the authenticated user.

  • merchant: Merchant

    Details about the authenticated merchant.

  • rights: [Right!]

    Associated rights based on authentication.


VisaCheckoutConfiguration

Configuration for Visa Checkout.

fields:
  • apiKey: String

    The Visa Checkout API key.

  • encryptionKey: String

    The Visa Checkout encryption key.

  • externalClientId: String

    The Visa Checkout external client ID.

  • supportedCardBrands: [CreditCardBrandCode!]

    A list of card brands supported by the merchant for Visa Checkout.


VisaCheckoutOriginDetails

Additional information about the payment method specific to Visa Checkout.

fields:
  • callId: String

    The Visa assigned identifier for the transaction.

  • bin: String

    The first 6 digits of the credit card, known as the Bank Identification Number. This BIN may differ from the BIN of the customer's actual card.


VoidedEvent

Accompanying information for a transaction that has been voided.

fields:
  • status: PaymentStatus

    The new status of the transaction.

  • timestamp: Timestamp

    Date and time when the transaction was voided.

  • amount: MonetaryAmount

    The amount of the voided transaction. This should match the authorization amount.

  • source: PaymentSource

    The source for the transaction change to the new status.

  • terminal: Boolean

    Whether or not this is the final state for the transaction.

  • userName: String

    User name of the person who performed an action that triggered the status change of the transaction.


__Directive
fields:

__EnumValue
fields:

__Field
fields:

__InputValue
fields:

__Schema

A GraphQL Introspection defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, the entry points for query, mutation, and subscription operations.

fields:
  • description: String

  • types: [__Type!]

    A list of all types supported by this server.

  • queryType: __Type!

    The type that query operations will be rooted at.

  • mutationType: __Type

    If this server supports mutation, the type that mutation operations will be rooted at.

  • directives: [__Directive!]

    'A list of all directives supported by this server.

  • subscriptionType: __Type

    'If this server support subscription, the type that subscription operations will be rooted at.


__Type
fields:

Scalars

Amount

A monetary amount, either a whole number or a number with exactly two or three decimal places.


Boolean

Built-in Boolean


CVV

A three- or four-digit string CVV (card verification value), otherwise known as CSC or CVC.


CountryCode

An ISO 3166-1 alpha-2 country code. Braintree only accepts specific alpha-2 values. Clients using a Braintree version prior to 2021-02-01 should use an ISO 3166-1 alpha-3 country code.


CountryCodeAlpha2

An ISO 3166-1 alpha-2 country code. Braintree only accepts specific alpha-2 values.


CreditCardLast4

A four-digit string.


CreditCardNumber

A number that passes Luhn validation.


CurrencyCodeAlpha

An ISO 4217 alpha currency code. Braintree only accepts specific alpha values.


CustomFieldName

A string representing a custom field value. Contains letters, numbers, and underscores.


Date

A date in the format YYYY-MM-DD.


Duration

An ISO 8601 Duration that accepts Days, Hours, Minutes and Seconds.


ECommerceIndicator

A card brand-specific two-digit string describing the mode of the transaction.


EmailAddress

The internationalized email address.<blockquote><strong>Note:</strong> Up to 64 characters are allowed before and 255 characters are allowed after the <code>@</code> sign. However, the generally accepted maximum length for an email address is 254 characters. The pattern verifies that an unquoted <code>@</code> sign exists.</blockquote>

minLength: 3 maxLength: 254 pattern: <code>^.+@[^&quot;\-].+$</code>.


ExchangeRate

A value with more than one decimal place, representing an exchange rate between currencies. For example, 0.93014065558374. minLength: 3 pattern: <code>^\d+[.]\d+$</code>


Float

Built-in Float


Int

Built-in Int


Language

The language tag for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the ISO 639-2 language code, the optional ISO-15924 script tag, and the ISO-3166 alpha-2 country code. maxLength: 10 minLength: 2 pattern: <code>^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}))?$</code>


Month

A two-digit, zero-padded month.


Percentage

The percentage, as a fixed-point, signed decimal number. For example, define a 19.99% interest rate as 19.99.


String

Built-in String


ThreeDSecureCavvAlgorithm

A 3D Secure CAVV algorithm. Possible Values: 2 - CVV with ATN, 3 - Mastercard SPA algorithm.


ThreeDSecureStatusCode

A raw 3D Secure PARes or VARes response code (e.g. 'Y').


ThreeDSecureVersion

A 3D Secure authentication version. Must be composed of digits separated by periods (e.g. '1.0.2').


Timestamp

An ISO 8601 timestamp with microsecond precision, in UTC.


URL

A URL string pattern: <code>[a-zA-Z0-9+-.]://([-a-zA-Z0-9@:%._\+#=]{2,256}\.?[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.#?&//=]*))?</code>


UsBankAccountNumber

An account number containing 1-17 digits.


UsBankRoutingNumber

A routing number containing 8 or 9 digits.


UsZipCode

A US ZIP code. Supports DDDDD and DDDDD-DDDD formats.


Year

A four-digit year.


Unions

InStoreReaderVendor

A union of all possible in-store reader vendors.

Possible Types:

NonPciCardData

A union of all possible non PCI-scoped cards read from an in-store reader.


PartialCaptureDetails

A union of all possible relationships of transactions involved in partial captures. If the transaction has been partially captured, this links to all its partial capture children; if the transaction represents a partial capture attempt, this links to the original parent authorization.


PaymentMethodDetails

A union of all possible payment method details. PaymentMethodDetails contain information for display purposes, payment method management, and processing.


PaymentMethodOriginDetails

A union of all possible payment method origin details. PaymentMethodOriginDetails contain additional information specific to the third party the payment method was provided by.


PaymentMethodSnapshot

A union of all possible payment method details as they were used in a transaction or verification. PaymentMethodSnapshot preserves values used to create a given transaction or verify a payment method at that moment in time.


TransactionReversal

A union of all possible results of a transaction reversal. If the transaction is settled, a refund will be issued and a Refund object will be returned. Otherwise, the transaction will be voided and a Transaction object will be returned.

Possible Types:

VerificationDetails

A union of all possible verification details specific to the type of payment method being verified.