Skip to main content
How-to

Agent-assisted payments

Agent-assisted payments let you take a credit card from a caller during a live phone call without the card details ever reaching you. The caller types their card number, expiration date, and security code on their phone keypad. Your payment processor saves the card, and UltraCart applies it to the order you are building in Order Entry.

Because card numbers never appear on your agents' screens, in their ears, or in your call recordings, this keeps your call center out of most of the PCI (Payment Card Industry) compliance burden that comes with taking cards over the phone.

Before you start​

You need:

  • Agent-assisted payment enabled for your UltraCart account.
  • A Stripe or Braintree Pay Connector set up in your Twilio account. The connector sends the card straight to your processor.
  • A live call in the CRM softphone. The Agent Assisted payment option only appears while you are on a call, or after a card has already been captured for the current order.

How your card data stays protected​

  • The agent never sees or hears card data. The caller's keypad tones go straight to the payment service and are not played to the agent.
  • Card numbers never pass through UltraCart. Your processor saves the card. UltraCart keeps only a reference to it, plus the last four digits, card brand, and expiration date for display.
  • Recording pauses automatically. Call recording stops while the card is being captured and resumes afterward.
  • The card is saved for future payments. It is stored with your processor like your other saved cards, so you can use it for rebills and re-orders.

Take a payment during a call​

1. Start the payment​

  1. Answer the call in the CRM.
  2. Go to Order Entry → Create Order.
  3. Fill out the order as you normally would: addresses, items, and shipping.
  4. In the payment section, select Agent Assisted.
  5. Select Start. Three fields appear: Card Number, Expiration Date, and Security Code.

2. Capture each card field​

Work through the three fields one at a time:

  1. Select Capture next to the field.
  2. Ask the caller to enter the value on their phone keypad, followed by the # key.
  3. Watch the field. It turns yellow while the caller is typing, and masked digits appear as they arrive.
  4. When the caller presses #, the field turns green. Move on to the next field.

If the caller makes a mistake, select Re-capture on that field and ask them to enter it again.

ColorMeaning
YellowWaiting for the caller, or the caller is typing
GreenField captured
RedThe entry was rejected. See Errors.

3. Complete the payment and the order​

  1. When all three fields are green, select Complete Tokenization. Your processor saves the card.
  2. A Card ending 1234 securely captured banner appears, and UltraCart applies the card to the order.
  3. Select Process Order to finish the order as you normally would.

If UltraCart says the card was captured but is not ready yet, wait a few seconds and select Check payment.

The captured card stays on the order even if the call drops before you select Process Order. On the finished order, the payment shows as a credit card with the last four digits, card brand, and expiration date.

Update a subscription's card​

When a customer calls to change the card on a subscription (auto order), you can take the new card the same way, from the Auto Order Editor instead of Order Entry. The new card replaces the old one on the auto order, and future rebills charge it.

  1. Answer the call in the CRM, and leave the CRM open in its tab.
  2. In another tab of the same browser, go to Order Management → Auto Orders, find the customer's auto order, and open it in the Auto Order Editor.
  3. Select Agent Assisted Payment. The button only appears while you are on an active call in the CRM.
  4. Select Start, then capture the card number, expiration date, and security code as described in Capture each card field.
  5. When all three fields are green, select Complete Tokenization. UltraCart saves the new card on the auto order and reloads the editor showing the new last four digits. The auto order log records the change.

Call recording pauses while the capture dialog is open and resumes when you close it.

note

The Auto Order Editor finds your call through the CRM tab, so open both in the same browser. If the Agent Assisted Payment button doesn't appear, check that the CRM is still open and that the call is active.

Practice the flow yourself​

You can rehearse the whole process before you train your agents, playing both the caller and the agent:

  1. From your cell phone, call your main business number.
  2. Answer the call in the CRM, signed in as one of your agents.
  3. Follow the steps in Take a payment during a call, entering your own card on your cell phone keypad.
  4. Refund the order afterward.
warning

This runs a real charge on a real card through your processor. Use a low-priced item and refund the order when you are done.

Errors​

If the caller's entry is rejected, the field turns red and a message explains why:

ErrorMeaning
Invalid card numberThe card number is not valid
Invalid security codeThe security code is the wrong length for the card
Invalid expiration dateThe date is not valid or the card has expired
Input timed outThe caller didn't enter anything in time
Card type not acceptedYour processor doesn't accept this card brand
Too many attemptsThe caller reached the maximum number of tries

To recover:

  • For a field error, select Capture on that field and ask the caller to try again.
  • If the whole capture fails, select Try Again to start over.

Capture a second card​

After a successful capture, a Start New Capture button appears. Use it if the caller wants to use a different card.

Stop agents from typing card numbers​

Once your agents use agent-assisted payments, you can turn on the Back End Order Entry (Prevent Direct Credit Card Entry) permission for each agent's user. Agents then can't ask callers to read out their card number and type it in themselves. See User configuration screen for where user permissions are set.

Was this page helpful?