Tokenize a card during authorization

Tokenize and save the payment credentials for a credit card while authorizing a payment

EnvironmentMethodEndpoint
Sandboxhttps://apisandbox.braspag.com.br/v2/sales/
Productionhttps://api.braspag.com.br/v2/sales/

Request

To save a credit card used in a payment, simply send the Payment.SaveCard parameter as true in the standard authorization request.

For sandbox environment, the card number should be validate in mod10 (Luhn algorithm).


--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{  
   "MerchantOrderId":"2017051001",
   "Customer":{  
      "Name":"Nome do Comprador",
      "Identity":"12345678909",
      "IdentityType":"CPF",
      "Email":"[email protected]",
      "Birthdate":"1991-01-02",
      "IpAddress":"127.0.0.1",
      "Address":{  
         "Street":"Alameda Xingu",
         "Number":"512",
         "Complement":"27 andar",
         "ZipCode":"12345987",
         "City":"São Paulo",
         "State":"SP",
         "Country":"BRA",
         "District":"Alphaville"
      },
      "DeliveryAddress":{  
         "Street":"Alameda Xingu",
         "Number":"512",
         "Complement":"27 andar",
         "ZipCode":"12345987",
         "City":"São Paulo",
         "State":"SP",
         "Country":"BRA",
         "District":"Alphaville"
      }
   },
   "Payment":{  
      "Provider":"Simulado",
      "Type":"CreditCard",
      "Amount":10000,
      "Currency":"BRL",
      "Country":"BRA",
      "Installments":1,
      "Interest":"ByMerchant",
      "Capture":true,
      "Authenticate":false,
      "Recurrent":false,
      "SoftDescriptor":"Mensagem",
      "CreditCard":{  
         "CardNumber":"4551870000000181",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2021",
         "SecurityCode":"123",
         "Brand":"Visa",
         "SaveCard":true,
         "Alias":"",
       },
      "Credentials":{  
         "Code":"9999999",
         "Key":"D8888888",
         "Password":"LOJA9999999",
         "Username":"#Braspag2018@NOMEDALOJA#",
         "Signature":"001"
      },
      "ExtraDataCollection":[  
         {  
            "Name":"NomeDoCampo",
            "Value":"ValorDoCampo"
         }
      ]
   }
}
--verbose
PropertyDescriptionTypeSizeRequired?
Payment.ProviderName of the payment method provider.Text15Yes
Payment.TypePayment method type.Text100Yes
Payment.AmountOrder amount in cents.Number15Yes
Payment.InstallmentsNumber of installments.Number2Yes
CreditCard.CardNumberCustomer’s card number.Text19Yes
CreditCard.HolderName of cardholder printed on the card.Text25Yes
CreditCard.ExpirationDateExpiration date printed on the card, in the MM/YYYY format.Text7Yes
CreditCard.SecurityCodeSecurity code printed on the back of the card.Text4Yes
CreditCard.BrandCard brand.Text10Yes
CreditCard.SaveCard"true" - saves the card. / "false" - does not save the card.Boolean10No (default "false")
CreditCard.AliasCredit card alias.Text64No

Response

The API will return the CreditCard.CardToken parameter, so the merchant can save the token for future transactions with the same card.

{
  [...]
  },
    "Payment":{
    "ServiceTaxAmount": 0,
    "Installments":1,
    "Interest":"ByMerchant",
    "Capture":true,
    "Authenticate":false,
    "Recurrent":false,
    "CreditCard":{
      "CardNumber": "455187******0181",
      "Holder": "Cardholder Name",
      "ExpirationDate":"12/2021",
      "SaveCard": true,
      "CardToken": "250e7c7c-5501-4a7c-aa42-a33d7ad61167",
      "Brand":"Visa",
      "Alias": "Customer1"
    },
    "ProofOfSale": "3519928",
    "AcquirerTransactionId": "0511023519928",
    "AuthorizationCode": "536934",
    "PaymentId": "3af00b2d-dbd0-42d6-a669-d4937f0881da",
    "Type":"CreditCard",
    "Amount":10000,
    "ReceivedDate": "2017-05-11 14:35:19",
    "Currency":"BRL",
    "Country":"BRA",
    "Provider":"Simulado",
    "ReasonCode": 0,
    "ReasonMessage": "Successful",
    "Status": 1,
    "ProviderReturnCode": "4",
    "ProviderReturnMessage": "Operation Successful",
    [...]
  }
}
PropertyDescriptionTypeSizeFormat
AcquirerTransactionIdTransaction ID of the payment method provider.Text40Alphanumeric
ProofOfSaleProof of sale reference.Text20Alphanumeric
AuthorizationCodeAuthorization code from the acquirer.Text300Alphanumeric text
PaymentIdOrder identifier field.GUID36xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
ReceivedDateDate the transaction was received by Braspag.Text19YYYY-MM-DD HH:mm:SS
ReasonCodeOperation return code.Text32Alphanumeric
ReasonMessageOperation return message.Text512Alphanumeric
StatusTransaction status.Byte2E.g.: 1
ProviderReturnCodeCode returned by the payment provider (acquirer or issuer).Text3257
ProviderReturnMessageMessage returned by the payment provider (acquirer or issuer).Text512Transaction Approved
CreditCard.CardTokenCartão Protegido token, representing the card data.GUID36xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx