VRPlatformVRPlatform
TransactionsTemplates

/transactions/recurring-templates

List recurring transaction templates with server-side search and structured filters.

Required scope: transactions:read

GET
/transactions/recurring-templates
X-API-Key<token>

API key provided in dashboard

In: header

Query Parameters

uniqueRefs?string

Comma-separated recurring transaction template unique refs.

Formatvrp-csv
search?string
accountId?string

Payment account or transaction-line account ID.

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
contactId?string

Vendor/contact ID.

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
listingIds?string

Comma-separated listing IDs assigned to template lines.

listingScope?string

Controls listingIds filter expansion. withChildren includes direct child listings; exact only matches the supplied listing IDs.

Value in"exact" | "withChildren"
frequency?string
Value in"daily" | "weekly" | "monthly" | "yearly"
dateRange?string

Date range string. Accepted syntax: YYYY, YYYY-MM, YYYY-MM-DD, or range YYYY-MM-DD...YYYY-MM-DD (legacy comma separator also accepted). Single values expand to the full year, month, or day.

Formatvrp-date-range
isDateRangeEndInclusive?boolean

Whether the end date in dateRange or paidAtRange is treated as inclusive (true) or exclusive (false).

Defaulttrue
amount?string

Filters the returned stored signed amount in integer cents; accepts comparisons and ranges.

Match^(?:(?:>=|<=|>|<)?-?\d+|-?\d+\.\.\.-?\d+)$
limit?integer
Default100
Range1 <= value <= 250
page?integer
Range1 <= value <= 9007199254740991
offset?integer
Range0 <= value <= 9007199254740991

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.vrplatform.app/transactions/recurring-templates"
{
  "data": [
    {
      "id": "string",
      "status": "active",
      "uniqueRef": "string",
      "description": "string",
      "date": "string",
      "currency": "string",
      "amount": 0,
      "pattern": {
        "frequency": "daily",
        "interval": 0,
        "weekDays": [
          0
        ],
        "monthDays": [
          0
        ],
        "months": [
          0
        ],
        "count": 0,
        "endDate": "string"
      },
      "paymentStatus": "unpaid",
      "patternFormatted": "string",
      "nextTransactionInstanceAt": "string",
      "instancesCount": 0,
      "account": {
        "id": "string",
        "name": "string",
        "uniqueRef": "string",
        "status": "active"
      },
      "contact": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "name": "string",
        "firstName": "string",
        "uniqueRef": "string",
        "shortRef": "string",
        "email": "user@example.com",
        "type": "owner"
      },
      "lines": [
        {
          "uniqueRef": "string",
          "description": "string",
          "assignment": "accountsPayable",
          "amount": -9007199254740991,
          "ownerStatementId": "eccddabd-554b-48ab-a66d-28a57ff66fa9",
          "matchReservationConfirmationCode": "string",
          "matchReservationStripeGuestRef": "string",
          "matchReservationProcessorBookingRef": "string",
          "matchLineTypeClassification": "string",
          "id": "string",
          "issues": [
            {
              "code": "unassignedAccount",
              "severity": "error",
              "context": {
                "lineType": "string"
              }
            }
          ],
          "recurringTemplate": {
            "id": "string"
          },
          "total": 0,
          "listing": {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "name": "string",
            "uniqueRef": "string",
            "shortRef": "string"
          },
          "reservation": {
            "id": "string",
            "shortRef": "string",
            "confirmationCode": "string",
            "uniqueRef": "string",
            "status": "booked",
            "checkIn": "string",
            "checkOut": "string"
          },
          "account": {
            "id": "string",
            "name": "string",
            "uniqueRef": "string",
            "status": "active"
          },
          "party": "owners",
          "contact": {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "name": "string",
            "firstName": "string",
            "uniqueRef": "string",
            "shortRef": "string",
            "email": "user@example.com",
            "type": "owner"
          },
          "matchStatus": "string",
          "appliedAmount": {
            "taxRate": {
              "id": "string",
              "name": "string",
              "basisPoints": 100000
            }
          },
          "markup": {
            "amount": -9007199254740991,
            "taxBehavior": "excluded",
            "taxRate": {
              "id": "string",
              "name": "string",
              "basisPoints": 100000
            }
          },
          "lock": {
            "status": "locked",
            "booksClosed": {
              "date": "string"
            },
            "ownerStatement": {
              "ids": [
                "497f6eca-6276-4993-bfeb-53cbbbba6f08"
              ]
            },
            "reconciled": {
              "bankRecordIds": [
                "497f6eca-6276-4993-bfeb-53cbbbba6f08"
              ]
            },
            "statementPeriod": {
              "hits": [
                {
                  "listingId": "8c73d933-f7ed-437e-9da1-caac95adc1ae",
                  "txnAt": "string",
                  "openFrom": "string"
                }
              ]
            }
          }
        }
      ],
      "issues": [
        {
          "code": "missingInstances",
          "severity": "warning",
          "context": {
            "dates": [
              "string"
            ]
          }
        }
      ],
      "operations": {
        "counts": {
          "total": 9007199254740991,
          "queued": 9007199254740991,
          "running": 9007199254740991,
          "completed": 9007199254740991,
          "failed": 9007199254740991
        },
        "items": [
          {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "type": "ach-verification",
            "status": "queued",
            "resource": {
              "type": "bank-rule",
              "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
              "role": "source",
              "url": "http://example.com"
            },
            "failure": {
              "code": "csvBlankHeader",
              "message": "CSV contains a blank header"
            },
            "initiator": {
              "type": "user",
              "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
            },
            "createdAt": "2024-01-15T12:30:00.000+00:00",
            "startedAt": "2024-01-15T12:30:00.000+00:00",
            "finishedAt": "2024-01-15T12:30:00.000+00:00"
          }
        ]
      }
    }
  ],
  "pagination": {
    "limit": 100,
    "page": 1,
    "total": 0,
    "totalPage": 0,
    "nextPage": 0
  }
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "MISDIRECTED_REQUEST",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": {
    "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
    "dataRegion": "ap",
    "apiBaseUrl": "http://example.com"
  }
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}