Payantis Platform
v1
  • v2 - latest
  • v1
v1
  • v2 - latest
  • v1
v1
  • v2 - latest
  • v1
  1. Issuing API
  • Payantis Platform
    • Payantis Platform
    • API Kullanımı
    • Temel Kavramlar
  • Issuing API
    • Payantis Issuing
    • Adım Adım Issuing API
    • Kural Motoru
    • Hassas Bilgilerin Güvenli İletimi
    • Customer
      • Create Customer
      • Get or Create Customer
      • Get Customer
      • Get Customer List
      • Update Customer
      • Update Customer Segment
      • Upsert Address
      • Upsert Communication
      • Upsert Identification
      • Create Segment
      • Get Segments
      • Update Segment
      • Delete Segment
      • Create User Note
      • Get User Notes
    • Card
      • Create Card
      • Create Noname Card
      • Get Card List
      • Get Card
      • Get Card Details
      • Get Card Policy
      • Get Card Perso Info
      • Get Card Shipment Info
      • Renew Card
      • Detokenize Card
      • Link Noname Card To Customer
      • Unlink Noname Card
      • Update Card Status
      • Update Customer Card Statuses
      • Update Card Policy
      • Update Card Phone Number
      • Update Digital Slip Type
      • Update Auto Renewal Status
      • Get Payantis Public Key
      • Cvv2 - Reset Counters
      • Cvv2 - Verify
      • Cvv2 - Get with Expire Date
      • Pin - Verify
      • Pin - Set
      • Pin - Change
      • Pin - Unblock
      • Pin - Set Random
      • Pin - Send via SMS
      • Creates User Note
      • Get User Notes
    • Product
      • Create Card Art
      • Create Card Bin Range
      • Create Card Product
      • Create Card Product Group
      • Get Card Art List
      • Get Card Bin List
      • Get Card Bin Range List
      • Get Card Product Group List
      • Get Card Product List
      • Get Card Product
      • Update Card Art Name
      • Update Card Bin Range
      • Update Card Product Group
      • Update Card Product
      • Update Card Product Contactless Limit
      • Delete Card Art
      • Delete Card Product Group
      • Delete Card Product
    • Transactions
      • Get Card Transactions
    • Authorization Controls
      • Create Authorization Control
      • Update Authorization Control
      • Link
      • Unlink
      • Get Authorization Controls
      • Get Links
      • Delete Authorization Control
    • Velocity Controls
      • Create Velocity Control
      • Update Velocity Control
      • Get Velocity Control
      • Get Velocity Control List
      • Delete Velocity Control
      • Link
      • Unlink
      • Get Velocity Links
      • Get Card Velocity Limits
      • Card Velocity
      • Get Card Velocity
      • Delete Card Velocity
    • Fees
      • Transaction Fee
        • Create
        • Get List
        • Get
        • Update
        • Delete
        • Link
        • Get Links
        • Unlink
      • Card Issuance Fee
        • Create
        • Update
        • Get
        • Get List
        • Delete
        • Link
        • Get Links
        • Unlink
      • Card Annual Fee
        • Create
        • Get List
        • Update
        • Get
        • Delete
        • Link
        • Get Links
        • Unlink
    • WebHook
      • Register
      • Get Registered Webhooks
      • Unregister
      • Update
    • AuditLog
      • Get Audits
    • Schemas
      • EntityChangeLogResponseDto
      • CardPhysicalDto
      • QueryBuilderFieldDto
      • AddressDto
      • AuthorizationCheckDto
      • AuthorizationCheckLinkDto
      • BaseCardPhysicalInfoDto
      • CompanyInfo
      • CardAccountStatisticInfoDto
      • CardDetokenizeRequestDto
      • CardDetokenizeResponseDto
      • CardPhoneNumberUpdateRequestDto
      • CardPhysicalInfoDto
      • CardPolicyInfoDto
      • CardProductInfoDto
      • CardRenewalRequestDto
      • CardRequestDto
      • CardResponseInfoDto
      • CardStatusInfoDto
      • CardStatusUpdateRequestDto
      • ContactlessLimitDto
      • CreateCardArtDto
      • CreateCardDto
      • CreateCardProductDto
      • CreateCustomerAddressDto
      • CreateCustomerCommunicationDto
      • CreateCustomerDto
      • CreateCustomerIdentificationDto
      • CreateUpdateAuthorizationCheckLinkDto
      • CreateUpdateCardAnnualFeeLinkDto
      • CreateUpdateCardIssuanceFeeLinkDto
      • CreateUpdateCardProductGroupDto
      • CreateUpdateTransactionFeeLinkDto
      • CreateUpdateVelocityCheckLinkDto
      • CreateVelocityCheckDto
      • CustomerInfoDto
      • FindCardResponseDto
      • PinRequestDto
      • TransactionCriteriaDto
      • UpdateCardArtDto
      • UpdateCardAutoRenewalStatusDto
      • UpdateCardProductDto
      • UpdateCardStatusResponseDto
      • UpdateCardStatusAndIssuanceResponseDto
      • UpdateCustomerCardStatusRequestDto
      • UpdateCustomerCardStatusResponseDto
      • UpdateCustomerDto
      • UpdateVelocityCheckDto
      • VelocityAvailableAmountDto
      • VelocityCheckDto
      • VelocityControlsDto
      • VelocityLimitDto
      • VelocityUsedAmountDto
      • BaseCardDto
      • BaseCardProductPhysicalDto
      • BaseLinkDto
      • CardAnnualFeeDto
      • CardAnnualFeeLinkDto
      • CardArtDto
      • CardDeliveryAddressDto
      • CardDeliveryCommunicationDto
      • CardDetailDto
      • CardDto
      • CardInfoDto
      • CardIssuanceFeeDto
      • CardIssuanceFeeLinkDto
      • CardPolicyAddRequestDto
      • CardPolicyDto
      • CardPolicyResponseDto
      • CardProductDetailDto
      • CardProductDto
      • CardProductGroupDto
      • CardProductPhysicalDto
      • CardSummaryDto
      • ChangePinRequestDto
      • CreateAuthorizationCheckDto
      • CreateCardAnnualFeeDto
      • CreateCardIssuanceFeeDto
      • CreateCardPolicyDto
      • CreateCardProductPhysicalDto
      • CreateTransactionFeeDto
      • CreateUpdateCustomerSegmentDto
      • CustomerAddressDto
      • CustomerCommunicationDto
      • CustomerDetailDto
      • CustomerDto
      • CustomerIdentificationDto
      • CustomerSegmentDto
      • CardVelocityRequestDto
      • CardShipmentDetailResponseDto
      • CardShipmentResponseDto
      • Cvv2AndResponseDto
      • IssuanceDetailsDto
      • IssuanceDto
      • IssuanceNewCardDto
      • IssuanceSummaryDto
      • LinkCustomerDto
      • CustomerCardsDto
      • NoNameCardRequestDto
      • TransactionFeeDto
      • TransactionFeeLinkDto
      • UnLinkCustomerDto
      • UpdateAuthorizationCheckDto
      • UpdateCardAnnualFeeDto
      • UpdateCardIssuanceFeeDto
      • UpdateDigitalSlipTypeDto
      • UpdateDigitalSlipTypeResponseDto
      • UpdateTransactionFeeDto
      • UpdatedCardInfo
      • VelocityCheckLinkDto
      • VerifCvv2RequestDto
      • VerifyOrSetPinRequestDto
      • CreateCardBulkResponseDto
      • PublicKeyDto
      • IntegrationKeyExchangeResponseDto
      • TenantWebHookRequestDto
      • CurrencyExchangeRateDto
      • AdditionalAmountDto
      • CreateUserNoteRequestDto
      • NoteResponseDto
      • TaxDto
      • CreateUpdateCurrencyExchangeRateDto
      • TenantWebHookResponseDto
      • UpdateTenantCurrencyConversionDto
      • CardTransactionResponseDto
      • PagedResultDto<EntityChangeLogResponseDto>
      • PagedResultDto<CardProductDetailDto>
      • PagedResultDto<CardProductGroupDto>
      • PagedResultDto<CustomerDto>
      • PagedResultDto<CustomerSegmentDto>
      • PagedResultDto<IssuanceSummaryDto>
      • PagedResultDto<NoteResponseDto>
      • PagedResultDto<CardTransactionResponseDto>
      • VelocityCheckLinkCriteriaDto
      • CardBinDto
      • CardBinRangeDto
      • CreateCardBinDto
      • CreateUpdateCardBinRangeDto
      • UpdateCardBinDto
      • PagedResultDto<CardBinDto>
  • Kurum Finansal Entegrasyon
    • Finansal Entegrasyon
    • Günsonu Dosyaları
    • Settlement Dosyası Alanları
    • Expire Dosyası Alanları
    • Kurum Real-Time API
      • Authenticate
      • Auth Refresh
      • Balance Inquiry
      • Authorization
      • Reverse
      • Refund
      • Notify
    • Schemas
      • BaseRequestDto
      • RefundRequestDto
      • BaseResponseDto
      • AuthorizationRequestDto
      • AuthorizationResponseDto
      • BalanceInquiryResponseDto
      • RefundResponseDto
      • ReversalResponseDto
      • AdditionalAmountDto
      • BalanceInquiryRequestDto
      • AccountDetailDto
      • OriginalDetailDto
      • ReversalRequestDto
      • BalanceInformationDto
      • NotificationRequestDto
      • NotificationResponseDto
  • Transaction Testing API
    • Transaction Testing
    • Get Card Info
      POST
    • Generate Pin Block
      POST
    • Extract Clear Pin
      POST
    • Process Transaction
      POST
    • Void Transaction
      POST
    • Refund Transaction
      POST
    • Schemas
      • Payantis.SandBox.BaseSimulationResponseDto
      • Payantis.SandBox.DetailedSimulationRefundRequestDto
      • Payantis.SandBox.DetailedSimulationRefundResponseDto
      • Payantis.SandBox.DetailedSimulationRequestDto
      • Payantis.SandBox.DetailedSimulationResponseDto
      • Payantis.SandBox.DetailedSimulationReversalRequestDto
      • Payantis.SandBox.DetailedSimulationReversalResponseDto
      • Payantis.SandBox.Dto.ClearCardInfoDto
      • Payantis.SandBox.Dto.ClearCardInfoRequestDto
      • Payantis.SandBox.Dto.ClearPinRequestDto
      • Payantis.SandBox.Dto.ClearPinResponseDto
      • Payantis.SandBox.Dto.EncryptCardNumberRequestDto
      • Payantis.SandBox.Dto.PinBlockRequestDto
      • Payantis.SandBox.Dto.PinBlockResponseDto
      • Payantis.SandBox.Dto.PinTestRequestDto
      • Payantis.SandBox.Dto.PinTestResponseDto
      • Payantis.SandBox.SimulationRefundRequestDto
      • Payantis.SandBox.SimulationRefundResponseDto
      • Payantis.SandBox.SimulationRequestDto
      • Payantis.SandBox.SimulationResponseDto
      • Payantis.SandBox.SimulationReversalRequestDto
      • Payantis.SandBox.SimulationReversalResponseDto
      • Payantis.SystemParameter.AdditionalAmountCalculationSource
      • Payantis.SystemParameter.AdditionalAmountType
      • Payantis.SystemParameter.ArqcResultCodes
      • Payantis.SystemParameter.CardBrand
      • Payantis.SystemParameter.CardholderActivatedTerminalLevel
      • Payantis.SystemParameter.CardholderPresence
      • Payantis.SystemParameter.CavvResultCode
      • Payantis.SystemParameter.CvcResultCode
      • Payantis.SystemParameter.Dto.AdditionalAmountDto
      • Payantis.SystemParameter.Dto.TaxDto
      • Payantis.SystemParameter.KeyType
      • Payantis.SystemParameter.LmkType
      • Payantis.SystemParameter.PosEntryMode
      • Payantis.SystemParameter.ResponseCodes
      • Payantis.SystemParameter.SLIChannel
      • Payantis.SystemParameter.SLIUcafStatusCode
      • Payantis.SystemParameter.TerminalPinCapability
      • Payantis.SystemParameter.TerminalType
      • Payantis.SystemParameter.TransactionCode
      • Payantis.SystemParameter.TransactionDomain
      • Payantis.SystemParameter.TransactionFlowCode
      • Payantis.SystemParameter.TransactionNetwork
      • Payantis.SystemParameter.TransactionStatus
  • Acquiring API
    • Payantis Acquiring
    • Merchant
      • Create Merchant
      • Update Merchant
      • Delete Merchant
      • Get Merchant
      • List Merchants
      • List Merchant Transactions
      • Get Linked Merchant Transactions
      • Get Merchant Terminals
      • Upsert Merchant Contact
      • Upsert Merchant Identity
      • Upsert Merchant Address
      • Upsert Merchant Velocity
      • Delete Merchant Contact
      • Delete Merchant Identity
      • Delete Merchant Address
      • Delete Merchant Velocity
      • Create Merchant User Note
      • List Merchant User Notes
      • Get Allowable Merchant Status Reasons
      • Get Merchant Transaction QR Data
    • Terminal
      • Create Terminal
      • Update Terminal
      • Delete Terminal
      • Get Terminal
      • List Terminals
      • Change Terminal Allowed Currencies
    • Restriction
      • Create Restricted BIN
      • Create Restricted Country
      • Create Restricted Card
      • List Restricted BINs
      • List Restricted Countries
      • List Restricted Cards
      • Update Restricted BIN
      • Update Restricted Country
      • Update Restricted Card
      • Delete Restricted BIN
      • Delete Restricted Country
      • Delete Restricted Card
    • Batch
      • Get Batch
      • List Batches
      • Update Batch Status
    • Terminal Auth Template
      • Create Authorization Template
      • Get Authorization Template
      • Update Authorization Template
      • Delete Authorization Template
      • List Authorization Templates
    • Terminal EOD Messages
      • Create EOD Message Template
      • Get EOD Message Template
      • Update EOD Message Template
      • Delete EOD Message Template
      • List EOD Message Templates
    • Transaction Details
      • Get Transaction Message Fields
      • Get Transaction Message Fields by IDs
    • Schemas
      • Payantis.Acquiring.Merchant.AuthTemplateResponseDto
      • Payantis.Acquiring.Merchant.BatchCurrencySummaryDto
      • Payantis.Acquiring.Merchant.BatchDto
      • Payantis.Acquiring.Merchant.ChangeTerminalAllowedCurrenciesDto
      • Payantis.Acquiring.Merchant.CreateAuthTemplateDto
      • Payantis.Acquiring.Merchant.CreateEodMessageTemplateDto
      • Payantis.Acquiring.Merchant.CreateMerchantAddressDto
      • Payantis.Acquiring.Merchant.CreateMerchantContactDto
      • Payantis.Acquiring.Merchant.CreateMerchantDto
      • Payantis.Acquiring.Merchant.CreateMerchantIdentityDto
      • Payantis.Acquiring.Merchant.CreateMerchantQrDetailsDto
      • Payantis.Acquiring.Merchant.CreateMerchantVelocityDto
      • Payantis.Acquiring.Merchant.CreateRestrictedBinDto
      • Payantis.Acquiring.Merchant.CreateRestrictedCardDto
      • Payantis.Acquiring.Merchant.CreateRestrictedCountryDto
      • Payantis.Acquiring.Merchant.CreateTerminalDto
      • Payantis.Acquiring.Merchant.EodMessageTemplateDto
      • Payantis.Acquiring.Merchant.EodMessageTemplateResponseDto
      • Payantis.Acquiring.Merchant.MerchantAddressDto
      • Payantis.Acquiring.Merchant.MerchantBasicDto
      • Payantis.Acquiring.Merchant.MerchantContactDto
      • Payantis.Acquiring.Merchant.MerchantDto
      • Payantis.Acquiring.Merchant.MerchantEcommerceDetailsDto
      • Payantis.Acquiring.Merchant.MerchantIdentityDto
      • Payantis.Acquiring.Merchant.MerchantQrDetailsDto
      • Payantis.Acquiring.Merchant.MerchantVelocityDto
      • Payantis.Acquiring.Merchant.PhysicalTerminalDeviceDto
      • Payantis.Acquiring.Merchant.RestrictedBinDto
      • Payantis.Acquiring.Merchant.RestrictedCardDto
      • Payantis.Acquiring.Merchant.RestrictedCountryDto
      • Payantis.Acquiring.Merchant.TerminalDto
      • Payantis.Acquiring.Merchant.TerminalInfoDto
      • Payantis.Acquiring.Merchant.TerminalResponseDto
      • Payantis.Acquiring.Merchant.UpdateAuthTemplateDto
      • Payantis.Acquiring.Merchant.UpdateBatchStatusDto
      • Payantis.Acquiring.Merchant.UpdateEodMessageTemplateDto
      • Payantis.Acquiring.Merchant.UpdateMerchantDto
      • Payantis.Acquiring.Merchant.UpdateRestrictedBinDto
      • Payantis.Acquiring.Merchant.UpdateRestrictedCardDto
      • Payantis.Acquiring.Merchant.UpdateRestrictedCountryDto
      • Payantis.Acquiring.Merchant.UpdateTerminalDto
      • Payantis.Acquiring.Merchant.UpsertMerchantAddressDto
      • Payantis.Acquiring.Merchant.UpsertMerchantContactDto
      • Payantis.Acquiring.Merchant.UpsertMerchantIdentityDto
      • Payantis.Acquiring.Merchant.UpsertMerchantVelocityDto
      • Payantis.Framework.EnumDto
      • Payantis.SystemParameter.Dto.AdditionalAmountDto
      • Payantis.SystemParameter.Dto.Request.CreateUserNoteRequestDto
      • Payantis.SystemParameter.Dto.Response.NoteResponseDto
      • Payantis.SystemParameter.Dto.TaxDto
      • Payantis.Transaction.Acquiring.Backend.MerchantTransactionResponseDto
      • Payantis.Transaction.Acquiring.Oltp.MerchantTransactionQrDataDto
      • Payantis.Transaction.GetMessageFieldsBatchRequestDto
      • Payantis.Transaction.GetMessageFieldsRequestDto
      • Payantis.Transaction.Issuing.Backend.CardTransactionResponseDto
      • Payantis.Transaction.MessageFieldsSummaryDto
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.AuthTemplateResponseDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.BatchDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.EodMessageTemplateResponseDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.MerchantDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.RestrictedBinDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.RestrictedCardDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.RestrictedCountryDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Acquiring.Merchant.TerminalDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.SystemParameter.Dto.Response.NoteResponseDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Transaction.Acquiring.Backend.MerchantTransactionResponseDto>
      • Volo.Abp.Application.Dtos.PagedResultDto<Payantis.Transaction.Issuing.Backend.CardTransactionResponseDto>
  • VPOS API
    • Payantis VPOS
    • Sanal POS Hata Kodları
    • Payment
      • Process 3D Secure Payment
      • Process Non-Secure Payment
    • Schemas
      • Payantis.Vpos.Domain.Shared.VposResponseStatus
      • Payantis.Vpos.PaymentStatus
      • Payantis.Vpos.Request.Payment.PaymentNonSecureRequest
      • Payantis.Vpos.Response.Payment.PaymentNonSecureResponse
      • Payantis.Vpos.SecureType
      • Payantis.Vpos.TxnType
      • Payantis.Vpos.Request.Payment.PaymentThreeDSecureRequest
      • Payantis.Vpos.Response.Payment.PaymentThreeDSecureCallbackResponse
  • Auth API
    • Get Token
    • Refresh Token
  1. Issuing API

Hassas Bilgilerin Güvenli İletimi

PCI-DSS gereği ödeme sistemlerinde hassas verilerin güvenli iletimi çok önemlidir. Bu veriler; açık kart numarası, CVV, son kullanma tarihi ve PIN'dir. Payantis Platform'da kurumdan gelen ve kuruma gönderilen bu tür bilgiler şifrelenerek iletilir.

Kurumun Açık Kart Numarasını Şifrelemesi#

Kurum, bazı durumlarda açık kart numarası ile işlem yapmak isteyebilir. Bu durumda açık kart numarasının Payantis'e gönderilmeden önce şifrelenmesi gerekmektedir. Bunun için:
1.
Payantis 2048 bit uzunluğunda bir RSA anahtar çifti üretir.
2.
Kurum, üretilen anahtarın public kısmını Get Payantis Public Key API'si alır.
3.
Kurum, bu API'den dönen public anahtarla veriyi şifreler ve Payantis'e iletir.
4.
Payantis, gelen veriyi kendi private anahtarıyla çözüp işleme alır.
Şifreleme İşleminin Uygulanması
Açık kart numarası aşağıdaki EncryptCardNo methodu ile şifrelenir. Bu methodda payantisPublicKeyInBase64 parametresi Get Payantis Public Key API'sinden gelmektedir.

Kurumun Şifreli Bilgileri Açması#

Payantis, kart numarası gibi hassas verileri açık bir şekilde saklamaz ve kurumlar ile açık şekilde paylaşmaz. Öte yandan, iş gereksinimlerine göre (örneğin sanal kart bilgilerini göstermek gibi), bu veriler kuruma şifrelenerek gönderilir. Bu şifreleme işlemi için :
1.
Kurum 2048 bit uzunluğunda bir RSA anahtar çifti üretir ve public kısmını Payantis’e iletir.
2.
Payantis bu anahtarı kendi sisteminde saklar ve hassas verileri iletirken bu anahtar ile şifreler.
3.
Kurum Payantis'ten gelen şifreli veriyi kendi private anahtarıyla çözer.
Veri Çözme İşleminin Uygulanması
Payantis'ten gelen hassas ve şifreli veri aşağıdaki DecryptData methodu kullanılarak kurum tarafından çözülebilir. Bu methodda veriyi çözme için kullanılacak anahtar olan tenantPrivateKeyInBase64 kurum tarafından daha önce üretilmiştir.

Fiziksel Kart Şifresinin Güvenli Şekilde İletilmesi#

Kart hamili, kurumun kanalları üzerinden (Çağrı Merkezi, Mobil Uygulama vb.) fiziksel kart şifresini değiştirmek istediğinde, şifre bilgisinin Payantis’e güvenli şekilde iletilmesi gerekir. Benzer şekilde, ilk kart şifresinin müşteriye SMS ile iletilmesi gereken durumlarda da şifre bilgisinin Payantis’ten kuruma güvenli şekilde aktarılması gerekir. Bu iletimlerin güvenliğini sağlamak amacıyla taraflar arasında bir anahtar seremonisi gerçekleştirilir.

Seremoni Kapsamındaki Anahtarlar#

ZMK (Zone Master Key): Anahtar transferlerinde kullanılan ana anahtardır ve Key Encryption Key (KEK) olarak görev yapar. Diğer anahtarların güvenli şekilde paylaşılmasını sağlar.
ZPK (Zone PIN Key): Kart şifrelerinin (PIN) şifrelenmesi ve çözülmesi için kullanılan anahtardır. Bu anahtar, güvenlik sebebiyle ZMK altında şifrelenmiş şekilde paylaşılır. Kurum, ZPK’yı kullanmadan önce kendi güvenlik politikalarına uygun şekilde ZMK ile çözerek (clear hale getirerek) güvenli ortamda saklamalı ve Payantis ile iletişiminde bu anahtarı kullanmalıdır.

Anahtar Seramonisi#

Anahtar seramonisinde sıra ile şu adımlar uygulanır:
1
Payantis, anahtar transferinde kullanılmak üzere kuruma özel bir ZMK üretir. Bu anahtar, güvenlik amacıyla 3 ayrı bileşen halinde kuruma iletilir. Ayrıca, bileşenlerin ve anahtarın doğruluğunun teyit edilebilmesi için KCV değerleri paylaşılır. Bu paylaşım, kurum tarafından belirtilen adreslere posta yolu ile yapılır.
2
Payantis, kart şifrelerinin şifrelenmesinde kullanılmak üzere bir ZPK üretir ve bu anahtarı ZMK altında şifreleyerek kuruma e-posta ile iletir.
3
Kurum, kendisine iletilen ZMK bileşenlerini birleştirerek ZMK’yı oluşturur ve KCV ile doğrular. Ardından, ZPK’yı ZMK kullanarak çözer (ZMK altından çıkararak clear hale getirir) ve güvenli şekilde saklar. Bu ZMK, sonraki ZPK paylaşımlarında da kullanılmaktadır.

Kart Şifrelerinin İletimi#

Kurum, kart şifresini Payantis’e iletmek istediğinde, bu şifre bilgisini ZPK kullanarak PIN block formatında şifreler ve Payantis’e gönderir. Payantis, ilgili şifre bilgisini çözerek kart şifresi güncelleme işlemini gerçekleştirir.
Kurum, müşteriye ilk kart şifresini iletmek üzere Payantis’ten şifre bilgisini talep ettiğinde, Payantis bu bilgiyi ZPK altında şifreleyerek kuruma iletir. Kurum, bu veriyi ZPK ile çözerek kendi güvenli süreçleri üzerinden müşteriye SMS ile iletir.

Örnek Uygulama#

Aşağıdaki örnek uygulamada kart şifresini şifreleme (Pin Block altına alma) ve şifreli kart şifresini çözme fonksiyonları bulunmaktadır. Uygulamada anahtarlar statik olarak verilmiştir, bu anahtarlar güvenli bir ortamda saklanmalı ve uygulamada bu güvenli ortamdan alınarak kullanılmalıdır. Uygulamadaki başlıca methodlar şöyledir:
GenerateZmkFromComponents: ZMK bileşenlerinden ZMK'yı elde eder.
DecryptZpkUnderZmk: ZMK altında gönderilen ZPK anahtarının açık halini elde eder.
GenerateEncryptedPinBlock: Açık haldeki kart şifresinden Pin Block oluşturur ve bu Pin Block'u ZPK anahtarı ile şifreler. Bu sayede pin bilgisi güvenli şekilde iletilebilir hale gelir.
DecryptEncryptedPinBlock: Şifreli haldeki kart şifresinin açık halini elde eder.
Previous
Kural Motoru
Next
Customer
Built with