ZenPayments
  1. Integration Guide
ZenPayments
  • General Information
    • Authentication
    • Errors
    • Responses
    • Filters
      • Example - gte
      • Example - between
      • Example - like
      • Example - in
      • Example - non-empty
    • Pagination
      • 10 results per page
    • Data Types
  • Merchants
    • Sandbox
      • Sandbox Payment Gateway
    • Card Payments
      • Authorization
      • Sale
      • Capture
      • Partial Capture
      • Refund
      • Partial Refund
      • Soft/Dynamic Descriptor
      • Card Authentication
      • Card Tokenization
      • Card Tokenization with Global Token
      • Sale with a Fee Terminal
    • Hosted Form
      • Generate
      • Generate with Billing and Contact Information
    • Hosted Fields
      • How it Works
      • Hosted Fields Token
        • Hosted Fields Token
      • Integration Guide
        • Step 1: Include the JavaScript Library
        • Step 2: Add HTML Elements for all payment fields
        • Step 3: Set the AccessToken and Configure the rest of the form
        • Step 4: Add styling
        • Step 5: Listen for Events
        • Step 6: Get the tokenized card
          • Get the tokenized card
        • Add Payment Method Page
        • Testing your integration
    • CustomerVault
      • Sandbox
        • Sandbox Dashboard
      • Hosted Card Form
        • Generate
      • Customers
        • List
        • View
        • Create
        • Update
        • Archive
        • Delete
      • Cards
        • List Cards
        • View
        • Add Card
        • Update Exp Date
        • Archive
        • Unarchive
        • Delete
      • Billing Information
        • List
        • View
        • Update
        • Create
      • Shipping Information
        • List
        • View
        • Update
        • Create
      • Recurring Payment
        • List
        • View
        • Update
        • Create
    • Transaction Reporting
      • List
      • View
    • Response Codes
      • Verification Response Codes
    • 3DSecure
      • Version
      • Create
        • Create
      • Check
        • Check
      • Test Cards
    • Account Updater
      • Card Compatibility
      • How It Works
        • Sale with Account Updater
    • ACH Payments
      • General Information
      • Transactions
        • SEC Codes
        • Statuses
        • Actions
          • Action
        • History Log
          • Log
        • List
        • View
        • Create ACH
        • Create ACH & Save Customer
        • Create ACH for an existing Customer
        • Create ACH for an existing Customer and specific Account
        • Remove
      • Hosted Form
        • Example Request
      • Customers
        • List Customers
        • View specific Customer
        • Create Customer
        • Update Customer
        • Delete a Customer
      • Customer Accounts
        • List Customer Accounts
        • Create Customer Account
        • Update Customer Account
        • Delete a Customer Account
      • Bank Information
        • View
      • ACH Settlements
        • List
        • View
      • ACH Webhooks
        • New ACH Record
        • ACH Status Update
        • New ACH Customer
    • Reporting
      • Sandbox
        • Sandbox Dashboard
      • Authorizations
        • List
        • List with Filters
      • Batches
        • List
        • List with Filters
        • Summary
      • Payouts
        • List
        • View
        • Export
      • Chargebacks
        • Disputes
          • Upload a temporary file
          • Create a Dispute
          • Preview
          • Submit
        • Webhooks
          • Signatures
          • Events
            • Chargeback
              • New Chargeback Record
              • Chargeback Update
        • View
          • List
          • View
      • Statements
        • List
        • Download
      • Reserve
        • List
      • Fraud Report
        • Generate
      • Visa Verifi
        • Submiting External Transactions
          • Submit
        • List
      • Other Reports
        • Request a Report
        • Check Status
        • Download
    • Gateway Test Cards
  • Platforms
    • Sandbox
      • Sandbox Dashboard
    • Onboarding
      • Boarding Applications
        • Campaigns
          • List
        • Equipment
          • Terminals
            • List
            • View
          • View
          • Update
        • List
          • List Boarding Applications
        • Create
          • Create Boarding Application
        • Delete
          • Delete Boarding Application
        • View
          • View Boarding Application
        • Update
          • Update Boarding Application
        • Principals
          • List Principals
          • Create Principal
          • Update a Single Principal
          • Mass update Principals
          • Delete Principal
        • Processing
          • View Processing section
          • Update Processing section
        • Merchant Category Codes (MCCs)
          • List MCCs
        • ACH
          • View ACH section
          • Update ACH section
        • Documents
          • Attachment About
            • List All Document Categories
          • View all documents
          • MPA
          • Assign a single document
          • Assign multiple documents
          • Update a single document
          • Delete a single document
        • Fees
          • Types
            • List
          • Other Fees
            • Add
            • Update
            • Delete
          • List all fees
          • View a specific fee
          • Update a single fee
          • Update multiple fees
        • Bank Accounts
          • Add
          • Update
          • Change
        • Validate
          • Validate a Boarding Application
        • URL
          • GET URL of Boarding Application
        • Signature
          • Request E-sign
            • Request Signature
          • Embed E-sign
            • Embeded E-sign Example Flow 1
            • Embeded E-sign Example Flow 2
            • Request Embed
          • Manually Signing
            • Manual Sign
          • External eSign Signing
            • External eSign
        • Automation
          • AutoSign
            • Set AutoSign
          • AutoUnderwriting
            • Set AutoUnderwriting
        • Status
          • Set status to Underwriting
        • Notes
          • List
          • Create
      • Merchants
        • Terminals
          • List Terminals
          • View a specific Terminal
          • VAR Sheet
          • VAR View
        • List Merchants
      • DBA
        • List
        • View
      • Attachments
        • Temporary Upload
          • Temporary Upload
        • Chunk Upload
          • Initialize
          • Upload Request 1/2
          • Upload Request 2/2
        • Standard Upload
        • List attachments
        • View
        • View in browser
        • Download
        • Delete
      • Webhooks
        • Signatures
        • Events
          • Boarding Application
          • Merchant
            • Account
              • New Acquiring Account
              • New ACH Account
              • Closed Acquiring Account
              • Closed ACH Account
            • Terminal
              • New Terminal Record
              • Update Terminal Record
              • Delete Terminal Record
    • Reporting
      • Authorizations
        • List
        • List with Filters
      • Batches
        • List
        • List with Filters
        • Summary
      • Payouts
        • List
        • View
        • Export
      • Chargebacks
        • View
          • List
          • View
        • Disputes
          • Upload a temporary file
          • Create a Dispute
          • Preview
          • Submit
        • Webhooks
          • Signatures
          • Events
            • Chargeback
              • New Chargeback Record
              • Chargeback Update
      • Statements
        • List
        • Download
      • Reserve
        • List
      • Fraud Report
        • Generate
      • Other Reports
        • Request a Report
        • Check Status
        • Download
    • Residuals
      • List
      • View
    • Tickets
      • Update Ticket Status
        • Close
        • Re-Open
      • Responses
        • List
        • Create
        • Add an Attachment
      • Attachments
        • List
        • View
        • Create
        • Delete
      • Categories
        • List
      • Notes
        • List
        • View
        • Create
        • Update
        • Delete
        • Attachments
      • List
      • Create
      • View a specific ticket
    • Connect
      • Webhooks
        • Access Granted
        • Access Updated
        • Access Revoked
    • Misc
      • Address Checker
        • List Countries
        • List States
        • List Cities and Zip Codes
        • Filter by City and State
      • BIN Check
        • Get BIN Information
  1. Integration Guide

Step 3: Set the AccessToken and Configure the rest of the form

Main Configuration#
Now you are ready to render the hosted fields form on your website. Start by setting the Hosted Fields Token, which you've obtained from your backend together with the payment amount. After that, you must specify all hosted fields containers together with the payment amount.
Keep in mind that the fields object property names must be exactly as shown above: cardNumber, cardExpiration, cardCvv, cardHolderName, submit
Setting Shipping data
StartFragment
In case your Hosted Fields Token is issued with 3DS Param set to true and your customer provides an AMEX (American Express) Card you will be required to provide shipping data. You will also be informed for this via an event called hostedFields.shippingRequired which will occur when the customer enters his card. You can provide the shipping data in two ways:
1.
During initial form creation via the shipping property of the configuration object, see the example above.
2.
Using the setShippingInfo method on the form instance:
form.setShippingInfo({
  address1: 'Example Address Line #1',
  country: 'US',
  city: 'Chicago',
  state: 'Illinois',
  zip: '60639'
})
You can use this method together with the hostedFields.shippingRequired event. When receiving this event you might want to explicitly check if the shippingRequired flag is set to true on the event object. In case the user provides an AmEx card you will receive the event with flag equal to true, but if he changes the card to a non-AmEx card you will receive the event with flag equal to false.
form.addEventListener('hostedFields.shippingRequired', e => {
  if(e.detai.shippingRequred) {
    form.setShippingInfo({
      address1: 'Hello world',
      country: 'US',
      city: 'Hello city',
      state: 'Illinois',
      zip: '40005'
   })
  }
})
The shipping object has the following structure:
FieldDataTypeRequired
shipping.address1Shipping AddressstringYes
shipping.countryShipping Country. You can use full country name or ISO2/ISO3 CodestringYes
shipping.cityCitystringYes
shipping.stateState. Required when country is USstringMixed
shipping.zipZIPstringYes
For the 3DS Integration the shipping data is synonymous to the billing data. In case you collect and represent it as billing information in your app, it's still the same for your hosted fields integration. Just provide that billing data as shipping using the setShippingInfo or during the initialization with the correct object structure
Modified at 2025-08-09 05:39:42
Previous
Step 2: Add HTML Elements for all payment fields
Next
Step 4: Add styling
Built with