Creating an In Person Cart Handoff

Whether you are choosing to use a Hosted Checkout or an Embedded Checkout of In Person (OTC) payments, you will have to follow the process of instructing the PaymentExpress API about the cart that a user is checking out. This process involves making an API request to the PaymentExpress API to "hand off" the cart to PaymentExpress for processing.

Necessary Details

You will need a few specific minimum bits of information to make this request. Many more parameters are also available to facilitate the transaction in your system, dictate how it shows up in PaymentExpress reports, etc.

  • clientTransactionId - A unique identifier for this transaction that comes from your system of record.
  • location - A PaymentExpress configured field indicating the "location" the payment is occurring, such as what physical office the payment is being taken at or what portion of your PaymentExpress payment portal the user will land on.
  • URLs indicating the post-payment actions that will happen in the checkout process, for things such as canceling the transaction, displaying the receipt for the transaction, and possibly a postback URL.
  • The items in the transaction, including the following required elements per item:
    • clientItemId - A unique identifier for this item that comes from your system of record.
    • description - A plain language description of the item to be checked out.
    • amount - The cost of the item in question, formatted in a standard USD format, such as "13.59".
      In addition, to help route funds appropriately after the transaction and make reporting as useful as possible, your implementation will include setting up a combination of the following per item:
    • type - The type of the item to be checked out, which is configured in PaymentExpress.
    • fundCategory - The funding category that the funds from this item should belong to.
    • department - A particular department within your environment to which this item and its funds belong.

Processing the Transaction

There are two options for processing In Person transactions depending on

The response to this request will differ based on your integration style. These responses are better covered in the respective documentation pages for Hosted In Person Checkout and Embedded In Person Checkout.

Regardless of which integration type you have chosen, you should store this cartId with the clientTransactionId that you have provided for the cart, because it can be used to track the status of the cart using the Cart Status API.