Card issuing tutorial
Moov enables you to instantly issue virtual cards on the Visa network, empowering a broad range of embedded spending and expense management solutions such as:
- Replacing traditional checks for bill payments
- Providing rapid access to funds from merchant processing
- Facilitating immediate payments to vendors
Key players
For the purposes of this guide, we’ll assume you are a developer building a platform with the following players:
- Your Moov account: Your platform that enables your customers to accept payments and use those funds for business-related purchases
- Customer: Any business that will utilize the virtual card to make payments using funds from its Moov wallet
Prerequisites
This guide assumes that you have onboarded your business customers. To learn more about onboarding, read our hosted onboarding guide.
We also assume that your customer’s Moov wallet has already been funded with a balance. This can be accomplished through:
- A bank-to-wallet transfer
- Funds that have accumulated in your wallet from accepting card payments
Read our wallets guide for more information on funding a wallet.
Your customer’s Moov wallet will be used as the funds source for the issued card.
Request a virtual card
After successfully onboarding and verifying your customer’s business, you can proceed to request a virtual card through the Moov API. This card can then be used by the customer for various business transactions.
Request parameters
To issue a virtual card, you will need to submit the following parameters:
Parameter | Description |
---|---|
fundingWalletID |
The unique identifier for the Moov wallet associated with the customer account, ensuring the card is correctly linked to the funds source. |
formFactor |
Currently, Moov supports only “virtual” cards. This parameter specifies the type of card being issued. |
authorizedUser |
Moov requires the first and last names of the card user to comply with regulatory requirements. Optionally, include the user’s birthdate to enhance the accuracy of identity verification and reduce potential false positives during regulatory screenings. |
expiration (optional) |
Set the card’s expiration date (1 to 24 months in the future). If not provided, it defaults to 24 months from the date of issuance. |
controls (optional) |
Indicate that the card should be single use or apply a maximum per-transaction amount limit. |
|
|
Once the virtual card has been issued, the customer can then use the card to make purchases within the amount of their wallet balance.
Optional card controls
You can limit the usage of an issued card by setting controls in the card creation request. Controls can only be applied during the initial card creation. The following controls are currently supported:
singleUse
: If true, the card closes after the first successful authorization.velocityLimits
: Sets spending limits per time interval. Currently, only per-transaction limits are supported.
The following example demonstrates a card configured to close after the first successful authorization (singleUse
) and enforces a per-transaction spending limit of $50.00.
|
|
Authorized user screening
To comply with anti-money laundering (AML) regulations, Moov conducts regulatory screenings as part of the card issuing process. If the screening flags a potential match on regulatory watch lists, the card will enter the pending-verification
state in the response from the initial create a spending card POST endpoint.
To address this, you can submit the authorizedUser.birthDate
through the update a spending card PATCH endpoint if not initially provided, to help clear any discrepancies.
View and use card details
Once an issued card is in an active state, your customer can securely access the full PCI-compliant card details for making transactions through the Issued card Drop, a secure interface for displaying sensitive card information.
|
|
View issued card authorizations
Each time a card is used to make a purchase from a merchant, Moov processes the authorization request in real time. The outcomes of these requests can be tracked through the card authorization API.
|
|
Below we show an example of the card authorization LIST
response:
|
|
View completed card transactions
When a pending authorization is successfully captured and funds have settled, a card transaction resource is created. This indicates that the funds related to that transaction have been moved. We retain details from the original authorization for reconciliation and tracking purposes.
You can list all card transactions associated with a particular Moov account by using the list card transactions GET
endpoint as shown below:
|
|
Here’s an example of a completed card transaction:
|
|