LogoLogo
  • Getting Started
    • Supplier API (ZAPI)
    • Getting Started
      • Implementing Exponential Back-Off
    • API Specification
    • API Specification Enhancements
    • Glossary of Terms
  • Supporting Nodes
    • Supporting Nodes
      • Single Booking Details
      • Currencies
      • Cart
      • Activity Times
      • Products
      • Business Hours
      • Pickup Locations
      • Dropoff Location
      • Rental Date & Times
      • Allowed Guest Types
      • Waitlist
      • Passenger List
      • Guest or Agent Details
      • User Custom Fields
      • Related Bookings
      • Transaction Details
        • Basic Transaction
        • Credit Card Transaction
        • Voucher/Invoice Transaction
        • Discount Transaction
      • Days of the Week
      • Price Code
      • Multi-Day Package Itinerary
      • Booking - Search Results
      • Mobile Data
  • ZAPI Calls
    • Start Here
      • Ping Test
    • Activity Calls
      • All Activities by Date
      • All Activities by Name
      • Activity & Product Catalog
      • Activity Categories
      • Activity Category by ID
      • Cancelled Activities
      • Create Cancellation
      • Check Inventory
      • Single Activity Details
      • Upcoming Activities
      • Remove Cancellation
      • Rental Equipment Calls
        • Equipment Price Quote
        • Equipment Availability
        • Cart Contents
        • Add to Cart
    • Agent Calls
      • Agent Login
      • Authenticate Agent
      • Get Agent Profile
      • Update Agent Username
      • Update Agent Password
    • Booking
      • Batch Availability
      • Booking Search
        • Search Bookings
        • Search by Booking Number
        • Search by Last Name
        • Search by Mobile Number
      • Cancel Booking
      • Email Itinerary
      • Generate Barcode Image
      • Ticket Data by Booking ID
    • Guest Specific
      • Authenticate Guest
      • Booking Details
      • Get Guest Profile
      • Guest Lookup
      • Update Username
      • Update Password
      • Update Profile
    • Interacting with a Cart
      • Add Activity to Cart
      • Add Package to Cart
      • Add Product to Cart
      • Clear Cart Session
      • Create a Unique Cart
      • Get All Cart Sessions
      • Get Cart Contents
      • Load Booking into Cart
      • Remove Activity
      • Remove Product
      • Remove Cart Session
      • Update Notes to Cart
      • Update Customer Details
      • Transactions
        • Process Payment
        • Process Single Transaction
        • Apply Promo Code
        • Apply Gift Card
    • Manifest
      • Entire Day Manifest
      • Activity Manifest
    • Mobile
      • Check In
      • Generate Z Report
      • User Logout
    • Packages
      • Get Package Categories
      • Get Packages by Category
      • Get Package Details
      • Minimum Dates to Book
      • Package Pricing Details
    • Products
      • Product Inventory
      • Product Categories
      • Product by Category
      • Product by Name
      • Single Product Detail
    • System Info
      • All Companies
      • All Equipment
      • Custom Fields List
      • Employee List
      • Get System Info
      • User List
    • Waitlist
      • Single Activity Waitlist
      • Add Guest
      • Convert to Cart
      • Remove Guest
  • Appendix
    • Activity Type IDs
    • Error Codes
    • Package Type IDs
    • Product Type IDs
    • Payment Method Type IDs
    • User Type IDs
Powered by GitBook
On this page

Was this helpful?

  1. ZAPI Calls
  2. Interacting with a Cart
  3. Transactions

Process Payment

Process Cart with Payment is used to create a new booking from the cart contents.

zapiProcessCartWithPayment

POST https://{yourdomainname}.zaui.net/zapi/

Request Body

Name
Type
Description

zapiToken*

integer

Token that must be used for a reseller to communicate with the supplier system.

cartId*

integer

The ID of the cart which the transaction is to be applied to.

methodName*

string

The method being called.

zapiUserId*

integer

Generated by the supplier system when a new contact is created.

zapiAccountId*

integer

Generated by the supplier system.

paymentMethodType*

integer

See Payment Method Type IDs in the appendix.

location*

object

Object describing where this transaction took place, required for logging

deviceData*

string

Data from the device payment is being processed on.

creditCardDetails*

object

Object containing either standard credit card info. Required only for payment type 2000.

gratuityDetails

object

Object containing amount and type of gratuity to add to transaction/booking.

voucherDetails

object

Object containing information pertaining to the voucher. Required only for payment type 2004.

transactionType*

integer

See Payment Method Type IDs in the appendix.

transactionAmount*

integer

Amount to charge to the provided payment method (with no currency formatting). This does not include gratuity amount. This value cannot be 0 (unless payment method is 2003).

currency/isoCode*

string

Currency in which to charge to the provided payment method.

<?xml version="1.0" encoding="utf-8"?>
<response>
    <zapiVersion>2.1</zapiVersion>
    <error>0</error>
    <message>OK</message>
    <methodResponse>
        <methodName>zapiProcessCartWithPayment</methodName>
        <methodErrorCode>0</methodErrorCode>
        <methodErrorMessage>Booking Processed</methodErrorMessage>
        <bookingInformation>
            <bookingId>40245</bookingId>
            <bookingReference>3QX932R</bookingReference>
            <bookingMessage>
                <![CDATA[Client booking has been created.]]>
            </bookingMessage>
        </bookingInformation>
        <transactionResult>
            <transactionErrorCode>0</transactionErrorCode>
            <bookingId>40245</bookingId>
            <bookingReference>3QX932R</bookingReference>
            <transactionId>99783</transactionId>
            <transactionAmount>0</transactionAmount>
            <transactionMethod>2002</transactionMethod>
            <bookingMessage>
                <![CDATA[Client booking has been created.]]>
            </bookingMessage>
        </transactionResult>
    </methodResponse>
</response>

For information on payment types, please see Payment Method Type IDs in the appendix.

<request>
	<zapiToken></zapiToken>
	<zapiAccountId></zapiAccountId>
	<zapiUserId></zapiUserId>
	<zapiMethod>
		<methodName>zapiProcessCartWithPayment</methodName>
		<location>
		        <altitude></altitude>
		        <latitude></latitude>
		        <longitude></longitude>
		        <locationTimestamp></locationTimestamp>
		        <primaryAccountId></primaryAccountId>
		        <secondaryAccountId></secondaryAccountId>
        	</location>
        	<deviceData>
           		<deviceUUID></deviceUUID>
        	</deviceData>
		<cartId></cartId>
		<paymentMethod>
			<paymentMethodType></paymentMethodType>
		</paymentMethod>
		<transactionDetails>
            			<transactionType></transactionType>
            			<transactionAmount></transactionAmount>
            		<currency>
                		<isoCode></isoCode>
            		</currency>
			<creditCardDetails>
				<nameOnCard></nameOnCard>
				<number></number>
				<expMonth></expMonth>
				<expYear></expYear>
				<csv></csv>
				<cartType></cardType>
				<rawSwipeData></rawSwipeData>
				<track1Data></track1Data>
				<track2Data></track2Data>
			</creditCardDetails>
			<gratuityDetails>
                		<gratuityId>0</gratuityId>
                		<gratuityTypeId>0</gratuityTypeId>
            		</gratuityDetails>
			<voucherDetails>
				<companyName></companyName>
				<companyAgentId></companyAgentId>
				<companyId></companyId>
				<voucherNumber></voucherNumber>
			</voucherDetails>
        	</transactionDetails>
	</zapiMethod>
</request>
<?xml version="1.0" encoding="utf-8"?>
<response>
    <zapiVersion>2.1</zapiVersion>
    <error>0</error>
    <message>OK</message>
    <methodResponse>
        <methodName>zapiProcessCartWithPayment</methodName>
        <methodErrorCode></methodErrorCode>
        <methodErrorMessage></methodErrorMessage>
        <bookingInformation>
            <bookingId></bookingId>
            <bookingReference></bookingReference>
            <bookingMessage></bookingMessage>
        </bookingInformation>
        <transactionResult>
            <transactionErrorCode></transactionErrorCode>
            <bookingId></bookingId>
            <bookingReference></bookingReference>
            <transactionId></transactionId>
            <transactionAmount></transactionAmount>
            <transactionMethod></transactionMethod>
            <bookingMessage></bookingMessage>
        </transactionResult>
    </methodResponse>
</response>
PreviousTransactionsNextProcess Single Transaction

Last updated 3 years ago

Was this helpful?