Card Issuing (Marqeta)
As an example of how the Integration with a third party can cover the Card Issuing use cases SDK.finance has successfully integrated with the card issuing provider – Marqeta.
Please note, that not all of the available card-issuing use cases are covered on the testing environment. The final list of services should be determined by the agreement between the provider (Marqeta) and the Client.
The SDK platform offers a service for establishing a connection with Marqeta. It includes a set of fundamental external APIs designed for integrating essential operations related to card issuance, such as creating Card products, Users, Cards, and managing status transitions.
Additionally, the SDK platform provides a set of internal APIs for generating basic objects within the SDK system, facilitating the backend processes involved in card issuance and management. These internal APIs can be utilized not only for backend operations but also for frontend applications, whether web or mobile.
In essence, the SDK system has implemented a foundational framework for technical integration, encompassing key functionalities for both physical and virtual card issuance, as well as subsequent card management. The specific features available from the vendor (Marqeta) to the client (in terms of source code or cloud-based services) depend on the client’s requirements and agreements with the vendor.
The SDK system streamlines the integration process with the provider, offering a swift pathway for clients to connect with Marqeta through the SDK system.
To start using Marqeta as a Card Issuing Provider for your product:
- Make an Agreement with the provider. It is required for the client to make an agreement with the service provider. All features that will be available from the vendor (Marqeta) to the client (for both, the source code or cloud clients) depend on the client’s needs and their agreements with the vendor (Marqeta).
- Get credentials from the provider. After the agreement was made, the vendor will provide you with the credentials to access the Test and Production Environment. These accesses should be used to set up the connection with the provider.
- Set up the provider connectivity settings in the SDK platform. Set up the system configuration file.
- Set up the commission profile. Specify the provider and total commission for the operation “Issue card” in the Contract/Provider Commission settings.To activate the “Issue card” operation for the User on a specific contract this operation must be added to the user`s Contract and the provider and system commission must be specified.To add the “Issue card” in the Contract from Admin’s UI:
- Open the User`s Contract/Provider commission and press “Add provider”
- Select “Marqeta Card Issuing” and currency.
- Set up Provider and Total commission.
- Set up Limits if needed.
- Set up the gate product in the SDK platform.
API for Card Issuing:
Card Issuing flow
1. The user of the SDK platform initiates the issue of a card (virtual or physical) within the front-end app (web or mobile).
2. Front-end uses the API calls and creates the Business Process in the SDK system according to the chosen conditions. As a result, the Business Process triggers integration service and makes requests (via provider’s REST API) for the issue of a card to the service provider’s system.
3. On the provider’s side, a user account and a card is created, with a selected schema and program (according to the agreement between the client and the provider) and is linked to the user`s profile. At this stage, Marqeta as a service provider performs all necessary communication with the card network or bank, which owns the card and which provides the issue (in accordance to the agreement and card product settings).
4. After creation, the card ID is returned to the SDK system from the provider, and the system links the card to the profile of the initial user in the SDK system.
5. As a result, the user in the SDK system can see the issued card, and this card is linked to the user’s profile. The user has access to the card and card management functions (de/activate, un/block, un/freeze, set limits, etc.). User also has access to the payment option using this card, to top up the accounts or make payments (under condition that there is a configured card payments provider in the system).