# CRUD: Retrieve a payment method Endpoint: GET /v1/object/payment-method/{id} Version: 2025-12-17 ## Header parameters: - `Accept-Encoding` (string) Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it. - `Content-Encoding` (string) Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload. - `Authorization` (string) The value is in the Bearer {token} format where {token} is a valid OAuth token generated by calling Create an OAuth token. - `Zuora-Entity-Ids` (string) An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you do not need to set this header. - `Zuora-Track-Id` (string) A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue. The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote ('). ## Query parameters: - `fields` (string) Object fields to return ## Path parameters: - `id` (string, required) Object id ## Response 200 fields (application/json): - `AccountId` (string) The ID of the customer account associated with this payment method. This field is not required for the account ID. - `AchAbaCode` (string) The nine-digit routing number or ABA number used by banks. Use this field for ACH payment methods. Character limit: 9 Values: a string of 9 characters or fewer - `AchAccountName` (string) The name of the account holder, which can be either a person or a company. Use this field for ACH payment methods. Character limit: 70 Values: a string of 70 characters or fewer - `AchAccountNumberMask` (string) This is a masked displayable version of the ACH account number, used for security purposes. For example: XXXXXXXXX54321. Use this field for ACH payment methods. Character limit: 32 Values: automatically generated - `AchAccountType` (string) The type of bank account associated with the ACH payment. Use this field for ACH payment methods. When creating an ACH payment method on Adyen, this field is required by Zuora but it is not required by Adyen. To create the ACH payment method successfully, specify a real value for this field if you can. If it is not possible to get the real value for it, specify any of the allowed values as a dummy value, Checking preferably. Character limit: 16 Values: - BusinessChecking - BusinnessSaving - Checking - Saving - `AchAddress1` (string) Line 1 for the ACH address. Required on create for the Vantiv payment gateway. Optional for other gateways. Character limit: Values: an address - `AchAddress2` (string) Line 2 for the ACH address. Required on create for the Vantiv payment gateway. Optional for other gateways. Character limit: Values: an address - `AchBankName` (string) The name of the bank where the ACH payment account is held. Use this field for ACH payment methods. When creating an ACH payment method on Adyen, this field is required by Zuora but it is not required by Adyen. To create the ACH payment method successfully, specify a real value for this field if you can. If it is not possible to get the real value for it, specify a dummy value. Character limit: 70 Values: a string of 70 characters or fewer - `Active` (boolean) Specifies whether a payment method is available in Zuora. This field is used to indicate if a payment method is loaded by the system or created by the customer. - true: System loaded payment method. - false: Customer created payment method. The default value is false. Character limit: 5 Values: true, false - `BankBranchCode` (string) The branch code of the bank used for direct debit. Character limit: 10 Values: string of 10 characters or fewer - `BankCheckDigit` (string) The check digit in the international bank account number, which confirms the validity of the account. Use this field for direct debit payment methods. Character limit: 4 Values: string of 4 characters or fewer - `BankCity` (string) The city of the direct debit bank. Use this field for direct debit payment methods. Character limit:70 Values: string of 70 characters or fewer - `BankCode` (string) The sort code or number that identifies the bank. This is also known as the sort code. This field is required for direct debit payment methods. Character limit: 18 Values: string of 18 characters or fewer - `BankIdentificationNumber` (string) The first six or eight digits of the payment method's number, such as the credit card number or account number. Banks use this number to identify a payment method. Character limit: 8 Values: string of 8 characters or fewer - `BankName` (string) The name of the direct debit bank. Use this field for direct debit payment methods. Character limit:80 Values: string of 80 characters or fewer - `BankPostalCode` (string) The zip code or postal code of the direct debit bank. Use this field for direct debit payment methods. Character limit:20 Values: string of 20 characters or fewer - `BankStreetName` (string) The name of the street of the direct debit bank. Use this field for direct debit payment methods. Character limit:60 Values: string of 60 characters or fewer - `BankStreetNumber` (string) The number of the direct debit bank. Use this field for direct debit payment methods. Character limit:10 Values: string of 10 characters or fewer - `BankTransferAccountName` (string) The name on the customer's bank account. Use this field for bank transfer payment methods. Character limit: 60 Values: string of 60 characters or fewer - `BankTransferAccountNumber` (string) The number of the customer's bank account. Use this field for bank transfer payment methods. Character limit: 30 Values: a string of 30 characters or fewer - `BankTransferAccountNumberMask` (string) This is a masked displayable version of the bank account number, used for security purposes. For example: XXXXXXXXX54321. Character limit: 32 Values: automatically generated - `BankTransferAccountType` (string) The type of the customer's bank account. Use this field for direct debit payment methods. Character limit: 11 Values: DirectDebit - `BankTransferType` (string) The type of direct debit transfer. - `BusinessIdentificationCode` (string) The business identification code for Swiss direct payment methods that use the Global Collect payment gateway. Use this field only for direct debit payments in Switzerland with Global Collect. Character limit: 11 Values: string of 11 characters or fewer - `City` (string) The city of the customer's address. Use this field for direct debit payment methods. Character limit:80 Values: string of 80 characters or fewer - `CompanyName` (string) The name of the company. - `Country` (string) The two-letter country code of the customer's address. Use this field for bank transfer payment methods. Character limit: 2 Values: a valid country code - `CreatedById` (string) The user ID of the person who created the PaymentMethod object when there is a login user in the user session. In Hosted Payment Method and Zuora Checkout pages, this field is set to 3 as there is no login user to initiate a user session. Character limit: 32 Values: automatically generated - `CreatedDate` (string) The date when the PaymentMethod object was created in the Zuora system. Character limit: 29 Values: automatically generated - `CreditCardAddress1` (string) The first line of the card holder's address, which is often a street address or business name. Use this field for credit card and direct debit payment methods. Character limit: 255 Values: a string of 255 characters or fewer - `CreditCardAddress2` (string) The second line of the card holder's address. Use this field for credit card and direct debit payment methods. Character limit: 255 Values: a string of 255 characters or fewer - `CreditCardCity` (string) The city of the card holder's address. Use this field for credit card and direct debit payment methods Character limit: 40 Values: a string of 40 characters or fewer - `CreditCardCountry` (string) The country of the card holder's address. - `CreditCardExpirationMonth` (integer) The expiration month of the credit card or debit card. Use this field for credit card and direct debit payment methods. Character limit: 2 Values: a two-digit number, 01 - 12 - `CreditCardExpirationYear` (integer) The expiration month of the credit card or debit card. Use this field for credit card and direct debit payment methods. Character limit: 4 Values: a four-digit number - `CreditCardHolderName` (string) The full name of the card holder. Use this field for credit card and direct debit payment methods. Character limit: 50 Values: a string of 50 characters or fewer - `CreditCardMaskNumber` (string) A masked version of the credit or debit card number. Character limit: 32 Values: automatically generated - `CreditCardPostalCode` (string) The billing address's zip code. This field is required only when you define a debit card or credit card payment. Character limit: 20 Values: a string of 20 characters or fewer - `CreditCardState` (string) The billing address's state. Use this field is if the CreditCardCountry value is either Canada or the US. State names must be spelled in full. - `CreditCardType` (string) The type of the credit card. Possible values include Visa, MasterCard, AmericanExpress, Discover, JCB, and Diners. For more information about credit card types supported by different payment gateways, see [Supported Payment Gateways](https://knowledgecenter.zuora.com/CB_Billing/M_Payment_Gateways/Supported_Payment_Gateways). - `DeviceSessionId` (string) The session ID of the user when the PaymentMethod was created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, then Zuora passes this field to supported gateways. Currently only Verifi supports this field. Character limit: 255 - `Email` (string) An email address for the payment method in addition to the bill to contact email address. Character limit: 80 Values: a string of 80 characters or fewer - `ExistingMandate` (string) Indicates if the customer has an existing mandate or a new mandate. A mandate is a signed authorization for UK and NL customers. When you are migrating mandates from another system, be sure to set this field correctly. If you indicate that a new mandate is an existing mandate or vice-versa, then transactions fail. This field is used only for the direct debit payment method. Character limit: 3 Values: Yes or No - `FirstName` (string) The customer's first name. This field is used only for the direct debit payment method. Character limit: 30 Values: a string of 30 characters or fewer - `IBAN` (string) The International Bank Account Number. This field is used only for the direct debit payment method. Character limit: 42 Values: a string of 42 characters or fewer - `IPAddress` (string) The IPv4 or IPv6 information of the user when the payment method was created or updated. Gateways use this field for fraud prevention. If this field is passed to Zuora, then Zuora passes this field to supported gateways. If the IP address length is beyond 45 characters, a validation error occurs. - `Id` (string) Object identifier. - `IdentityNumber` (string) The unique identity number of the customer account. - `IsCompany` (boolean) Whether the customer account is a company. - `LastFailedSaleTransactionDate` (string) The date of the last failed attempt to collect payment with this payment method. Character limit: 29 Values: automatically generated - `LastName` (string) The customer's last name. This field is used only for the direct debit payment method. Character limit: 70 Values: a string of 70 characters or fewer - `LastTransactionDateTime` (string) The date of the most recent transaction. Character limit: 29 Values: a valid date and time value - `LastTransactionStatus` (string) The status of the most recent transaction. Character limit: 39 Values: automatically generated - `MandateCreationDate` (string) The date when the mandate was created, in yyyy-mm-dd format. A mandate is a signed authorization for UK and NL customers. This field is used only for the direct debit payment method. Character limit: 29 - `MandateID` (string) The ID of the mandate. A mandate is a signed authorization for UK and NL customers. This field is used only for the direct debit payment method. Character limit: 36 Values: a string of 36 characters or fewer - `MandateReceived` (string) Indicates if the mandate was received. A mandate is a signed authorization for UK and NL customers. This field is used only for the direct debit payment method. Character limit: 3 Values: Yes or No (case-sensitive) - `MandateUpdateDate` (string) The date when the mandate was last updated, in yyyy-mm-dd format. A mandate is a signed authorization for UK and NL customers. This field is used only for the direct debit payment method. Character limit: 29 - `MaxConsecutivePaymentFailures` (integer) Specifies the number of allowable consecutive failures Zuora attempts with the payment method before stopping. Values: a valid number - `Name` (string) The name of the payment method. - `NumConsecutiveFailures` (integer) The number of consecutive failed payments for this payment method. It is reset to 0 upon successful payment. - `PaymentMethodStatus` (string) This field is used to indicate the status of the payment method created within an account. It is set to Active on creation. Character limit: 6 Values: Active or Closed - `PaymentRetryWindow` (integer) The retry interval setting, which prevents making a payment attempt if the last failed attempt was within the last specified number of hours. This field is required if the UseDefaultRetryRule field value is set to false. Character limit: 4 Values: a whole number between 1 and 1000, exclusive - `PaypalBaid` (string) The PayPal billing agreement ID, which is a contract between two PayPal accounts. Typically, the selling party initiates a request to create a BAID, and sends it to buying party for acceptance. The seller can keep track of the BAID and use it for future charges against the buyer. This field is required when defining a PayPal payment method. Character limit: 64 Values: a string of 64 characters or fewer - `PaypalEmail` (string) The email address associated with the account holder's PayPal account or of the PayPal account of the person paying for the service. This field is required only when you define a PayPal payment method. Character limit: 80 Values: a string of 80 characters or fewer - `PaypalPreapprovalKey` (string) PayPal's Adaptive Payments API key. Zuora does not create this key, nor does it call PayPal to generate it. You must use PayPal's Adaptive Payments' API to generate this key, and then pass it to Zuora. Zuora uses this key to authorize future payments to PayPal's Adaptive Payments API. This field is required when you use PayPal Adaptive Payments gateway. Character limit: 32 Values: a valid PayPal Adaptive Payment pre-approval key - `PaypalType` (string) Specifies the PayPal gateway: PayFlow Pro (Express Checkout) or Adaptive Payments. This field is required when you use PayPal Adaptive Payments or Payflow Pro (Express Checkout) gateways. Character limit: 32 Values: ExpressCheckout or AdaptivePayments - `Phone` (string) The phone number that the account holder registered with the bank. This field is used for credit card validation when passing to a gateway. Character limit: 40 Values: a string of 40 characters or fewer - `PostalCode` (string) The zip code of the customer's address. This field is used only for the direct debit payment method. Character limit: 20 Values: a string of 20 characters or fewer - `SecondTokenId` (string) A gateway unique identifier that replaces sensitive payment method data. SecondTokenId is conditionally required only when TokenId is being used to represent a gateway customer profile. SecondTokenId is used in the CC Reference Transaction payment method. Character limit: 64 Values: a string of 64 characters or fewer - `State` (string) The state of the customer's address. This field is used only for the direct debit payment method. Character limit: 70 Values: a string of 70 characters or fewer - `StreetName` (string) The street name of the customer's address. This field is used only for the direct debit payment method. Character limit: 100 Values: a string of 100 characters or fewer - `StreetNumber` (string) The street number of the customer's address. This field is used only for the direct debit payment method. Character limit: 30 Values: a string of 30 characters or fewer - `TokenId` (string) A gateway unique identifier that replaces sensitive payment method data or represents a gateway's unique customer profile. TokenId is required for the CC Reference Transaction payment method. Character limit: 255 Values: a string of 255 characters or fewer - `TotalNumberOfErrorPayments` (integer) The number of error payments that used this payment method. Character limit: Values: automatically generated - `TotalNumberOfProcessedPayments` (integer) The number of successful payments that used this payment method. Character limit: Values: automatically generated - `Type` (string) The type of payment method. Enum: "ACH", "ApplePay", "BankTransfer", "Cash", "Check", "CreditCard", "CreditCardReferenceTransaction", "DebitCard", "Other", "PayPal", "WireTransfer" - `UpdatedById` (string) The ID of the user who last updated the payment method. Character limit: 32 Values: automatically generated - `UpdatedDate` (string) The date when the payment method was last updated. Character limit: 29 Values: automatically generated - `UseDefaultRetryRule` (boolean) Determines whether to use the default retry rules configured in the Zuora Payments settings. Set this to true to use the default retry rules. Set this to false to set the specific rules for this payment method. If you set this value to false, then the fields, PaymentRetryWindow and MaxConsecutivePaymentFailures, are required. Character limit: 5 Values: true, false ## Response 401 fields (application/json): - `message` (string) Error message. If the error message is "Authentication error", ensure that the Authorization request header contains valid authentication credentials, then retry the request. See [Authentication](https://developer.zuora.com/rest-api/general-concepts/authentication/) for more information. If the error message is "Failed to get user info", retry the request. ## Response 404 fields (application/json): - `done` (boolean) - `records` (array) - `size` (integer)