POST - Create Cards

Cards are a type of financial instrument.

You can create virtual or physical cards that are issued to the consumer or corporate identity. A card created in prepaid mode has its own balance, whereas a card created in debit mode does not have its own balance but taps into the balance of its parent managed account.

Create a card


Production End point

https://api.up2.money/cards/request

Headers

Security

REQUEST BODY SCHEMA: application/json

🔐 API SECRET: x-secret

Add YWJjMTIzIQ== in x-secret in headers.

Header parameter name: x-secret


🔏 HTTP: Authorization-key

The authentication token representing the user. This will be included in the login response object as token.

Header parameter name: Authorization-key


Payload Details


profileId (required)

string (ProfileId) ^[0-9]+$

The profile Id which a specific identity, instrument or transaction type is linked to. Profiles contain configuration and determine behavioural aspects of the newly created transaction, for example, fees that may apply.

You can have one or more profiles linked to your application, and these can be used to drive different behaviours according to your product's needs.

tag

string (Tag) <= 50 characters ^[a-zA-Z0-9_-]+$

The tag field is a custom field that can be used to search and filter.

friendlyName (required)

string [ 1 .. 50 ] characters The friendly name for the card.

nameOnCard (required)

string [ 1 .. 27 ] characters ^[a-zA-Z0-9ßÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØŠÙÚÛÜŸÝŽĄĆČĎĘĹĽŁŃŇŐŔŚȘȚŤŰŹŻäácdæéëeíllnöoøôrštüúuuýž\-^. '-]*$ The card holder's name for the card.

This may be verified by merchants when the card is used online. For Physical cards, this field will be printed on the card. The maximum characters allowed will depend on the design chosen and will be provided to you by us when setting up your plastic cards.

nameOnCardLine2

string <= 27 characters ^[a-zA-Z0-9ßÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØŠÙÚÛÜŸÝŽĄĆČĎĘĹĽŁŃŇŐŔŚȘȚŤŰŹŻäácdæéëeíllnöoøôrštüúuuýž\-^. '-]*$ Line 2 of the 'name on card' field. For Physical cards, this field will be printed on the card. The maximum characters allowed will depend on the design chosen and will be provided to you by Weavr when setting up your plastic cards.

billingAddress (required)

object (Address)

The billing address set for the card holder. This may be verified by merchants when the card is used online.

digitalWallets

object (DigitalWallets) The Card Tokenisation details

authForwardingDefaultTimeoutDecision

string

Default decision for auth forwarding on timeout

Enum: "APPROVE" "DECLINE"

threeDSecureAuthConfig

object (ThreeDSecureAuthConfig)

3DS details for card creation

mode (required)

string // "PREPAID_MODE" OR "DEBIT_MODE"

The card can be created in prepaid mode or debit mode.

  • A prepaid mode card has its own balance and can have funds transferred to or from it.

  • A debit mode card does not have its own balance but will be able to spend funds belonging to its parent managed account, subject to a configurable spend limit.

currency (required)

string (Currency) = 3 characters ^[A-Z]*$ The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

parentManagedAccountId (required for prepaid mode)

string^[0-9]+$

Id of the managed account holding funds which the managed card will access, up to a configurable spend limit.


Payload


{
    "type": "consumer",
    "data": {
        "profileId": "111324375100817512", 
        "friendlyName": "friendly aaa",
        "currency": "USD",
        "nameOnCard": "name on card",
        "cardholderMobileNumber": "+35699112233",
        "billingAddress": {
            "addressLine1": "addressLine1",
            "addressLine2": "addressLine2",
            "city": "city",
            "postCode": "SPB1111",
            "state": "state",
            "country": "MT"
        },
        "digitalWallets": {
            "pushProvisioningEnabled": false,
            "walletsEnabled": false,
            "artworkReference": "string"
        },
        "tag": "tag",
        "mode": "PREPAID_MODE"
    }
}

Sample Request


curl --location 'https://api.up2.money/cards/request' \
--header 'x-secret: YWJjMTIzIQ==' \
--header 'Authorization-key: YOUR_AUTHORIZATION_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
    "type": "consumer",
    "data": {
        "profileId": "111324375100817512", 
        "friendlyName": "friendly aaa",
        "currency": "USD",
        "nameOnCard": "name on card",
        "cardholderMobileNumber": "+35699112233",
        "billingAddress": {
            "addressLine1": "addressLine1",
            "addressLine2": "addressLine2",
            "city": "city",
            "postCode": "SPB1111",
            "state": "state",
            "country": "MT"
        },
        "digitalWallets": {
            "pushProvisioningEnabled": false,
            "walletsEnabled": false,
            "artworkReference": "string"
        },
        "tag": "tag",
        "mode": "PREPAID_MODE"
    }
}

'

Sample Response


{
  "type":"consumer" // or "corporate"
  "data":{
    "profileId": "string",
    "tag": "string",
    "friendlyName": "string",
    "nameOnCard": "string",
    "nameOnCardLine2": "string",
    "cardholderMobileNumber": "string",
    "billingAddress": {
      "addressLine1": "string",
      "addressLine2": "string",
      "city": "string",
      "postCode": "string",
      "state": "string",
      "country": "st"
    },
    "digitalWallets": {
      "pushProvisioningEnabled": true,
      "walletsEnabled": true,
      "artworkReference": "string"
    },
    "authForwardingDefaultTimeoutDecision": "APPROVE",
    "threeDSecureAuthConfig": {
      "linkedUserId": "string",
      "primaryChannel": "OTP_SMS",
      "fallbackChannel": "OTP_SMS"
    },
    "mode": "PREPAID_MODE", // "PREPAID_MODE" OR "DEBIT_MODE"
    "externalData": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "currency": "str"
    // "parentManagedAccountId": "string" - Required in case of {mode:"DEBIT_MODE"}
  }
}

Response Status


200 Success

401 Unauthorized - Your credentials or access token are invalid.

403 Forbidden - Access to the requested resource or action is forbidden.

403 Forbidden - Access to the requested resource or action is forbidden.

errorCode: Enum: STEP_UP_REQUIRED ACCESS_TOKEN_REQUIRED

409 Conflict

errorCode: Enum: "PAYMENT_MODEL_CONSTRAINTS_VIOLATED" "PROFILE_NOT_FOUND" "PROFILE_INACTIVE" "CURRENCY_NOT_SUPPORTED_BY_PROFILE" "PROVIDER_NOT_SUPPORTED_BY_PROFILE" "INSTRUMENT_NOT_FOUND" "COUNTRY_INVALID" "OWNER_IDENTITY_NOT_VERIFIED" "IDENTITY_LIMITS_EXCEEDED" "PROGRAMME_LIMITS_EXCEEDED" "INNOVATOR_LIMITS_EXCEEDED" "SYSTEM_LIMITS_EXCEEDED" "PARENT_MANAGED_ACCOUNT_NOT_ACTIVE" "PARENT_MANAGED_ACCOUNT_NOT_FOUND" "WALLETS_NOT_ENABLED" "WALLET_ARTWORK_NOT_SPECIFIED" "WALLET_ARTWORK_INVALID" "IDENTITY_KYC_LEVEL_STEPUP_REQUIRED" "PUSHPROVISIONING_NOT_ENABLED" "AUTH_FORWARDING_NOT_ENABLED" "THREEDS_DETAILS_NOT_PROVIDED" "USER_NOT_ENROLLED_FOR_BIOMETRICS" "BIOMETRIC_AUTHENTICATION_NOT_SUPPORTED" "LINKED_USER_NOT_FOUND" "USER_INACTIVE" "INVALID_CHANNELS_SELECTED" "INVALID_PRIMARY_CHANNEL_SELECTED" "USER_MOBILE_NUMBER_DOES_NOT_EXIST" "MORE_THAN_ONE_MOBILE_NUMBER_PROVIDED" "MOBILE_NUMBER_ALREADY_EXISTS" "TWILIO_AUTHY_AUTHENTICATION_NOT_SUPPORTED" "USER_NOT_ENROLLED_FOR_TWILIO_AUTHY"

429 Too many requests.

500 Internal Server Error - There is a problem with the server. Please try again later.

503 Service Unavailable - We're temporarily offline for maintenance. Please try again later.


E-nums


STEP_UP_REQUIRED

Current session is expired, Call stepup api to create new session

ACCESS_TOKEN_REQUIRED

Issue with your token (Invalid or expired)

Last updated