We've developed the XAPI Test Console for you to get a better understanding of the types of calls possible with the XAPI. You can explore the types of calls and responses you'll use while integrating XAPI into your site, mobile app, or platform. Please don't hesitate to contact us with any questions. We're happy to get you started using the XAPI today.

URL: sandbox.xapi.xtrm.com/oAuth/token
Method: Post
Content-Type:x-www-form-urlencoded
Body:
    -d "grant_type=password"  
    -u "client_id:" "string"
    -u "client_secret:" "string"
Request Param:
grant_type=password&client_id=YOUR_CLIENT_ID_FROM_XTRM&client_secret=YOUR_CLIENT_SECRET_XTRM
URL: sandbox.xapi.xtrm.com/oAuth/token
Method: Post
Content-Type:x-www-form-urlencoded
Body:
    -d "grant_type=refresh_token"
    -u "refresh_token:" "string"
    -u "client_id:" "string"
    -u "client_secret:" "string"
Request Param:
grant_type=refresh_token&refresh_token=YOUR_REFRESH_TOKEN&client_id=YOUR_CLIENT_ID_FROM_XTRM&client_secret=YOUR_CLIENT_SECRET_XTRM
URL: sandbox.xapi.xtrm.com/API/Register/CreateUser
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "CreateUser": {
        "request": {
            "IssuerAccountNumber" : "SPN Account Number",
            "LegalFirstName": "firstname",
            "LegalLastName": "lastname",
            "EmailAddress": "email_address",
            "EmailNotification" :"true/false",
            "MobilePhone": "mobile_phone",
            "TaxId": "tax_id",
            "DateOfBirth": {
                "Day": "DD",
                "Month": "MM",
                "Year": "YYYY"
            },
            "Address": {
                "AddressLine1": "address1",
                "AddressLine2": "address2",
                "AptSuitNum": "apartmentorsuitnumber",
                "City": "city",
                "Country": "Country",
                "CountryISO2": "currency_code",
                "PostalCode": "postal_code",
                "Region": "region"
            }
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Register/UpdateUser
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "UpdateUser": {
         "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "UserId":"string",
            "LegalFirstName": "firstname",
            "LegalLastName": "lastname",
            "TaxId": "tax_id",
            "DateOfBirth": {
                "Day": "DD",
                "Month": "MM",
                "Year": "YYYY"
            },
            "Address": {
                "AddressLine1": "address1",
                "AddressLine2": "address2",
                "AptSuitNum": "apartmentorsuitnumber",
                "City": "city",
                "Country": "Country",
                "CountryISO2": "currency_code",
                "PostalCode": "postal_code",
                "Region": "region"
            }
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/GetPersonalBeneficiaries
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "GetPersonalBeneficiaries": {
    "request": {
      "IssuerAccountNumber": "SPN Account Number",
      "Pagination": {
        "RecordsToSkip": "1",
        "RecordsToTake": "10"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/CheckUserExist
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "CheckUserExist":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "Email":"Email Address"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Bank/GetLinkedBankAccounts
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetLinkedBankAccounts": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "RecipientUserId": "PAT Account Number"
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Bank/SearchBank
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "SearchBanks":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "BankName":"Name of the Institution",
      "CountryISO2":"Two-letter ISO country code",
      "City":"City",
      "Pagination":{  
        "RecordsToSkip":1,
        "RecordsToTake":10
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Bank/GetBankWithdrawTypes
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "GetBankWithdrawTypes":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "CountryISO2":"Two-letter ISO country code"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Bank/GetBankDynamicValidationRules
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "GetBankDynamicValidationRules":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "CountryISO2":"Two-letter ISO country code",
      "Currency":"Three-letter currency code",
      "BankWithdrawType":"Bank Withdraw Type"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Bank/CreateBankBeneficiary
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "CreateBankBeneficiary":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "UserID":"PAT Account Number",
      "Beneficiary":{  
        "BeneficiaryDetails":{  
          "BeneficiaryInformation":{  
            "BeneficiaryContactName":"Beneficiary Contact Name",
            "BeneficiaryWithdrawCurrency":"Three-letter currency code",
            "WithdrawType":"Bank Withdraw Type",
            "BeneficiaryPhoneNumber":"Beneficiary Phone Number",
            "AddressLine1":"Beneficiary Address Line1",
            "AddressLine2":"Beneficiary Address Line2",
            "City":"Beneficiary City",
            "Region":"Beneficiary Region",
            "PostalCode":"Beneficiary PostalCode",
            "CountryISO2":"Two-letter ISO country code"
          }
        },
        "BankDetails":{  
          "BeneficiaryBankInformation":{  
            "InstitutionName":"Name of the institution",
            "SWIFTBIC":"Unique identifier for the bank",
            "BeneficiaryAccountNumber":"Bank account number",
            "RoutingNumber":"Bank routing code/National Bank Code",
            "BranchName":"Bank Branch Name",
            "AddressLine1":"Bank Address Line1",
            "CountryISO2":"Two-letter ISO country code"
          }
        },
        "RegulatoryFields":{  
          "RegulatoryField":[  
            {  
              "FieldName":"Name of the regulatory field",
              "FieldValue":"Value of the regulatory field"
            }
          ]
        }
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Payment/GetPaymentMethods
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{}
URL: sandbox.xapi.xtrm.com/API/Payment/GetUserPaymentMethods
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{}
URL: sandbox.xapi.xtrm.com/API/Payment/GetBeneficiaryCompanyPaymentMethods
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetUserWalletBalance
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetUserWalletBalance": {
        "request": {
           "IssuerAccountNumber": "SPN Account Number",
            "UserID": "PAT Account Number",
            "Currency": "Currency Code"
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetCompanyWallets
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetCompanywallets": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number"
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetBeneficiaryWallets
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "GetBeneficiaryWallets":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "BeneficiaryAccountNumber":"SPN Account Number"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/CreateUserWallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "CreateUserWallet": {
    "request": {
        "IssuerAccountNumber":"SPN Account Number",
        "UserID": "PAT Account Number",
        "WalletName": "Wallet Name",
        "WalletCurrency": "Currency Code"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/CreateCompanyWallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "CreateCompanyWallet": {
    "request": {
    	"IssuerAccountNumber":"SPN Account Number",
    	"WalletName": "Wallet Name",
        "WalletCurrency": "Currency Code",
        "WalletType":"Standard/Accrual",
        "AllowAccessAccountNumber":"Allow Access SPN Account Number"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/CreateBeneficiaryCompanyWallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "CreateBeneficiaryCompanyWallet": {
    "request": {
    	"IssuerAccountNumber":"SPN Account Number",
        "BeneficiaryAccountNumber":"SPN Account Number",
    	"WalletName": "Wallet Name",
        "WalletCurrency": "Currency Code",
        "WalletType":"Standard/Accrual"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/UpdateUserWallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "UpdateUserWallet": {
    "Request": {
        "IssuerAccountNumber": "SPN Account Number",
        "UserID": "PAT Account Number",
        "WalletID": "Wallet ID",
        "WalletName": "Wallet Name"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/updatecompanywallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "UpdateCompanyWallet": {
    "Request": {
        "IssuerAccountNumber": "SPN Account Number",
        "WalletID": "Wallet ID",
        "WalletName": "Wallet Name"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/updateBeneficiarycompanywallet
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "UpdateBeneficiaryCompanyWallet": {
    "Request": {
        "IssuerAccountNumber": "SPN Account Number",
        "BeneficiaryAccountNumber":"SPN Account Number",
        "WalletID": "Wallet ID",
        "WalletName": "Wallet Name"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetUserWalletTransactions
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "GetUserWalletTransactions": {
    "Request": {
      "IssuerAccountNumber": "SPN Account Number",
      "UserID": "PAT Account Number",
      "WalletCurrency": "Currency Code",
     "Pagination": {
        "RecordsToSkip": "1",
        "RecordsToTake": "10"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetCompanyWalletTransactions
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "GetCompanyWalletTransactions": {
    "Request": {
      "IssuerAccountNumber": "SPN Account Number",
      "WalletID": "Wallet ID",
     "Pagination": {
        "RecordsToSkip": "1",
        "RecordsToTake": "10"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/GetCompanyWalletTransactionDetails
Method: Post
Header:                                
-u "Authorization:" "bearer string"
Request Param:
{
  "GetCompanyTransactionDetails": {
    "Request": {
      "IssuerAccountNumber": "SPN Account Number",
      "TransactionID": "Transaction ID"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Wallet/FundCompanyWalletUsingCreditCard
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "FundCompanyWalletUsingCreditCardRequest": {
    "Request": {
      "PaymentDetails": {
        "IssuerAccountNumber": "SPN Issuer Account Number",
        "Amount": "Amount",
        "CurrencyCode": "Currency Code",
        "WalletID": "Wallet ID"
      },
      "PayerInformation": {
        "FirstName": "First Name",
        "LastName": "Last Name"
      },
      "PayerBillingAddress":{
       "Address1":"Address 1",
       "City":"City",
       "State":"State",
       "CountryISO2":"Country Code",
       "PostalCode":"Postal Code"
      },
      "CreditCardDetails":{
       "ExpireMonth":"Expire Month",
       "ExpireYear":"Expire Year",
       "CreditCardNumber":"Credit Card Number",
       "CreditCardType":"Visa Card/Master Card",
       "CVV":"CVV"
      }
       
      }
    }
  }
URL: sandbox.xapi.xtrm.com/API/Wallet/GetUserWallets
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetUserWallets": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "UserID":"PAT Account Number"
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Fund/TransferFund
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "TransferFund": {
    "request": {
      "Transaction": {
        "IssuerAccountNumber": "SPN Account Number",
        "PaymentType": "Personal",
        "PaymentMethodId": "Use 'GetPaymentMethods' to get PaymentMethodID",
        "ProgramId": "Use 'GetPrograms' to get Program ID",
        "WalletID": "Use 'GetCompanyWallets' to get WalletID",
        "PaymentDescription": "Payment Description",
        "PaymentCurrency":"Currency Code",
        "EmailNotification" :"true/false",
        "TransactionDetails": [
          {
            "IssuerTransactionId": "Unique ID",
            "PaymentAmount": "Payment Amount",
            "PartnerAccountNumber": "SPN Account Number",
            "RecipientUserId": "PAT Account Number",
            "UserLinkedBankID": "Use 'GetLinkedBankAccounts' to get UserLinkedBankID",
            "UserPayPalEmailID": "User PayPal Email ID",
            "UserPrepaidVisaEmailID": "User Prepaid Virtual Visa Email ID",
            "DealRegId": "Deal_Reg_ID",
            "Comment": "Comment"
          }
        ]
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Fund/UserWithdrawFund
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "UserWithdrawFund": {
    "request": {
        "IssuerAccountNumber": "SPN Account Number",
        "UserID": "PAT Account Number",
        "Amount": "Payment Amount",     
        "Currency":"Currency Code",  
        "PaymentMethodId": "Use 'GetUserPaymentMethods' to get PaymentMethodID",       
        "UserLinkedBankID": "Use 'GetLinkedBankAccounts' to get UserLinkedBankID",
        "UserPayPalEmailID": "User PayPal Email ID",
        "UserPrepaidVisaEmailID": "User Prepaid Virtual Visa Email ID"
       
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Fund/TransferFundtoCompany
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "TransferFundtoCompany":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "PaymentType":"Company",
      "PaymentMethodId":"Use 'GetPaymentMethods' to get PaymentMethodID",
      "ProgramId":"Use 'GetPrograms' to get Program ID",
      "WalletID":"Use 'GetCompanyWallets' to get WalletID",
      "Description":"Payment Description",
      "Currency":"Three-letter currency code",
      "Amount":"Payment Amount",
      "EmailNotification":"true/false",
      "IssuerTransactionId":"",		
      "BeneficiaryAccountNumber":"SPN Account Number",
      "BeneficiaryWalletID":"Use 'GetBeneficiaryWallets' to get WalletID",
      "BeneficiaryLinkedBankID":"Use 'GetLinkedBankAccounts' to get LinkedBankID",
      "BeneficiaryPayPalEmailID":"Beneficiary PayPal Email ID"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Fund/BeneficiaryCompanyWithdrawFund
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "BeneficiaryCompanyWithdrawFund": {
    "request": {
        "IssuerAccountNumber": "SPN Account Number",                
        "Currency":"Currency Code",  
        "Amount": "Payment Amount",    
        "PaymentMethodId": "Use 'GetBeneficiaryCompanyPaymentMethods' to get PaymentMethodID",       
        "BeneficiaryAccountNumber":"SPN Account Number",
        "BeneficiaryWalletID":"Use 'GetBeneficiaryWallets' to get WalletID",
        "BeneficiaryLinkedBankID":"Use 'GetLinkedBankAccounts' to get LinkedBankID",
        "OTP":"six digit integer"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/GetBeneficiaries
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "GetBeneficiaries": {
    "request": {
      "IssuerAccountNumber": "SPN Account Number",
      "Pagination": {
        "RecordsToSkip": "1",
        "RecordsToTake": "10"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/CreateBeneficiary
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "CreateBeneficiary": {
    "Request": {
      "IssuerAccountNumber": "SPN Account Number",
      "BeneficiaryCompanyName": "Company Name",
      "WebAddress": "Website URL",
      "BeneficiaryCompanyAdminDetails": {
      	"AdminEmail":"Email ID",
        "EmailNotification" :"true/false",
      	"AdminFirstName":"First Name",
        "AdminLastName":"Last Name",
        "AdminMobileNumber":"Mobile Number",
        "City":"City",
        "Country":"Country",
        "Region":"Region",
         "PostalCode":"Postal Code"
      },
      "SalesProgramDetails": {
        "PartnerAccountManager": "Partner Account Manager",
        "SalesforcePartnerID": "Salesforce Partner ID",
        "OtherPartnerID": "Other Partner ID",
        "Region": "Region",
        "PartnerLevel": "Partner Level"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/UpdateBeneficiary
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "UpdateBeneficiary": {
    "Request": {
      "IssuerAccountNumber": "SPN Account Number",
      "BeneficiaryID":"Beneficiary SPN Account Number",
      "BeneficiaryCompanyName": "Company Name",
      "WebAddress": "Website URL",
      "BeneficiaryCompanyAdminDetails": {
      	"AdminFirstName":"First Name",
        "AdminLastName":"Last Name",
        "City":"City",
        "Country":"Country",
        "Region":"Region",
        "PostalCode":"Postal Code"
      },
      "SalesProgramDetails": {
        "PartnerAccountManager": "Partner Account Manager",
        "SalesforcePartnerID": "Salesforce Partner ID",
        "OtherPartnerID": "Other Partner ID",
        "Region": "Region",
        "PartnerLevel": "Partner Level"
      }
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Beneficiary/CheckBeneficiaryExist
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{  
  "CheckBeneficiaryExist":{  
    "request":{  
      "IssuerAccountNumber":"SPN Account Number",
      "CompanyName":"Company Name"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/Programs/GetPrograms
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetPrograms": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "Pagination": {
                "RecordsToSkip": 1,
                "RecordsToTake": 10
            }
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Programs/ProgramCategory
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetProgramCategory": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "Pagination": {
                "RecordsToSkip": 1,
                "RecordsToTake": 10
            }
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Programs/ProgramType
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "GetProgramType": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "CategoryID": "Use 'ProgramCategory' to get Program Category ID",
            "Pagination": {
                "RecordsToSkip": 1,
                "RecordsToTake": 10
            }
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Programs/CreateProgram
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "CreateProgram": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "Description":"Program Name",
            "TransactionCategoryID":"Use 'ProgramCategory' to get Program Category ID",
            "TransactionSubCategoryID":"Use 'ProgramType' to get Program Sub Category ID",
            "IsClaim":boolean,
            "ClaimAmount":"Claim Amount",
            "CurrencyCode":"Currency Code"
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/Programs/UpdateProgram
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
    "UpdateProgram": {
        "request": {
            "IssuerAccountNumber": "SPN Account Number",
            "ProgramID":"Program ID",
            "Description":"Program Name",
            "TransactionCategoryID":"Use 'ProgramCategory' to get Program Category ID",
            "TransactionSubCategoryID":"Use 'ProgramType' to get Program Sub Category ID",
            "IsClaim":boolean
            "ClaimAmount":"Claim Amount",
            "CurrencyCode":"Currency Code",
        }
    }
}
URL: sandbox.xapi.xtrm.com/API/OTP/GetOTPAuthorizedVendor
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "GetOTPAuthorizedVendor": {
    "request": { 
    	"IssuerAccountNumber": "SPN Account Number",
    	"RecipientUserId":"PAT Account Number"
    }
  }
}
URL: sandbox.xapi.xtrm.com/API/OTP/ValidateOTPAuthorizeVendor
Method: Post
Header: -u "Authorization:" "bearer string"
Content-Type: application/json
Request Param:
{
  "ValidateOTPAuthorizeVendor": {
    "request": { 
    	"IssuerAccountNumber": "SPN Account Number",
    	"RecipientUserId":"PAT Account Number",
    	"OneTimePassword":"One Time Password"
    	
    }
  }
}