Token.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. // File generated from our OpenAPI spec
  3. namespace Stripe;
  4. /**
  5. * Tokenization is the process Stripe uses to collect sensitive card or bank
  6. * account details, or personally identifiable information (PII), directly from
  7. * your customers in a secure manner. A token representing this information is
  8. * returned to your server to use. You should use our <a
  9. * href="https://stripe.com/docs/payments">recommended payments integrations</a> to
  10. * perform this process client-side. This ensures that no sensitive card data
  11. * touches your server, and allows your integration to operate in a PCI-compliant
  12. * way.
  13. *
  14. * If you cannot use client-side tokenization, you can also create tokens using the
  15. * API with either your publishable or secret API key. Keep in mind that if your
  16. * integration uses this method, you are responsible for any PCI compliance that
  17. * may be required, and you must keep your secret API key safe. Unlike with
  18. * client-side tokenization, your customer's information is not sent directly to
  19. * Stripe, so we cannot determine how it is handled or stored.
  20. *
  21. * Tokens cannot be stored or used more than once. To store card or bank account
  22. * information for later use, you can create <a
  23. * href="https://stripe.com/docs/api#customers">Customer</a> objects or <a
  24. * href="https://stripe.com/docs/api#external_accounts">Custom accounts</a>. Note
  25. * that <a href="https://stripe.com/docs/radar">Radar</a>, our integrated solution
  26. * for automatic fraud protection, supports only integrations that use client-side
  27. * tokenization.
  28. *
  29. * Related guide: <a
  30. * href="https://stripe.com/docs/payments/accept-a-payment-charges#web-create-token">Accept
  31. * a payment</a>
  32. *
  33. * @property string $id Unique identifier for the object.
  34. * @property string $object String representing the object's type. Objects of the same type share the same value.
  35. * @property \Stripe\BankAccount $bank_account <p>These bank accounts are payment methods on <code>Customer</code> objects.</p><p>On the other hand <a href="https://stripe.com/docs/api#external_accounts">External Accounts</a> are transfer destinations on <code>Account</code> objects for <a href="https://stripe.com/docs/connect/custom-accounts">Custom accounts</a>. They can be bank accounts or debit cards as well, and are documented in the links above.</p><p>Related guide: <a href="https://stripe.com/docs/payments/bank-debits-transfers">Bank Debits and Transfers</a>.</p>
  36. * @property \Stripe\Card $card <p>You can store multiple cards on a customer in order to charge the customer later. You can also store multiple debit cards on a recipient in order to transfer to those cards later.</p><p>Related guide: <a href="https://stripe.com/docs/sources/cards">Card Payments with Sources</a>.</p>
  37. * @property null|string $client_ip IP address of the client that generated the token.
  38. * @property int $created Time at which the object was created. Measured in seconds since the Unix epoch.
  39. * @property bool $livemode Has the value <code>true</code> if the object exists in live mode or the value <code>false</code> if the object exists in test mode.
  40. * @property string $type Type of the token: <code>account</code>, <code>bank_account</code>, <code>card</code>, or <code>pii</code>.
  41. * @property bool $used Whether this token has already been used (tokens can be used only once).
  42. */
  43. class Token extends ApiResource
  44. {
  45. const OBJECT_NAME = 'token';
  46. use ApiOperations\Create;
  47. use ApiOperations\Retrieve;
  48. const TYPE_ACCOUNT = 'account';
  49. const TYPE_BANK_ACCOUNT = 'bank_account';
  50. const TYPE_CARD = 'card';
  51. const TYPE_PII = 'pii';
  52. }