Create a payment method

Creates a new payment method object. See Payment Pages 2.0 implementation overview to learn how to create payment methods through Hosted Payment Pages.

SecuritybearerAuth
Request
query Parameters
fields[]
Array of strings

Allows you to specify which fields are returned in the response.

Accepted values custom_fields, created_by_id, updated_by_id, created_time, id, updated_time, type, account_id, bank_identification_number, device_session_id, ip_address, maximum_payment_attempts, payment_retry_interval, state, use_default_retry_rule, existing_mandate, last_failed_sale_transaction_time, last_transaction_time, last_transaction_status, number_of_consecutive_failures, total_number_of_processed_payments, total_number_of_error_payments, billing_details, card, apple_pay, google_pay, ach_debit, cc_ref, paypal_adaptive, paypal_express_native, paypal_express, sepa_debit, betalings_debit, autogiro_debit, bacs_debit, au_becs_debit, nz_becs_debit, pad_debit

Example: fields[]=id,created_time
account.fields[]
Array of strings

Allows you to specify which fields are returned in the response.

Accepted values custom_fields, created_by_id, updated_by_id, created_time, id, updated_time, auto_pay, account_number, bill_to_id, sold_to_id, billing_document_settings, communication_profile_id, crm_id, sales_rep, parent_account_id, payment_gateway, payment_terms, remaining_credit_memo_balance, remaining_debit_memo_balance, remaining_invoice_balance, remaining_payment_balance, sequence_set_id, tax_certificate, batch, tax_identifier, bill_cycle_day, description, name, currency, default_payment_method_id, enabled

Example: account.fields[]=id,created_time
expand[]
Array of strings

Allows you to expand responses by including related object information in a single call. See the Expand responses section of the Quickstart API Tutorials for detailed instructions.

filter[]
Array of strings

A case-sensitive filter on the list. See the Filter lists section of the Quickstart API Tutorial for detailed instructions.
Note that the filters on this operation are only applicable to the related objects. For example, when you are calling the "Retrieve a billing document" operation, you can use the filter[] parameter on the related objects such as filter[]=items[account_id].EQ:8ad09e208858b5cf0188595208151c63

page_size
integer [ 1 .. 99 ]

The maximum number of results to return in a single page. If the specified page_size is less than 1 or greater than 99, Zuora will return a 400 error.

header Parameters
zuora-track-id
string

A custom identifier for tracking API requests. If you set a value for this header, Zuora returns the same value in the response header. This header enables you to track your 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 ("), or quote (').

async
boolean
Default: false

Making asynchronous requests allows you to scale your applications more efficiently by leveraging Zuora's infrastructure to enqueue and execute requests for you without blocking. These requests also use built-in retry semantics, which makes them much less likely to fail for non-deterministic reasons, even in extreme high-throughput scenarios. Meanwhile, when you send a request to one of these endpoints, you can expect to receive a response in less than 150 milliseconds and these calls are unlikely to trigger rate limit errors. If set to true, Zuora returns a 202 Accepted response, and the response body contains only a request ID.

zuora-entity-ids
string

An entity ID. If you have Multi-entity enabled and the authorization token is valid for more than one entity, you must use this header to specify which entity to perform the operation on. If the authorization token is only valid for a single entity or you do not have Multi-entity enabled, you do not need to set this header.

idempotency-key
string

Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types. This idempotency key should be a unique value, and the Zuora server identifies subsequent retries of the same request using this value. For more information, see Idempotent Requests.

accept-encoding
string

Include a accept-encoding: gzip header to compress responses, which can reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes. For more information about this header, see Request and Response Compression.

content-encoding
string

Include a content-encoding: gzip header to compress a request. Upload a gzipped file for the payload if you specify this header. For more information, see Request and Response Compression.

Request Body schema: application/json
required
object (CustomFields)

Set of user-defined fields associated with this object. Useful for storing additional information about the object in a structured format.

type
required
string

The type of the payment method. An additional hash is included on the payment method with a name matching this value. It contains additional information specific to the payment method type.

Enum: "paypal_express" "paypal_express_native" "paypal_adaptive" "card" "cc_ref" "ach_debit" "sepa_debit" "betalings_debit" "autogiro_debit" "bacs_debit" "au_becs_debit" "nz_becs_debit" "pad_debit" "apple_pay" "other" "paypal" "adyen_google_pay" "adyen_apple_pay"
custom_type
string

The custom type of the payment method from Universal Payment Connector.

account_id
string

A customer account identifier.

object (BillingDetails)

Billing information associated with the payment method that may be used or required by specific payment method types.

maximum_payment_attempts
number

Maximum number of consecutive failed retry payment attempts using this payment method before retries are stopped.

payment_retry_interval
integer

The retry interval in hours.

device_session_id
string

Identifier of the device browser session.

ip_address
string or null

The IP address from which the Mandate was accepted by the customer.

bank_identification_number
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.

object (Card)

Credit card information. When providing a card number, you must meet the requirements for PCI compliance. We strongly recommend using Zuora's Payment Pages 2.0 instead of interacting with this API directly.

object (PaypalExpressNative)

If it is a paypal_express_native payment method, this hash contains details about the PayPal Express Native payment method.

object (PaypalExpress)

If it is a paypal_express payment method, this hash contains details about the PayPal Express payment method.

object (PaypalAdaptive)

If it is a paypal_adaptive payment method, this hash contains details about the PayPal Adaptive payment method.

object (SepaDebit)

If the type of the payment method is sepa_debit, this hash contains details about the SEPA bank account.

object (CcRef)

If the type of the payment method is cc_ref, this hash contains details about the Credit Card Reference Transactions payment method. See Supported payment methods for payment gateways that support this type of payment method.

object (ApplePayCreate)

If the type of the payment method is apple_pay, this hash contains details about the Apple Pay payment method. See Supported payment methods for payment gateways that support this type of payment method.

object (GooglePayCreate)

If the type of the payment method is google_pay, this hash contains details about the Google Pay payment method. See Supported payment methods for payment gateways that support this type of payment method.

object (AchDebit)

If the type of the payment method is ach_debit, this hash contains details about the ACH bank account.

object (BetalingsDebit)

If the type of the payment method is betalings_debit, this hash contains details about the Betalingsservice bank account.

object (AutogiroDebit)

If the type of the payment method is autogiro_debit, this hash contains details about the Autogiro bank account.

object (BacsDebit)

If the type of the payment method is bacs_debit,, this hash contains details about the BACS bank account.

object (AuBecsDebit)

If the type of the payment method is au_becs_debit, this hash contains details about the BECS bank account.

object (NzBecsDebit)

If the type of the payment method is nz_becs_debit, this hash contains details about the BECS-NZ bank account.

object (PadDebit)

If the type of the payment method is pad_debit, this hash contains details about the PAD bank account.

account_number
string

A human-readable customer account identifier. It can be user-supplied.

is_default
boolean

Indicates whether it is the default payment method on the associated account.

gateway_id
string

Identifier of the payment gateway Zuora will use to authorize the payments that are made with this payment method.

object
Responses
201

Default Response

400

Bad Request

401

Unauthorized

404

Not Found

405

Method Not Allowed

429

Too Many Requests

500

Internal Server Error

502

Bad Gateway

503

Service Unavailable

504

Gateway Timeout

post/payment_methods
Request samples
application/json
{
  • "type": "card",
  • "account_id": "2c92c0f86cbe335a016cbece4a434ada",
  • "is_default": false,
  • "billing_details": {
    },
  • "card": {
    }
}
Response samples
application/json
{
  • "id": "8ad09b7d83165cd10183197e356c4ae3",
  • "updated_by_id": "2c92c0946a6dffc0016a7faab604299b",
  • "updated_time": "2022-09-07T12:47:25-07:00",
  • "created_by_id": "2c92c0946a6dffc0016a7faab604299b",
  • "created_time": "2022-09-07T12:47:25-07:00",
  • "custom_fields": {
    },
  • "type": "card",
  • "account_id": "2c92c0f86cbe335a016cbece4a434ada",
  • "billing_details": {
    },
  • "maximum_payment_attempts": 0,
  • "payment_retry_interval": 0,
  • "bank_identification_number": "411111",
  • "card": {
    },
  • "state": "active"
}