Skip to content

<< Back to Modular Home

Sequence diagrams - stored card using a Network Token

Customer Initiated Transactions (CITs)

You can create the Network Payment Token (NPT) either before the initial plain card or Worldpay token payment is made, or after the payment. Examples of both are below:

Creating an NPT (CIT) - before payment

Create an NPT before the payment using either API only or the Checkout SDK.

As NPT creation is not guaranteed you must have a fallback to a Worldpay Token.

Card payment via the Checkout Web SDK, including the creation of a verified token and a Network Payment Token (before payment).

Using:

  1. Checkout SDK
  2. Verified Token API - for Worldpay Token creation
  3. Tokens API - to convert the Worldpay token to a network token
  4. Card Payments API
Card_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCard_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCheckout JS added to pageIncludes sessionWorldpay Token returnedIncludes Worldpay TokenNetwork Payment Token (NPT) number returnedIncludes Network Payment Token (NPT) numberCryptogram for Network Payment Token (NPT) returnedSet `customerAgreement.type: cardOnFile` `customerAgreement.storedCardUsage: first` / Includes Network Payment Token (NPT) number and cryptogramClick PayCreate sessionReturn sessionPayVerified token requestVerified token responseCreate NPTCreate NPT responseProvision cryptogram for NPTProvision cryptogram responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement response
Card_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCard_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCheckout JS added to pageIncludes sessionWorldpay Token returnedIncludes Worldpay TokenNetwork Payment Token (NPT) number returnedIncludes Network Payment Token (NPT) numberCryptogram for Network Payment Token (NPT) returnedSet `customerAgreement.type: cardOnFile` `customerAgreement.storedCardUsage: first` / Includes Network Payment Token (NPT) number and cryptogramClick PayCreate sessionReturn sessionPayVerified token requestVerified token responseCreate NPTCreate NPT responseProvision cryptogram for NPTProvision cryptogram responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement response

Creating an NPT (CIT) - after payment

Create an NPT after the payment using either API only or the Checkout SDK.

Card payment via the Checkout Web SDK, including the creation of a verified token and a Network Payment Token (after payment).

Using:

  1. Checkout SDK
  2. Verified Tokens API - for Worldpay Token creation
  3. Card Payments API
  4. Tokens API - to convert the Worldpay token to NPT
Card_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCard_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCheckout JS added to pageIncludes sessionWorldpay Token returnedSet `customerAgreement.type: cardOnFile`, `customerAgreement.storedCardUsage: first` Includes Worldpay TokenIncludes Worldpay TokenNetwork Payment Token (NPT) number returnedClick PayCreate sessionReturn sessionPayVerified token requestVerified token responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement responseCreate NPTCreate NPT response
Card_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCard_Payments_API3DS_APITokens_APIVerified_Token_APICheckout_SessionsMerchant_BackendMerchant_FrontendBrowserCheckout JS added to pageIncludes sessionWorldpay Token returnedSet `customerAgreement.type: cardOnFile`, `customerAgreement.storedCardUsage: first` Includes Worldpay TokenIncludes Worldpay TokenNetwork Payment Token (NPT) number returnedClick PayCreate sessionReturn sessionPayVerified token requestVerified token responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement responseCreate NPTCreate NPT response

Using an NPT (CIT)

  • The NPT cryptogram and number can be from a different Payment Service Provider.
  • Worldpay can only provision cryptograms for NPTs it has originally created.

Using an existing NPT to provision a new cryptogram and make the payment

Using:

  1. Tokens API - to provision the NPT cryptogram
  2. Card Payments API
Card_Payments_APITokens_APIMerchant_BackendMerchant_FrontendBrowserCard_Payments_APITokens_APIMerchant_BackendMerchant_FrontendBrowserIncludes Network Payment (NPT) numberCryptogram for Network Payment Token (NPT) returnedSet `customerAgreement.type: cardOnFile`, `customerAgreement.storedCardUsage: subsequent` Includes Network Payment Token (NPT) number and cryptogramPayProvision Cryptogram for NPTProvision cryptogram responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement response
Card_Payments_APITokens_APIMerchant_BackendMerchant_FrontendBrowserCard_Payments_APITokens_APIMerchant_BackendMerchant_FrontendBrowserIncludes Network Payment (NPT) numberCryptogram for Network Payment Token (NPT) returnedSet `customerAgreement.type: cardOnFile`, `customerAgreement.storedCardUsage: subsequent` Includes Network Payment Token (NPT) number and cryptogramPayProvision Cryptogram for NPTProvision cryptogram responsecustomerInitiatedTransactions requestcustomerInitiatedTransactions responseSettlement requestSettlement response

Merchant Initiated Transactions

Using an existing NPT to make a subsequent payment (MIT)

An NPT cryptogram is not required for Merchant Initiated Transactions

Using:

  1. Card Payments API
IssuersCard_Payments_APIMerchant_BackendMerchant_FrontendBrowserIssuersCard_Payments_APIMerchant_BackendMerchant_FrontendBrowserSet `customerAgreement.type: subscription`, `customerAgreement.storedCardUsage: subsequent` Includes Network Payment Token (NPT) numberClick PayPaymerchantInitiatedTransactions requestmerchantInitiatedTransactions responseSettlement requestSettlement response
IssuersCard_Payments_APIMerchant_BackendMerchant_FrontendBrowserIssuersCard_Payments_APIMerchant_BackendMerchant_FrontendBrowserSet `customerAgreement.type: subscription`, `customerAgreement.storedCardUsage: subsequent` Includes Network Payment Token (NPT) numberClick PayPaymerchantInitiatedTransactions requestmerchantInitiatedTransactions responseSettlement requestSettlement response