balanced / balanced-api

Balanced API specification.
220 stars 72 forks source link

Allow a token to be associated with more than one customer #627

Open rmanisha opened 10 years ago

rmanisha commented 10 years ago

Currently, you cannot associate a token to more than one customer object. An example for when you need to associate one card to several customers is for food catering services. A company ordering lunch and paying for catering may have several different employees who places orders using a corporate, department or individual credit card. Each employee (customer) would need to have the corporate card associated with each of them, while their person credit card would only be attached to a specific customer.

Can we allow for this? Is there a better way to do this? @mjallday

mjallday commented 10 years ago

Why can you not tokenize the card twice?

In this case I'd either represent the company as the customer rather than the employee and use the meta data on the transaction to track the employee or I'd tokenize the card per employee.

To me using the company as the customer and then recording the employee on the transaction makes more sense since you don't want to tokenize a card once for every single employee within the company.

steveklabnik commented 10 years ago

Why can you not tokenize the card twice?

What @rmanisha means is "I want to associate one Card with multiple Customers."

mjallday commented 10 years ago

Yep, and what I mean is as a work around to tokenize it per customer and then associate each tokenized card with a separate customer.

rmanisha commented 10 years ago

I'm guessing this can be done by collecting the credit card information just once, and passed to Balanced repeatedly? @mjallday

msherry commented 10 years ago

It's hard to collect the information once for repeated passing to Balanced in a PCI-compliant way, though.

We discussed a .clone() method on Cards a while back -- would a version of that help with this situation? @rmanisha How common is this problem?