Skip to main content

Create payment methods and implement payment flows on Chase Mobility

Zuora

Create payment methods and implement payment flows on Chase Mobility

This payment gateway integration can be requested through the Specialized Payment Connections service at an additional cost.

The creation of Credit Card payment methods on the Chase Mobility gateway integration is only supported through the hosted payment pages. Creating payment methods through the API operations or Zuora UI is not supported.

You can implement a hosted payment page through the Payment Pages 2.0 solution to collect your customer's payment method data and create the payment method in Zuora. You can configure and integrate a Payment Page 2.0 to support processing one-time payments and store the payment method for processing subsequent recurring payments. Once the payment method is successfully created, the storedPaymentOptionReference field is returned from the gateway and stored as the credential profile for the payment method in Zuora. It will be used in processing subsequent recurring transactions.

Complete the following tasks to implement a Payment Page 2.0 to support one-time payment flows:

  1. Prepare for the integration.
  2. Set up a Payment Page 2.0.
  3. Request a signature from Zuora for the payment page.
  4. Set up your client code to integrate the payment page to your web page.
  5. Implement the callback response

You can find detailed instructions in the following sections.

Step 1. Prepare for the integration

Step 2. Set up a Payment Page 2.0

  1. Set up a Payment Page 2.0 by following the instructions in Configure Credit Card Type Payment Pages 2.0. Make sure Enable 3D Secure 2.0 is selected in the Security Information section.
  2. Optionally, preview the Payment Page.
  3. Optionally, translate and localize the Payment Page.
  4. Optionally, update the CSS for the Payment Page

Step 3. Request a signature for the Payment Page

Follow the instructions in Request a signature for the Payment Page from Zuora. Because the Client-side HPM Parameter Validation feature is enabled, Zuora will validate the additional fields in the request by comparing them with the values specified in the digital signature.

Here are two request examples for the Generate RSA signature REST API operation.

{
    "uri":"https://sandbox.na.zuora.com/apps/Pu...tedPageLite.do",
    "method":"POST",
    "pageId":"test808145b3bf9d0145b3c6812b0008",
    "paymentGateway":"ChaseMobility",
    "authroizationAmount":"100",
    "currency":"USD",
    "accountId":"test808145b3bf9d0145b3c6812b0008"
}
{
    "uri":"https://sandbox.na.zuora.com/apps/Pu...tedPageLite.do",
    "method":"POST",
    "pageId":"test808145b3bf9d0145b3c6812b0008",
    "paymentGateway":"ChaseMobility",
    "accountId":"test808145b3bf9d0145b3c6812b0008"
}

Step 4. Set up your client code

Follow the instructions in Integrate Payment Pages 2.0. When rendering the Payment Page form, specify the following required parameters in the Z.render or Z.renderWithErrorHandler function. For other optional parameters, see Client Parameters for Payment Pages 2.0.

Required Parameter Description

doPayment

Type: boolean

Default: false

true indicates that the Payment Page will create a payment method as well as process the one-time payment transaction.

If it is false or not specified, the Payment Page will only create a payment method. 

To implement a one-time payment flow, doPayment must be true

storePaymentMethod

Type: boolean

Default: true

true indicates that the payment method will be stored in Zuora and used in subsequent recurring payments.

false indicates that the payment method will not be stored in Zuora. End customers need to be brought back to session to authenticate the payment.

field_accountId

Type: string

Example: 8a90e5e48f2eade6018f2ed19133003a

Zuora customer account ID. The payment method will be created for this specified account.

authorizationAmount

Required for authorization amount processing

The amount of the one-time payment that will be sent to the gateway. 

For more information about this parameter, see Client parameters for Payment Pages 2.0.

field_currency

Required for authorization amount processing

The currency of the one-time payment amount.

For more information about this parameter, see Client parameters for Payment Pages 2.0.

documents

Required for invoice processing

An array of invoices to be paid in this transaction, containing the following fields:

  • type - The value must be invoice.
  • ref - The value must be the invoice number, such as INV0000001.

Here is an example for authorization amount processing.

var params = {
    doPayment:"true",
    storePaymentMethod:"true",
    field_accountId:"testc0f87596f2f301759c29443622fa",
    authorizationAmount:"99",
    field_currency:"USD"
};

Here is an example for invoice processing.

var params = {
    doPayment:"true",
    storePaymentMethod:"true",
    field_accountId:"testc0f87596f2f301759c29443622fa",
    documents:"[{\"type\": \"invoice\", \"ref\": \"INV0000001\"}, {\"type\": \"invoice\", \"ref\": \"INV0000002\"}]"
};

Step 5. Implement the callback response

See Advanced Integration of Payment Pages 2.0 for more information.