Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Home
  • New Features

Creating Card Transactions via Open API

Written by Radha Pathi Reddy

Updated at June 5th, 2026

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Getting Started
  • Release Notes
    Coming Soon 2026 2025 2024 2023 2022 2021 2020
  • New Features
  • Videos
  • User Guides
  • Mobile Guides
  • Tips & Tricks
  • Payer Guides
  • Administrator Guides
+ More

Table of Contents

Before you begin A Card Program must exist Bill Cycles must be configured Step 1 - Create a Card Program Step 2 - Set up Bill Cycles Step 3 - Send transactions via the Open API Step 4 - View transactions in ProSpend Step 5 - Import transactions Step 6 - Assign claims to cardholders

 

ProSpend's Open API allows integrated card providers to send card transactions directly into ProSpend, without a daily file feed. Once received, transactions appear in the Card Transactions page and can be imported as expenses and claims for cardholders. This guide walks through the full setup and flow - from configuring a Card Program to viewing imported transactions.

Before you begin

Two things need to be in place before any transactions can be sent or processed. Both are admin tasks done inside ProSpend.

A Card Program must exist

Card Programs define the source and configuration for a card feed. Every transaction sent via the API must reference a valid Card Program code.

Set one up in Step 1 below →

Bill Cycles must be configured

Bill Cycles define the statement periods your transactions will be grouped into. Transactions without a matching bill cycle cannot be correctly assigned to a period.

Set them up in Step 2 below →

Step 1 - Create a Card Program

A Card Program acts as the configuration anchor for your card feed. It tells ProSpend what type of card is being used, and - crucially for the API - what Card Program Code to expect on incoming transactions.

Where to find it

Go to Treasury > Card Program Setup in the navigation menu. From here you can view, create, and manage all card programs. Please reach out to your account manager for this to be enabled in your ProSpend instance.

Creating a new program

Click Add to open the creation form. Fill in all the mandatory field and save the changes. Once saved, the program will appear in the list with an Active status. You can deactivate or archive it later without losing data.

Full Card Programs documentation

Step 2 - Set up Bill Cycles

Bill Cycles define the billing periods for your Card Program - essentially the statement windows that transactions fall into. Each Card Program maintains its own independent set of bill cycles.

How to access Bill Cycle Management

From the Card Program list, click the Manage Bill Cycles. This opens the Bill Cycle Management page for that specific program.

Creating bill cycles

Click Add New Bill Cycle in the top right. You can create cycles one at a time or in bulk -

  • Monthly - generates cycles based on a monthly date range. The system handles months with fewer days and weekend date adjustments automatically.
  • Weekly - generates 7-day cycles from a chosen start date.

Before saving, use the Preview option to review the generated periods, check for date continuity, and catch any gaps or overlaps before they're committed.

Bill cycle statuses

Each cycle is tracked with one of three statuses -

  • Open - the current active billing period
  • Scheduled - future billing periods created in advance
  • Closed - completed periods

Create bill cycles ahead of time for future periods. Bulk creation lets you generate several months at once - future cycles are automatically set to Scheduled status.

 

The system validates cycles as you go - blocking overlapping periods and flagging gaps with visible warnings. Only Open and Scheduled cycles can be edited after creation.

Full Bill Cycle Management documentation

Step 3 - Send transactions via the Open API

With the Card Program and bill cycles in place, your integration can begin posting transactions to ProSpend.

Endpoint

POST /beta/company/{id}/transaction

 

Key fields

The following fields are supported in the transaction payload -

Field Description Optional
transactionId Unique identifier of the transaction as provided by the external card or banking provider. It is used for duplicate checking for the transactions within the same card program.  
transactionDate Date when the transaction occurred on the card/bank account (purchase date).  
postingDate Date when the transaction was posted/settled by the card or banking provider.  
merchantName Name of the merchant where the transaction occurred, as provided by the card or banking provider.  
mcc Merchant Category Code associated with the transaction.  
transactionAmount Monetary amount of the transaction in the billing (card) currency; includes sign (positive/negative).  
currencyCode ISO 4217 currency code in which the transaction is billed (e.g. “AUD”, “USD”).  
foreignCurrencyAmount Monetary amount of the transaction in the original purchase currency (if different from the billing currency). Yes/Required if foreignCurrencyCode is present
foreignCurrencyCode ISO 4217 currency code for the original transaction currency (e.g. “EUR” if the card is billed in AUD but the purchase was in EUR). Yes/Required if foreignCurrencyAmount is present
cardHolderName Name of the card holder associated with the card used for this transaction.  
cardId Internal identifier of the card within ProSpend. Yes
cardSuffix Masked or partial card number (last 6 digits) identifying the specific card.   
externalCardId Identifier of the card as provided by the external provider. Yes
transactionStatus

Status of the transaction in the external provider’s lifecycle.

Valid statuses - COMPLETED

 
cardProgramCode Code identifying the card program within ProSpend. Reach out to ProSpend for more information on this.  
cardProgramType Type/category of the card program (e.g. “AMEX”, “”Visa", “MasterCard”, etc.), used to distinguish different provider/program behaviours. Reach out to ProSpend for more information on this.  

Duplicate detection - ProSpend deduplicates transactions using a combination of transactionId and cardProgramCode. This means the same transaction ID can safely exist across multiple card programs without conflict.

 

Validation errors - All required fields are validated on submission. Descriptive error responses are returned for missing or invalid data - review these in your integration logs to diagnose issues quickly.

 

Full Open API documentation

Step 4 - View transactions in ProSpend

Transactions sent via the API are stored in the Card Transactions page (previously called Virtual Card Transactions). This page has been updated to support multiple card program types in a single view.

Where to find it

Navigate to the Card Transactions page from the main menu. If your site has multiple card program types configured, you'll see a Select Card Program Type dropdown at the top - select the relevant type to filter the transaction list. If only one type exists, it will be selected automatically.

What you'll see

Transactions sent via the Open API appear alongside any Wise Virtual Card transactions. The page currently shows Wise transactions and transactions imported via Open API. Filters and available actions adapt based on the selected card program type - for most API-sourced card programs, standard filters apply and the Export CSV action is available.

Filter values are retained when you switch between card program types, so you won't lose your search context when toggling views.

 

Card Transactions page details

Step 5 - Import transactions

Transactions in the Card Transactions page are automatically converted into card claims. The transaction import service processes the transactions and creates the corresponding card claims for cardholders to review and submit.

How importing works

Once transactions are visible in the Card Transactions page, the import service matches each transaction to a cardholder, links it to the correct bill cycle, and creates a card claim. The cardholder can then complete, code, and submit the claim through the normal expense workflow.

Bill cycles must cover the posting date (transaction date if posting date isn't present). If a transaction's date falls outside any configured bill cycle for the Card Program, it cannot be correctly assigned. Make sure bill cycles are created and current before transactions arrive.

 

Card Transactions Import Service details

Step 6 - Assign claims to cardholders

After transactions are imported, ProSpend attempts to match each card claim to a known cardholder. If a card has been seen before, it will be linked automatically. If the card is new to the system, the claim will remain unlinked until an admin assigns it.

Where to manage this

Go to Claims > Bill Cycle. The Bill Cycle list shows all statement periods, with the current period marked as Open and previous periods as Closed. Any period with unlinked claims will show an Unlinked Claims count - click into the relevant bill cycle to review them.

Assigning an unlinked claim

When a transaction arrives for a card ProSpend hasn't seen before, the system creates a claim but cannot determine who it belongs to. Inside the bill cycle, these claims appear with a Please Assign option. Click it to select the correct claimant from your user list.

Once a claim is assigned, ProSpend creates a card record for that claimant in their profile. All future transactions from the same card will be linked to them automatically - you only need to assign a card once.

 

New card email notifications

ProSpend can notify nominated payers or admins by email when a transaction arrives for an unrecognised card. To enable this, go to the relevant user's profile as an admin, scroll to the bottom of the screen, and tick Card Management Emails, then save.

Closing the bill cycle

Once all transactions for a statement period have been imported and all claims are assigned, close the bill cycle from the Bill Cycle page. Closing it sends an email to all claimants in that cycle, letting them know they can now complete coding and submit their claims for approval. Claimants can access and work on their claims at any time, but cannot submit until the bill cycle is closed.

Full Bill Cycle admin guide

card processing api transactions

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Card Transactions
  • Card Programs
  • Card Claim

Copyright 2026 – ProSpend Pty Ltd.

Expand