Card push provisioning

Card push provisioning refers to the creation of a secure digital "copy" of a preexisting card (either physical or virtual). The "copy" is then added to a Apple Pay or Google Pay wallet.

To do this, call the respective endpoint for Apple Pay or Google Pay:

Note that you must retrieve the following information from Apple or Google and then provide it to Solaris via the API:

Apple Pay

  • nonce: A one-time-use nonce provided by Apple. You must hex-encode this value before providing it to the API.
  • nonce_signature: Nonce signature provided by Apple. You must hex-encode this value before providing it to the API.
  • certificates: An array of leaf and sub-CA certificates provided by Apple. Each object contains a DER-encoded X.509 certificate, starting with the leaf and followed by the sub-CA. You must encode this value in Base64 format before providing it to the API.

Google Pay

  • client_wallet_account_id: Unique 24-byte identifier for each instance of a [Android user, Google account] pair wallet. The ID is computed as a keyed hash of the Android user ID and the Google account ID. The key to this hash lives on Google's servers, and the wallet ID is created during user setup as an RPC.
  • client_device_id: Stable identifier for a physical Android device. Google refers to this attribute as a "Stable hardware ID" in their SDK documentation. The method getStableHardwareId describes how you can retrieve this value.
  • client_app_id: Unique identifier for the client application. Use value SolarisPushProvisioning.