Как мобильное приложение, как FoodPanda хранит информацию о карте? [закрытый]


Я изучаю доступные варианты хранения информации о картах и думаю, что мобильные приложения, такие как FoodPanda, на самом деле не хранят полную информацию о картах в своей базе данных. Используют ли они сторонние сервисы для хранения информации о карте и осуществления платежей?

Делает Authorized.net например, предоставлять такие услуги для хранения информации о карте и совершать транзакции, когда идентификатор карты предоставляется для совершения платежа?

2 2

2 ответа:

Большинство приложений/веб-сайтов не могут хранить информацию о картах из-заограничений соответствия PCI , которые требуютсоответствия QSA SAQ для хранения полных номеров кредитных карт.

Большинство платежных шлюзов предоставляют альтернативу хранению информации о карте, которая называется Карточный свод. Card Vaulting позволяет приложению / веб-сайту отправлять зашифрованные данные кредитной карты, которые хранятся в базе данных платежного шлюза.

Autorize.net звонки эта функция профили клиентов.

Обычно, когда возвращающийся покупатель хочет сделать заказ, приложение / веб-сайт запрашивает список всех кредитных карт, связанных с этим покупателем. Полученные данные не содержат полной информации о кредитной карте, но содержат только последние четыре цифры карты и марку карты. Autorize.net API позволяет извлекать эти профили платежей клиентов, возвращая только разрешенные данные в ответе (Get Customer Документация API платежного профиля):
<getCustomerPaymentProfileResponse xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <messages>
          <resultCode>Ok</resultCode>
          <message>
             <code>I00001</code>
             <text>Successful.</text>
          </message>
       </messages>
       <paymentProfile>
          <customerType>individual</customerType>
          <billTo>
             <firstName>John</firstName>
             <lastName>Smith</lastName>
          </billTo>
          <customerProfileId>39598611</customerProfileId>
          <customerPaymentProfileId>35936989</customerPaymentProfileId>
          <payment>
             <creditCard>
                <cardNumber>XXXX1111</cardNumber>
                <expirationDate>XXXX</expirationDate>
             </creditCard>
          </payment>
          <subscriptionIds>
             <subscriptionId>3078153</subscriptionId>
             <subscriptionId>3078154</subscriptionId>
          </subscriptionIds>
       </paymentProfile>
</getCustomerPaymentProfileResponse>

Обратите внимание, как возвращаются данные кредитной карты:

         <creditCard>
            <cardNumber>XXXX1111</cardNumber>
            <expirationDate>XXXX</expirationDate>
         </creditCard>

Вам придется спросить FoodPanda, что они делают, так как мы не будем знать. Многие компании хранят данные кредитных карт, несмотря на риски и количество усилий, необходимых для их защиты.

Authorize.Net предлагает услугу под названием Customer Information Manager, которая позволяет компаниям хранить данные кредитных карт на своих серверах в качестве платежного профиля (они также предлагают сохранение платежных и почтовых адресов). Затем вам предоставляется идентификатор платежного профиля, на который вы можете ссылаться в будущем операции. Поэтому, когда вы хотите произвести оплату по этой кредитной карте, вы просто предоставляете Authorize.Net с идентификатором платежного профиля, и они будут взимать эту кредитную карту.