Finance API
Overview
This page covers the methods and endpoints associated with finance operations. With the Finance API you can access finance details and lists, and manage invoices, credit, and payment.
Authentication
Use the following header parameters for all requests:
Headers | |
---|---|
Authentication string required | Authentication bearer token See Authentication Guide |
X-IAA-OW-ID integer required | Organization Worskpace ID Header |
Finance Details
Get Customer Finance Details
GET /api/v3/fa/customer/financial-detailsGet an overview of a customer's finance details.
Query Parameters | |
---|---|
owId integer | Organization Workspace ID |
isFinanceRequest boolean | Represents whether request came from finance tab in customer app For Customer Management Tab: false For Finance Tab: true |
year integer | Year for data |
Resource Properties
pendingCampaigns integer | Number of Campaigns in pending status (see Campaign API for more info on statuses) |
runningCampaigns integer | Number of Campaigns in running status (see Campaign API for more info on statuses) |
totalCampaigns integer | Total number of Campaigns associated with customer |
dataCost integer | Data cost applied on Campaigns of a given customer |
actualSpent integer | Amount of media spending by customer |
credits integer | Customer credits |
balance integer | Funds balance of customer |
spent integer | Total Campaign spending (media and data) by customer |
earning integer | Earnings made by organization |
- JSON
- TypeScript
{
"success": true,
"data": {
"pendingCampaigns": 15,
"runningCampaigns": 10,
"totalCampaigns": 48,
"dataCost": 0,
"actualSpent": 0,
"credits": 0,
"balance": 30430.75,
"spent": 0,
"earning": 0
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
pendingCampaigns: number;
runningCampaigns: number;
totalCampaigns: number;
dataCost: number;
actualSpent: number;
credits: number;
balance: number;
spent: number;
earning: number;
};
};
};
};
}
function GetCustomerOverview(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/customer/financial-details',
params: {
query: {
owId: `number`,
isFinanceRequest: `boolean`,
year: `number`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Payment Transactions for Organization
GET /api/v3/fa/payments/listGet a list of payment transactions for an organization.
Query Parameters | |
---|---|
status string | Status ID See Static Details List for supported values |
paymentType string | Payment type ID See Static Details List for supported values |
searchField string | Search results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
Resource Properties
isPaymentInitiatorOrg boolean | Indicates whether payment was created by logged-in organization (true) or not (false) |
paymentId integer | Payment ID |
createdByUserEmail string | Email of user who created payment |
paymentDate integer | Unix epoch timestamp of payment date, in milliseconds |
paymentAmount integer | Payment amount |
paymentStatus string | Payment Status |
paymentMode string | Payment Mode |
paymentType string | Payment Type |
invoiceId integer | Invoice ID |
modifiedAt integer | Unix epoch timestamp of modification date, in milliseconds |
bankName string | Bank associated with payment, if applicable, otherwise: null |
refundReason string | Reason for refund, if applicable, otherwise: null |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"isPaymentInitiatorOrg": true,
"paymentId": 19,
"createdByUserEmail": "jinesh.p+nonihpcust2@iqm.com",
"paymentDate": 1632076200000,
"paymentAmount": 10000,
"paymentStatus": "Rejected",
"paymentMode": "PayPal",
"paymentType": "As Fund",
"invoiceId": 0,
"modifiedAt": 1637566978000,
"bankName": null,
"refundReason": null
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 886,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "Check",
"paymentType": "Refund",
"invoiceId": 0,
"modifiedAt": 1635831910000,
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 885,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"modifiedAt": 1635831695000,
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 884,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"modifiedAt": 1635831127000,
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 883,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"modifiedAt": 1635830983000,
"bankName": null,
"refundReason": "Testing"
}
],
"totalRecords": 68,
"filteredRecords": 68
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
isPaymentInitiatorOrg: boolean;
paymentId: number;
createdByUserEmail: string;
paymentDate: number;
paymentAmount: number;
paymentStatus: string;
paymentMode: string;
paymentType: string;
invoiceId: number;
modifiedAt: number;
bankName: string | null;
refundReason: string | null;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function ListofPaymenttransactionformyOrganisation(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/payments/list',
params: {
query: {
status: `string`,
paymentType: `string`,
searchField: `string`,
pageNo: `number`,
limit: `number`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Customer Payments
GET /api/v3/fa/customer/payments/listGet a list of payments by customer.
Query Parameters | |
---|---|
owId integer | Organization Workspace ID |
status string | Status type |
paymentType string | Payment Type |
searchField string | Search results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -modifiedAt Supported values: paymentId, paymentDate, paymentAmount, organizationName, paymentType, paymentMode, paymentStatus |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"isPaymentInitiatorOrg": false,
"paymentId": 19,
"createdAt": 1632295016000,
"createdByUserEmail": "jinesh.p+nonihpcust2@iqm.com",
"createdByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"paymentDate": 1632076200000,
"paymentAmount": 10000,
"paymentStatus": "Rejected",
"paymentMode": "PayPal",
"paymentType": "As Fund",
"invoiceId": 0,
"transactionId": "T-1234567",
"modifiedAt": 1637566978000,
"modifiedByUserEmail": "jinesh.p+ihpcust@iqm.com",
"modifiedByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"bankName": null,
"refundReason": null
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 886,
"createdAt": 1635831910000,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"createdByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "Check",
"paymentType": "Refund",
"invoiceId": 0,
"transactionId": "123456",
"modifiedAt": 1635831910000,
"modifiedByUserEmail": "jinesh.p+ihpcust@iqm.com",
"modifiedByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 885,
"createdAt": 1635831695000,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"createdByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"transactionId": "123456",
"modifiedAt": 1635831695000,
"modifiedByUserEmail": "jinesh.p+ihpcust@iqm.com",
"modifiedByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 884,
"createdAt": 1635831127000,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"createdByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"transactionId": "123456",
"modifiedAt": 1635831127000,
"modifiedByUserEmail": "jinesh.p+ihpcust@iqm.com",
"modifiedByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"bankName": null,
"refundReason": "Testing"
},
{
"isPaymentInitiatorOrg": false,
"paymentId": 883,
"createdAt": 1635830983000,
"createdByUserEmail": "jinesh.p+ihpcust@iqm.com",
"createdByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"paymentDate": 1635791400000,
"paymentAmount": 10,
"paymentStatus": "Processing",
"paymentMode": "To Funds",
"paymentType": "Refund",
"invoiceId": 0,
"transactionId": null,
"modifiedAt": 1635830983000,
"modifiedByUserEmail": "jinesh.p+ihpcust@iqm.com",
"modifiedByUserProfile": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/JO.svg",
"bankName": null,
"refundReason": "Testing"
}
],
"totalRecords": 68,
"filteredRecords": 68
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
isPaymentInitiatorOrg: boolean;
paymentId: number;
createdAt: number;
createdByUserEmail: string;
createdByUserProfile: string;
paymentDate: number;
paymentAmount: number;
paymentStatus: string;
paymentMode: string;
paymentType: string;
invoiceId: number;
transactionId: string | null;
modifiedAt: number;
modifiedByUserEmail: string;
modifiedByUserProfile: string;
bankName: string | null;
refundReason: string | null;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function ListPaymentforCustomer(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/customer/payments/list',
params: {
query: {
owId: `number`,
status: `number`,
paymentType: `string`,
searchField: `string`,
pageNo: `number`,
limit: `number`,
sortBy: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Invoice for Organization
GET /api/v3/fa/invoice-settingsGet an invoice for an organization.
Resource Properties
invoiceId integer | Invoice ID |
owId integer | Organization Workspace ID |
invoiceTitle string | Invoice title |
invoiceCompanyName string | Company name associated with invoice |
invoiceCompanyAddress string | Address associated with company |
email string | Company email |
website string | Company website |
invoiceDescription string | Invoice description |
paypalId integer | PayPal ID |
chequeTransferId integer | Cheque transfer ID |
wireTransferId integer | Wire transfer ID |
termsAndConditions string | Terms and conditions of invoice |
paymentTerm string | Payment term of invoice |
invoiceFooter string | Invoice footer details |
createdAt string | Creation date of invoice |
- JSON
- TypeScript
{
"success": true,
"data": {
"invoiceId": 1,
"owId": 334,
"invoiceTitle": "The Alchemist",
"invoiceCompanyName": "The Alchemist",
"invoiceCompanyAddress": "42, 6th Avenue, New York, NY",
"email": "shraddha.p+alchemist@iqm.com",
"website": "www.alchemist.com",
"invoiceDescription": "Dear Customer, Greetings from The Alchemist, we are writing to provide you an electronic invoice for your use of services.",
"paypalId": 1,
"chequeTransferId": 1,
"wireTransferId": 2,
"termsAndConditions": "Please make the payment in 30 days or your account might be put on hold",
"paymentTerm": "30",
"invoiceFooter": "The Alchemist | 12.234.56.789 | USA",
"createdAt": "2021-08-27T07:33:14.000+00:00"
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
invoiceId: number;
owId: number;
invoiceTitle: string;
invoiceCompanyName: string;
invoiceCompanyAddress: string;
email: string;
website: string;
invoiceDescription: string;
paypalId: number;
chequeTransferId: number;
wireTransferId: number;
termsAndConditions: string;
paymentTerm: string;
invoiceFooter: string;
createdAt: string;
};
};
};
};
}
function GetInvoiceForOrganization(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/invoice-settings',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Invoice Payment Details
GET /api/v3/fa/invoice-settings-payment-detailsGet invoice payment details by invoice ID.
Query Parameters | |
---|---|
invoiceId integer | Invoice ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"paypalPaymentDetail": {
"paypalId": 1,
"paypalAccountId": "thealchemistfinance@paypal"
},
"chequePaymentDetail": {
"chequeId": 1,
"chequeCompanyName": "The Alchemist Company",
"chequeCompanyAddress": "45, Fifth Avenue, NY, USA"
},
"wireTransferPaymentDetail": {
"wireTransferId": 2,
"wireTransferCompanyName": "The Alchemist",
"bankName": "JP Morgan Chase Bank",
"accountNumber": "670669295",
"bankAddress": "498 7th Avenue New York NY",
"swiftCode": "MGTCUS3G",
"routing": "150098"
}
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
paypalPaymentDetail: {
paypalId: number;
paypalAccountId: string;
};
chequePaymentDetail: {
chequeId: number;
chequeCompanyName: string;
chequeCompanyAddress: string;
};
wireTransferPaymentDetail: {
wireTransferId: number;
wireTransferCompanyName: string;
bankName: string;
accountNumber: string;
bankAddress: string;
swiftCode: string;
routing: string;
};
};
};
};
};
}
function GetInvoicePaymentDetails(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/invoice-settings-payment-details',
params: {
query: {
invoiceId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Invoices for Customer or Organization
GET /api/v3/fa/invoice/list/{owId}Get a list of invoices by customer or organization.
Path Parameters | |
---|---|
owId integer | Organization Workspace ID |
Query Parameters | |
---|---|
status string | Status ID See Static Details List for supported values |
sortBy string | Sorts by ascending (+) or descending (-), default: -invoiceId Supported values: issuedOn, invoiceAmount, status |
isCustomerRequest boolean | (Organization endpoint only) Customer app request (default): true Organization app request: false |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"invoiceId": 79,
"invoiceFromDate": 1601510400,
"invoiceToDate": 1604102400,
"issuedOn": 1632182400,
"invoiceAmount": 553611.718,
"status": 7,
"paymentTerm": 30,
"paidAmount": 5000,
"paymentMode": [
2,
4
],
"invoiceName": "Zydus - Oct2020",
"actionNote": null,
"invoiceStatusUpdatedBy": "Kartik Gevariya",
"modifiedAt": 1632801378000
}
],
"totalRecords": 0,
"filteredRecords": 0
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
invoiceId: number;
invoiceFromDate: number;
invoiceToDate: number;
issuedOn: number;
invoiceAmount: number;
status: number;
paymentTerm: number;
paidAmount: number;
paymentMode: (number[] | null) | (string | null) | unknown;
invoiceName: string | null;
actionNote: string | null;
invoiceStatusUpdatedBy: string | null;
modifiedAt: number;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function ListInvoiceForCustomer(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/invoice/list/{owId}',
params: {
query: {
status: `string`,
sortBy: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer Margin Details
GET /api/v3/fa/customer/view-marginGet customer margin details by margin type.
Query Parameters | |
---|---|
marginTypeIds string | Comma separated margin type IDs See static details list for supported values |
owId integer | Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"totalRecords": 1,
"data": [
{
"marginTypeId": 1,
"marginType": "Gross Margin",
"marginValue": 15
}
],
"filteredRecords": 1,
"isBidShadingEnabled": false
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
totalRecords: number;
data: {
marginTypeId: number;
marginType: string;
marginValue: number;
}[];
filteredRecords: number;
isBidShadingEnabled: boolean;
};
};
};
};
}
function getCustomerMargin(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/customer/view-margin',
params: {
query: {
marginTypeIds: `string`,
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Customer Margin Details
POST /api/v3/fa/customer/edit-marginRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
marginTypeId integer | Margin type ID |
marginValue integer | Margin value |
- JSON
- TypeScript
{
"owId": 202318,
"marginTypeId": 1,
"marginValue": 15
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": unknown;
};
};
}
function editCustomerMargin(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/edit-margin',
requestBody: {
content: {
"application/json": {
email?: `string`,
username?: `string`,
campaignId?: `number`,
workspaceMargin?: `number`,
organizationMargin?: `number`,
marginTypeId?: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer PG Fees Details
GET /api/v3/fa/customer/{owId}/pg-feesGet details for customer PG fees.
Path Parameters | |
---|---|
owId integer | Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"organizationPgFeesDetails": {
"pgCampaignFees": 10,
"pgWorkspaceShare": 15
}
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
organizationPGFeesDetails: {
pgCampaignFees: number;
pgWorkspaceShare: number;
}
}
}
};
};
}
function getPgFeesDetails(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/customer/{owId}/pg-fees',
params: {
query: {
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Edit Customer PG Fees
PATCH /api/v3/fa/customer/{customerOwId}/pg-feesPath Parameters | |
---|---|
customerOwId integer | Customer Organization Workspace ID |
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
pgCampaignFees integer | PG Campaign Fees |
pgWorkspaceShare integer | The share of PG fees applied to the Campaign by the workspace |
- JSON
- TypeScript
{
"owId": 202318,
"pgCampaignFees": 10,
"pgWorkspaceShare": 15
}
{
"success": true,
"data": "PG Fees details updated Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
}
};
};
}
function editPgFeesDetails(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/customer/{customerOwId}/pg-fees',
params: {
path: {
customerowId: `number`
}
},
requestBody: {
content: {
"application/json": {
customerOwId?: `number`,
pgCampaignFees?: `number`,
pgWorkspaceShare?: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer VLD Finance Details
GET /api/v3/fa/customer/{customerOwId}/vld-feesGet finance details for customer VLD.
Path Parameters | |
---|---|
customerOwId integer | Customer Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"id": 1,
"vldRate": 3
}
}
{
"success": true,
"data": {
"id": 3,
"owId": 201427,
"vldRate": 3,
"vldEnabled": true,
"vldMarkupType": "Percentage",
"vldMarkupValue": 10
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
id: number;
vldRate: number;
}
}
};
};
}
function getVLDFees(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/customer/{customerOwId}/vld-fees',
params: {
path: {
customerowId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Updates Customer VLD Details
PATCH /api/v3/fa/customer/vld-feesRequest Schema | |
---|---|
owId integer | OW ID of the customer to update details (required) |
vldRate integer | VLD rate for workspace customer |
vldEnabled boolean | Boolean flag to enable and disable VLD feature for advertiser customer |
vldMarkupTypeId integer | VLD markup type ID to represent markup types absolute or percentage |
vldMarkupValue integer | VLD markup value for advertiser customer |
- JSON
- TypeScript
{
"id": 0,
"owId": 0,
"vldRate": 0,
"vldEnabled": true,
"vldMarkupType": "string",
"vldMarkupTypeId": 0,
"vldMarkupValue": 9999
}
{
"success": true,
"data": {
"id": 1,
"message": "VLD Rate updated successfully. The new rate applies only to newly created VLDs"
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
id: number;
owId: number;
vldRate: number;
vldEnabled: boolean;
vldMarkupType: string;
vldMarkupTypeId: number;
vldMarkupValue: number;
}
};
};
}
function editVLDFees(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/customer/vld-fees',
requestBody: {
content: {
"application/json": {
id?: `number`,
owId: `number`,
vldRate?: `number`,
vldEnabled?: `boolean`,
vldMarkupType?: `string`,
vldMarkupTypeId?: `number`,
vldMarkupValue?: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Basic Financial Details
GET /api/v3/fa/basic/details{
"success": true,
"data": {
"paypalFeesPercentage": 3.5
}
}
Available Balance
GET /api/v3/fa/available-balanceQuery Parameters | |
---|---|
owId integer | Organization Workspace ID |
isCustomerRequest boolean | Customer app request (default): true Organization app request: false |
- JSON
- TypeScript
{
"success": true,
"data": 5855904.72
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
paypalFeesPercentage: number;
}
}
};
};
}
function getBasicDetails(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/available-balance',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Credit Summary
GET /api/v3/fa/credit-summary/{owId}Get credit summary by workspace ID.
Path Parameter | |
---|---|
owId integer | Organization Workspace ID |
Query Parameters | |
---|---|
isCustomerRequest boolean | Customer app request (default): true Organization app request: false |
- JSON
- TypeScript
{
"success": true,
"data": {
"usedCredit": 21875.37,
"totalCredit": 50000
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
usedCredit: number;
totalCredit: number;
};
};
};
};
}
function CreditSummary(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/credit-summary/{owId}',
params: {
path: {
owId: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Offered Credits
GET /api/v3/fa/credits/listGet a list of offered credits to organization.
Query Parameters | |
---|---|
limit integer | Maximum number of entries returned, default: 50 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -modifiedAt |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"creditId": 2,
"creditAmount": 1000,
"modifiedAt": "2021-09-08T10:24:32.000+00:00",
"status": "Unclaimed",
"organizationName": "JP test org"
},
{
"creditId": 1,
"creditAmount": 1500,
"modifiedAt": "2021-09-08T05:46:15.000+00:00",
"status": "Revoked",
"organizationName": "JP test org"
}
],
"totalRecords": 2,
"filteredRecords": 2
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
creditId: number;
creditAmount: number;
modifiedAt: string;
status: string;
organizationName: string;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function ListCreditsofferedtomyorganization(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/credits/list',
params: {
query: {
pageNo: `number`,
limit: `number`,
sortBy: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Download Invoice
GET /api/v3/fa/download-invoice/{owId}/{invoiceId}Download a PDF invoice.
Path Parameter | |
---|---|
owId integer | Organization Workspace ID |
invoiceId integer | Invoice ID |
Query Parameters | |
---|---|
isCustomerRequest boolean | Customer app request (default): true Organization app request: false |
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
"Content-Disposition"?: {
"text/plain": string;
};
[name: string]: unknown;
};
};
}
function DownloadInvoice(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/download-invoice/{owId}/{invoiceId}',
params: {
query: {
isCustomerRequest: `boolean`,
},
path: {
owId: `number`,
invoiceId: `number`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Download Payment Receipt
GET /api/v3/fa/payment/download-receipt/{paymentId}Download a PDF of payment receipt.
Path Parameter | |
---|---|
paymentId integer | Payment ID |
Query Parameter | |
---|---|
owId integer | Organization Workspace ID |
isCustomerRequest boolean | Customer app request (default): true Organization app request: false |
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
};
}
function DownloadPaymentReceiptpdf(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/payment/download-receipt/{paymentId}',
params: {
path: {
paymentId: `number`
},
query: {
owId: `number`,
isCustomerRequest: `boolean`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Invoice Management
Update Invoice Settings
PATCH /api/v3/fa/invoice-settings/{invoiceId}Query Parameter | |
---|---|
isWhiteLabel boolean | Set by organization, must be set to true for invoice to be updated |
Request Schema | |
---|---|
invoiceTitle string | Invoice title |
invoiceCompanyAddress string | Invoice company address |
email string | |
website string | Website |
invoiceDescription string | Invoice description |
termsAndConditions string | Terms and conditions of invoice |
paymentTerm string | Payment Term ID |
invoiceFooter string | Invoice footer details |
paypalAcountId string | PayPal account ID |
chequeCompanyName string | Company name on check (when Payment Mode Type is check) |
chequeCompanyAddress string | Company address on check (when Payment Mode Type is check) |
wireTransferCompanyName string | Company name for wire transfer (when Payment Mode Type is wire transfer) |
bankName string | Bank name |
accountNumber string | Account number |
bankAddress string | Bank address |
companyTaxId string | Company tax ID |
companyTaxName string | Company tax name |
- JSON
- TypeScript
{
"invoiceTitle": "The Alchemist",
"invoiceCompanyAddress": "42, 6th Avenue, New York, NY",
"email": "shraddha.p+alchemist@iqm.com",
"website": "www.alchemist.com",
"invoiceDescription": "Dear Customer, Greetings from The Alchemist, we are writing to provide you an electronic invoice for your use of services.",
"termsAndConditions": "Please make the payment in 30 days or your account might be put on hold",
"paymentTerm": "30",
"invoiceFooter": "The Alchemist | 12.234.56.789 | USA",
"paypalAccountId": "thealchemistfinance@paypal",
"chequeCompanyName": "The Alchemist Company",
"chequeCompanyAddress": "45, Fifth Avenue, NY, USA",
"wireTransferCompanyName": "The Alchemist",
"bankName": "JP Morgan Chase Bank",
"accountNumber": "670669295",
"bankAddress": "498 7th Avenue New York NY",
"companyTaxId": "202130INGST",
"companyTaxName": "GSTIN"
}
{
"success": true,
"data": {
"invoiceId": 1,
"message": "Invoice details updated successfully"
}
}
More Responses
{
"success": false,
"errorObjects": [
{
"error": "Invoice does not belong to the logged in organization workspace"
}
]
}
{
"success": false,
"errorObjects": [
{
"error": "Invoice with the provided ID does not exists"
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
invoiceId: number;
message: string;
};
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function Save/UpdateInvoiceSettings(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/invoice-settings/{invoiceId}',
params: {
query: {
isWhiteLabel: `boolean`,
},
path: {
invoiceId: `number`,
}
},
requestBody: {
content: {
"application/json": {
invoiceTitle: `string`,
invoiceCompanyAddress: `string`,
email: `string`,
website: `string`,
invoiceDescription: `string`,
termsAndConditions: `string`,
paymentTerm: `string`,
invoiceFooter: `string`,
paypalAccountId: `string`,
chequeCompanyName: `string`,
chequeCompanyAddress: `string`,
wireTransferCompanyName: `string`,
bankName: `string`,
accountNumber: `string`,
bankAddress: `string`,
companyTaxId: `string`,
companyTaxName: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Delete Invoice Tax Data
DELETE /api/v3/fa/invoice-settings-tax-dataQuery Parameters | |
---|---|
taxId integer | Tax ID |
- JSON
- TypeScript
{
"success": true,
"data": "Tax data deleted successfully"
}
{
"success": false,
"errorObjects": [
{
"error": "Tax ID is invalid"
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function DeleteInvoiceTaxdata(): Promise<Responses> {
const options = {
method: 'DELETE',
url: 'https://app.iqm.com/api/v3/fa/invoice-settings-tax-data',
params: {
query: {
taxId: `number`,
}
},
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Approve Invoice
PATCH /api/v3/fa/invoice-approve/{invoiceId}Update Invoice Status.
Path Parameter | |
---|---|
invoiceId integer | Invoice ID |
- JSON
- TypeScript
{
"success": true,
"data": "Invoice with the provided ID approved successfully"
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function ApproveInvoice(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/invoice-approve/{invoiceId}',
params: {
path: {
invoiceId: `number`,
}
},
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Cancel Invoice
PATCH /api/v3/fa/invoice-cancel/{invoiceId}- JSON
- TypeScript
{
"actionNote": "cancelling invoice"
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function CancelInvoice(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/invoice-cancel/{invoiceId}',
params: {
path: {
invoiceId: `number`,
}
},
requestBody: {
content: {
"application/json": {
actionNote: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Mark Invoice as Paid
POST /api/v3/fa/pay-invoiceRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
paymentAmount integer | Payment amount |
paymentType integer | Payment type ID See Static Details List for supported values |
invoiceId integer | Invoice ID |
- JSON
- TypeScript
{
"owId": 678345,
"paymentAmount": 10000,
"paymentType": 1,
"invoiceId": 23
}
{
"success": true,
"data": "Payment added Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function MarkInvoiceAsPaid(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/pay-invoice',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
paymentAmount: `number`,
paymentType: `number`,
invoiceId: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Email Invoice
POST /api/v3/fa/email-invoice/{owId}/{invoiceId}Path Parameter | |
---|---|
owId integer | Organization Workspace ID |
invoiceId integer | Invoice ID |
Request Schema | |
---|---|
email string | Email to send invoice to |
- JSON
- TypeScript
{
"email": "user@company.com"
}
{
"success": true,
"data": "Invoice e-mail sent successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function EmailInvoice(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/email-invoice/{owId}/{invoiceId}',
params: {
path: {
owId: `number`;
invoiceId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Credit Management
Add Credit to Customer
POST /api/v3/fa/customer/credit/addRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
creditAmount integer | Credit amount to add |
- JSON
- TypeScript
{
"owId": 23,
"creditAmount": 5000
}
{
"success": true,
"data": "Credits offered Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
403: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function AddCredittoCustomer(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/credit/add',
requestBody: {
content: {
"application/json": {
owId: `number`,
creditAmount: `number`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Credit Offered to Customer
PATCH /api/v3/fa/customer/credit/editRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
creditAmount integer | Credit amount to add |
creditId integer | Credit ID |
- JSON
- TypeScript
{
"owId": 54,
"creditAmount": 4000,
"creditId": 3
}
{
"success": true,
"data": "Credits updated Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function EditofferedCredittoCustomer(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/fa/customer/credit/edit',
requestBody: {
content: {
"application/json": {
owId: `number`,
creditAmount: `number`,
creditId: `number`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Revoke Credit Offered to Customer
POST /api/v3/fa/customer/credit/revokeRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
creditId integer | Credit ID |
- JSON
- TypeScript
{
"owId": 54,
"creditId": 2
}
{
"success": true,
"data": "Credits revoked Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function RevokeCreditofferedtoCustomer(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/credit/revoke',
requestBody: {
content: {
"application/json": {
owId: `number`,
creditId: `number`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Claim Offered Credits
POST /api/v3/fa/credit/claimRequest Schema | |
---|---|
creditId integer | Credit ID |
customerName string | Customer Name |
businessName string | Business Name |
taxId string | Tax ID |
contactPersonName string | Contact person name |
contactPersonEmail string | Contact person email |
incorporationPlace string | Incorporation location |
address string | Address |
- JSON
- TypeScript
{
"creditId": 4,
"customerName": "JP test ",
"businessName": "JP test org3",
"taxId": "123456",
"contactPersonName": "JP",
"contactPersonEmail": "jinesh.p+nonihpcust2@iqm.com",
"incorporationPlace": "Gujarat, India",
"address": "A-123, XYZ Complex, Ahmedabad, Gujarat, India - 380059"
}
{
"success": true,
"data": "Credits claimed."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function Claimofferedcredits(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/credit/claim',
requestBody: {
content: {
"application/json": {
creditId: `number`,
customerName: `string`,
businessName: `string`,
taxId: `string`,
contactPersonName: `string`,
contactPersonEmail: `string`,
incorporationPlace: `string`,
address: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Payment Management
Add Payment for Customer
POST /api/v3/fa/customer/payment/addRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
paymentAmount integer | Payment amount |
paymentDate string | Payment date in YYYY-MM-DD format |
paymentMode integer | Payment mode type ID See Static Details List for supported values |
transactionId integer | Transaction ID |
paymentProof string optional | Proof of payment image (jpeg/png) |
paymentType integer | Payment type ID See Static Details List for supported values |
invoiceId integer | Invoice ID (provide only if paymentType is Against Invoice) |
- JSON
- TypeScript
{
"owId": 123654,
"paymentAmount": 5000,
"paymentDate": "2025-12-01",
"paymentMode": 1,
"transactionId": 10,
"paymentProof": "image.png",
"paymentType": 2,
"invoiceId": 34
}
{
"success": true,
"data": "Payment added Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function AddPaymentforcustomer(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/add',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
paymentAmount: `number`,
paymentDate: `string`,
paymentMode: `number`,
transactionId: `string`,
paymentProof: `string`,
paymentType: `number`,
invoiceId: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Edit Customer Payment
PUT /api/v3/fa/customer/payment/{paymentId}Path Parameter | |
---|---|
paymentId integer | Payment ID |
- JSON
- TypeScript
{
"success": true,
"data": "Payment updated Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function EditPaymentofcustomer(): Promise<Responses> {
const options = {
method: 'PUT',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/{paymentId}',
params: {
path: {
paymentId: `number`
}
},
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
paymentAmount: `number`,
paymentDate: `string`,
paymentMode: `number`,
transactionId: `string`,
paymentProof: `string`,
paymentType: `number`,
invoiceId: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Approve Payment
Update payment status
POST /api/v3/fa/customer/payment/approve/{paymentId}Path Parameter | |
---|---|
paymentId integer | Payment ID |
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
actionNote string | Description of payment status change |
- JSON
- TypeScript
{
"owId": 200485,
"actionNote": "Payment paid partially"
}
{
"success": true,
"data": "Payment approved Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function ApprovePayment(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/approve/{paymentId}',
params: {
path: {
paymentId: `number`
}
},
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
actionNote: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Cancel Payment
POST /api/v3/fa/customer/payment/cancel/{paymentId}Path Parameter | |
---|---|
paymentId integer | Payment ID |
- JSON
- TypeScript
{
"success": true,
"data": "Payment cancelled Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function CancelPayment(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/cancel/{paymentId}',
params: {
path: {
paymentId: `number`
}
},
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
actionNote: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Reject Payment
POST /api/v3/fa/customer/payment/reject/{paymentId}Path Parameter | |
---|---|
paymentId integer | Payment ID |
- JSON
- TypeScript
{
"success": true,
"data": "Payment rejected Successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function RejectPayment(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/reject/{paymentId}',
params: {
path: {
paymentId: `number`
}
},
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
actionNote: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Add Payment from Organization App
POST /api/v3/fa/payment/add-fundRequest Schema | |
---|---|
paymentAmount integer | Payment amount |
paymentDate string | Payment date in YYYY-MM-DD format |
paymentMode integer | Payment mode type ID See Static Details List for supported values |
paymentProof string optional | Proof of payment image (jpeg/png) |
bankName string | Required only if paymentMode is Check or Wire Transfer |
- JSON
- TypeScript
{
"success": true,
"data": "Payment Successful."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function AddPaymentfromOrganizationApp(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/add-fund',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
paymentAmount: `number`,
paymentDate: `string`,
paymentMode: `number`,
paymentProof: `string`,
bankName: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Payment with PayPal
POST /api/v3/fa/paypal/paymentRequest Schema | |
---|---|
paymentAmount integer | Payment amount |
- JSON
- TypeScript
{
"success": true,
"data": "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-3YM2956846765604B"
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function PaymentwithPayPal(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/paypal/payment',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
paymentAmount: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Initiate Refund
POST /api/v3/fa/customer/payment/refundRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
paymentAmount integer | Payment amount |
paymentDate string | Payment date in YYYY-MM-DD format |
paymentMode integer | Payment mode type ID See Static Details List for supported values |
transactionId integer | Transaction ID |
paymentProof string optional | Proof of payment image (jpeg/png) |
- JSON
- TypeScript
{
"success": true,
"data": "Refund Initiated."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function InitiateRefund(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/refund',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
paymentAmount: `number`,
paymentDate: `string`,
paymentMode: `number`,
transactionId: `string`,
paymentProof: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Approve Refund
POST /api/v3/fa/customer/payment/approve-refund/{paymentId}Path Parameter | |
---|---|
paymentId integer | Payment ID |
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
actionNote string | Description of status change |
- JSON
- TypeScript
{
"owId": 200485,
"actionNote": "Payment paid partially"
}
{
"success": true,
"data": "Refund successful."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function ApproveRefund(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/customer/payment/approve-refund/{paymentId}',
params: {
path: {
paymentId: `number`
}
},
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
owId: `number`,
paymentProof: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Email Payment Receipt
POST /api/v3/fa/payment/email-receipt/{owId}/{paymentId}Path Parameter | |
---|---|
owId integer | Organization Workspace ID |
paymentId integer | Payment ID |
Request Schema | |
---|---|
email string | Email to send receipt to |
- JSON
- TypeScript
{
"email": "example@business.com"
}
{
"success": true,
"data": "Payment receipt e-mail sent successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function EmailPaymentReceipt(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/fa/payment/email-receipt/{owId}/{paymentId}',
params: {
path: {
owId: `number`,
paymendId: `number`,
}
},
requestBody: {
content: {
"application/json": {
email: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Static Details Lists
Payment Types
GET /api/v3/fa/static/payment-typeGet a list of payment type IDs.
Payment Type IDs | |
---|---|
1 As Fund | Payment added into organization balance |
2 Against Invoice | Payment used to pay invoice |
3 Refund | Payment reversed from platform, deducted from organization's balance and refunded to customer organization |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "as_fund",
"id": 1,
"label": "As Fund",
"order": 1
},
{
"name": "against_invoice",
"id": 2,
"label": "Against Invoice",
"order": 2
},
{
"name": "refund",
"id": 3,
"label": "Refund",
"order": 3
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function PaymentTypes(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/payment-type',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Payment Status
GET /api/v3/fa/static/payment-statusGet a list of payment type IDs.
Properties | |
---|---|
1 Processing | Payment in process |
2 Paid | Payment paid |
3 Rejected | Payment rejected |
4 Cancelled | Payment cancelled |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "processing",
"id": 1,
"label": "Processing",
"order": 1
},
{
"name": "paid",
"id": 2,
"label": "Paid",
"order": 2
},
{
"name": "rejected",
"id": 3,
"label": "Rejected",
"order": 3
},
{
"name": "cancelled",
"id": 4,
"label": "Cancelled",
"order": 4
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function PaymentStatus(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/payment-status',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Invoice Payment Mode Types
GET /api/v3/fa/static/invoice-payment-modesGet a list of payment mode type IDs.
Payment Mode Type IDs | |
---|---|
1 PayPal | Payment by PayPal |
2 Check | Payment by check |
3 Wire Transfer | Payment by wire transfer |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "paypal",
"id": 1,
"label": "PayPal",
"order": 1
},
{
"name": "cheque",
"id": 2,
"label": "Cheque",
"order": 2
},
{
"name": "wire_transfer",
"id": 3,
"label": "Wire Transfer",
"order": 3
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function InvoicePaymentModes(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/invoice-payment-modes',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Invoice Status
GET /api/v3/fa/static/invoice-statusGet a list of invoice status type IDs.
Invoice Status IDs | |
---|---|
1 Pending | Invoice pending |
2 Partially Paid | Invoice partially paid |
3 Unpaid | Invoice not paid |
4 Paid | Invoice paid |
5 Overdue | Invoice payment overdue |
7 Processing | Invoice payment processing |
8 Cancelled | Invoice payment cancelled |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "pending",
"id": 1,
"label": "Pending",
"order": 1
},
{
"name": "partially_paid",
"id": 2,
"label": "Partially Paid",
"order": 2
},
{
"name": "unpaid",
"id": 3,
"label": "Unpaid",
"order": 3
},
{
"name": "paid",
"id": 4,
"label": "Paid",
"order": 4
},
{
"name": "overdue",
"id": 5,
"label": "Overdue",
"order": 5
},
{
"name": "processing",
"id": 7,
"label": "Processing",
"order": 7
},
{
"name": "cancelled",
"id": 8,
"label": "Cancelled",
"order": 8
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function InvoiceStatus(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/invoice-status',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Invoice Payment Term
GET /api/v3/fa/static/invoice-payment-termsPayment Term IDs | |
---|---|
1 Net 7 | Payment expected within 7 days of invoice date |
2 Net 15 | Payment expected within 15 days of invoice date |
3 Net 30 | Payment expected within 30 days of invoice date |
4 Net 45 | Payment expected within 45 days of invoice date |
5 Net 60 | Payment expected within 60 days of invoice date |
6 Net 90 | Payment expected within 90 days of invoice date |
7 Net 120 | Payment expected within 120 days of invoice date |
8 Custom | Payment expected within set days of invoice date |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "7",
"id": 1,
"label": "Net 7",
"order": 1
},
{
"name": "15",
"id": 2,
"label": "Net 15",
"order": 2
},
{
"name": "30",
"id": 3,
"label": "Net 30",
"order": 3
},
{
"name": "45",
"id": 4,
"label": "Net 45",
"order": 4
},
{
"name": "60",
"id": 5,
"label": "Net 60",
"order": 5
},
{
"name": "90",
"id": 6,
"label": "Net 90",
"order": 6
},
{
"name": "120",
"id": 7,
"label": "Net 120",
"order": 7
},
{
"name": "0",
"id": 8,
"label": "Custom",
"order": 8
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function InvoicePaymentTerm(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/invoice-payment-terms',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
PG Payment Type
GET /api/v3/fa/static/pg/payment-typeGet a list of PG payment type IDs.
PG Payment Type IDs | |
---|---|
1 | Publisher payment |
2 | Platform payment |
- JSON
- TypeScript
{
"success": true,
"data": {
"totalRecords": 2,
"filteredRecords": 2,
"pgPaymentTypes": [
{
"id": 1,
"name": "publisher",
"label": "Publisher",
"order": 1
},
{
"id": 2,
"name": "platform",
"label": "Platform",
"order": 2
}
]
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function getPgPaymentTypes(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/fa/static/pg/payment-type',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}