Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

These are all of the Endpoints required to identify or interact with Customers.

...

Type

Parameter

Details

BODY

customer_id

  • ASCII string (20)

  • The Customer ID of the account

  • This is not the Account Number

  • The customer ID may return a '-' delimited value for an authorized business customer. in the format of: “[master-cust-id]-[authorized-user-id]”

BODY

account_status

  • ASCII string (1)

  • “N” - Normal (only status that allows Authorizations/Purchases)

  • “A” - Auth Prohibited (Authorizations/Purchases are prohibited due to lack of payment, this status can be reverted automatically by the system)

  • “F” - Frozen (Frozen accounts can NOT make Authorizations/Purchases, this status can only be reverted manually by Operations)

  • “Z” - Charged Off (When accounts do not pay for 6 or more months, the account is written off the Portfolio)

  • “C” - Closed (no longer in use, this represents accounts that are closed and can NOT be brought back to life, there are some old accounts with this status)

BODY

account_status_reason_code

  • ASCII string (4)

  • Possible values: AAUT, FAGN, FBNK, FCCS, FCLC, FCLG, FCQC, FCND, FCOP, FDEC, FDVO, FFRD, FHRD, FIND, FINP, FLCK, FOPD, FPAC, FRMA, FRME, FRVK, FSKP, FSLM, NNOR, ZBNK, ZCCO, ZCCS, ZCOP, ZDEC, ZDVO, ZFRD, ZMCO, ZOPD, ZSLM, ZSRO

BODY

tos_agreement

  • boolean

  • True means the customer accepted the Terms and Conditions

  • False means they have not accepted the Terms and Conditions

BODY

risk_rating

  • ASCII string (4)

  • Risk rating of the Customer

  • Possible values: L, M, H, X, Y, Z, N, P, Q, R, S

    • L - Low - Preferred (Prime Customer, Preferred Account Type)

    • M - Medium - Preferred (Prime Customer, Preferred Account Type)

    • H - High - Premium (Prime Customer, Premium Account Type)

    • X - X-High - Premium (Prime Customer, Premium Account Type)

    • Y - XX-High - Standard (Non-prime Customer)

    • Z - XXX-High - Standard (Non-prime Customer)

    • N - No Rating Assigned

BODY

account_number

  • number (14)

  • The Account Number of the Customer

  • This is not the FlexitiCard number (VCC)

    • P - XX-High - High (Non-prime Customer)

    • Q - XX-High - Very Low (Non-prime Customer)

    • R - XX-High - Low (Non-prime Customer)

    • S - XX-High - Medium (Non-prime Customer)

    • N - No Rating Assigned

BODY

account_number

  • number (14)

  • The Account Number of the Customer

  • This is not the FlexitiCard number (VCC)

BODY

customer_account_type

  • ASCII string (100)

  • This is the type of account the customer has

BODY

credit_limit

  • number (18,2)

  • Credit limit associated with the Customer’s account

BODY

available_credit

  • number (18,2)

  • Customer’s open to buy

BODY

originating_merchant_id

  • number (10)

  • ID of the Merchant where the customer’s application originated

BODY

originating_merchant_name

  • ASCII string (130)

  • Name of the Merchant where the customer’s application originated

BODY

creation_date

  • ASCII string (10)

  • Date the customer’s account was created

BODY

first_name

  • ASCII string (35)

  • Customer’s First Name

BODY

last_name

  • ASCII string (50)

  • Customer’s Last Name

BODY

card_ending_in

  • number (4)

  • Last 4 digits of the customer account’s primary FlexitiCard Number (VCC)

BODY

preferred_language

  • ASCII string (5)

  • Preferred Language (Locale)

  • Available values: en-CA, fr-CA

  • Default value: en-CA

...

Type

Parameter

Details

BODY

available_credit

  • number (18,2)

  • Customer’s open to buy

BODY

account_number

  • number (14)

  • The Account Number of the Customer

  • his is not the FlexitiCard number (VCC)

BODY

customer_id

  • ASCII string (20)

  • ID of the customer

  • This is not the customer’s Account Number

  • The customer ID may return a '-' delimited value for an authorized business customer. in the format of: “[master-cust-id]-[authorized-user-id]”

BODY

security_qid.id

  • number (5)

  • Customer’s Security Question ID provided by the Customer Lookup service

BODY

security_qid.text

  • ASCII string

  • Customer’s Security Question

BODY

address_1

  • ASCII string (150)

  • Customer Address Line 1

BODY

address_2

  • ASCII string (143)

  • Customer Address Line 2

BODY

city

  • ASCII string (100)

  • Customer City

BODY

postal_code

  • ASCII string (10)

  • Customer Postal Code

BODY

province

  • ASCII string (2)

  • Customer Province (2 character syntax, ex. ON for Ontario)

  • Available values: AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, QC, SK, YT.

BODY

payment_protection

  • boolean

  • Whether the customer has insurance on the account

BODY

risk_rating

offer_types.plan_
  • ASCII string (4)

  • Risk rating of the Customer

  • Possible values: L, M, H, X, Y, Z, N

    • L - Low - Preferred (Prime Customer, Preferred Account Type)

    • M - Medium - Preferred (Prime Customer, Preferred Account Type)

    • H - High - Premium (Prime Customer, Premium Account Type)

    • X - X-High - Premium (Prime Customer, Premium Account Type)

    • Y - XX-High - Standard (Non-prime Customer)

    • Z - XXX-High - Standard (Non-prime Customer)

    • N - No Rating Assigned

BODY

    • P - XX-High - High (Non-prime Customer)

    • Q - XX-High - Very Low (Non-prime Customer)

    • R - XX-High - Low (Non-prime Customer)

    • S - XX-High - Medium (Non-prime Customer)

    • N - No Rating Assigned

BODY

offer_types.plan_name

  • ASCII string

  • Name of the promotional plan available to the customer

BODY

offer_types.plan_id

  • number (3)

  • ID of the promotional plan available to the customer

BODY

offer_types.offer_category

  • ASCII string

  • Category of the promotional plans available to the customer

  • Available values: equal_billing, deferred_payment

BODY

offer_types.term_options

  • number (3)

  • terms of the promotional plan available to the customer

BODY

card_ending_in

  • number (4)

  • Last 4 digits of the customer account’s primary FlexitiCard Number (VCC)

BODY

preferred_language

  • ASCII string (5)

  • Preferred Language (Locale)

  • Available values: en-CA, fr-CA

  • Default value: en-CA

BODY

email

  • ASCII string (75)

  • This will be a masked representation of the customer’s email address

  • This can be used to validate with the email destination with the customer for the dynamic pin on POST /client-id/{client_id}/account/{account_number}/verify (In-store)

BODY

phone_number

  • ASCII string (12)

  • This will be the last four digits of the customer’s phone number, the rest of the digits will be masked

  • This can be used to validate with the sms destination with the customer for the dynamic pin on POST /client-id/{client_id}/account/{account_number}/verify (In-store)

BODY

account_type

  • ASCII string (100)

  • This is the type of account the customer has

...

Code Block
languagejson
{
  "format": "security_question",
  "security_qid": "6"sms",
  "security_answer": "Rainbow",
  "request_id": "12345678901234567890"
}

...

Code Block
{
  "verification_code": 4365
}

...

POST /client-id/{client_id}/

...

customers/driverslicense

Code Block
breakoutModewide
https://{posapi_url}/flexiti/pos-api/v2.5/client-id/{client_id}/accountscustomers/12345/closedriverslicense

This endpoint allows the closure of a QC accountdecoding of PDF417 scanned driver license information.

Request Parameters:

Type

Parameter

Required

Details

HEADER

authorization

Yes

  • ASCII string (1000)

  • This is the word “Bearer” with a space and then the access_token given in oauth/token API response

  • Default value: Bearer {insert_bearer_token_from_oauth_here/token_api}

HEADER

x-reference-id

Yes

  • ASCII string (32)

  • GUID

  • Unique identifier for the flow for traceability purposes

PATH

client_id

Yes

  • ASCII string (100)

  • This is the Client ID given in the Developer User Account section

PATH

BODY

account_number

code

Yes

  • number (14)

  • The Account Number of the Customer to be closed

Success Response:

200 - Success
Code Block
{
}

POST /client-id/{client_id}/accounts/{account_number}/calculate-interest

Code Block
breakoutModewide
https://{posapi_url}/flexiti/pos-api/v2.5/client-id/{client_id}/accounts/12345/calculate-interest

This endpoint retrieves the plan and term configured for the merchant that can be offered to a customer.

Request Parameters:

...

Type

...

Parameter

...

Required

...

Details

...

HEADER

...

authorization

...

Yes

...

  • ASCII string (1000)

  • This is the word “Bearer” with a space and then the access_token given in oauth/token API response

  • Default value: Bearer {insert_bearer_token_from_oauth_here/token_api}

...

HEADER

...

x-reference-id

...

Yes

...

  • ASCII string (32)

  • GUID

  • Unique identifier for the flow for traceability purposes

...

PATH

...

client_id

...

Yes

...

  • ASCII string (100)

  • This is the Client ID given in the Developer User Account section

...

PATH

...

account_number

...

Yes

...

  • number (14)

  • The Account Number of the Primary Account Holder

  • his is not the FlexitiCard number (VCC)

...

QUERY

...

lang

...

  • ASCII string (5)

  • Customer Preferred language

  • Available values: (en=English) or (fr=French)

  • Default value: en

...

BODY

...

amount

...

  • number (18,2)

  • Amount of the transaction to calculate interest on

Example Request:

Code Block
{
    "amount": 234.45
}

Response Parameters:

...

Type

...

Parameter

...

Details

...

BODY

...

account_number

...

  • number (14)

  • The Account Number of the Primary Account Holder

  • This is not the VCC (Flexiti Card)

...

BODY

...

account_type

...

  • ASCII string (100)

  • This is the type of account: consumer or business

...

BODY

...

amount

...

  • number (18,2)

  • Authorization amount

...

BODY

...

customer.available_credit

...

  • number (18,2)

  • Customer’s open to buy

...

BODY

...

customer.air

...

  • number (5,4)

  • air for the customer

...

BODY

...

customer.first_name

...

  • ASCII string (35)

  • Customer’s First Name

...

BODY

...

customer.last_name

...

  • ASCII string (50)

  • Customer’s Last Name

...

BODY

...

customer.customer_category_type

...

  • ASCII string (30)

  • Category related to the customer’s risk rating

  • Possible values: preferred, premium, standard

...

BODY

...

regular_purchase.term_amount

...

  • number (18,2)

  • Value to explain the amount to be paid by month (or a deferred payment)

...

BODY

...

regular_purchase.air

...

  • number (5,4)

  • air for the purchase

...

BODY

...

regular_purchase.verify

...

  • boolean

  • Indicate if a customer can use regular_purchase_bypass as a format on the POST /client-id/{client_id}/account/{account_number}/verify endpoint for a regular revolve purchase.

  • This value will be true if:

    • the account_number being passed has made ≤ 3 regular purchases in the past 24HS; and,

    • the amount on the request is ≤ $200

...

BODY

...

regular_purchase.fees.description

...

  • ASCII string (50)

  • Customer facing label of this fee

...

BODY

...

regular_purchase.fees.amount

...

  • number (18,2)

  • Amount of the fees

...

BODY

...

regular_purchase.fees.type

...

  • ASCII String (20)

  • Denotes if the administrative fee amount is a monthly or total amount

  • Possible values:

    • admin_total

    • admin_monthly

...

BODY

...

regular_purchase.fees.message

...

  • ASCII string (1000)

  • Used to convey information necessary to notify the customer

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.plan_id

...

  • number (3)

  • ID of the promotional plan

...

BODY

...

promotional_purchase.terms.term

...

  • number (3)

  • Term of the promotional plan

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.terms.term_amount

...

  • number (18,2)

  • Value to explain the amount to be paid by month (or a deferred payment)

    • This will include admin fees

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.terms.apr

...

  • number (5,4)

  • It will be a coefficient

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.terms.fees.description

...

  • ASCII string (50)

  • Customer facing label of this fee

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.terms.fees.amount

...

  • number (18,2)

  • Amount of the fees

  • Merchant is obligated to display this to the customer

...

BODY

...

promotional_purchase.terms.fees.type

...

  • ASCII String (20)

  • Whether the fees displayed are per month or in total

  • Possible values: admin_total, admin_monthly

...

BODY

...

promotional_purchase.terms.fees.message

...

  • ASCII string (1000)

  • Used to convey information necessary to notify the customer

  • Merchant is obligated to display this to the customer

Success Response - ROC Customer:

...

breakoutModewide
languagejson

...

  • ASCII string

  • PDF417 code with driver licence information

Example Request:

Code Block
languagejson
{
    "code": "@\n\u001e\rANSI\n604428040101 DL00310219DLDCAunavI\nDCBNONE\nDCDNONE\nDBA20200515\nDCSNUMBER1\nDACENSTREAM \nDAD\nDBD20140516\nDBB19740515\nDBCZ\nDAYBLU\nDAU163 cm\nDAG55 UNIVERSITY AVE\nDAITORONTO\nDAJON\nDAKM5J 2H7\nDAQD61014070660905\nDCFPEJK368N4\nDCGCAN\nDDEU\nDDFU\nDDGU\r"
}

Success Response:

Code Block
languagejson
{
    "first_name": "John",
    "middle_name": "Garry",
    "last_name": "Smith",
    "dob": "1974-05-15",
    "address_1": "123 ANY STREET",
    "city": "TORONTO",
    "province": "ON",
    "postal_code": "M1M 1M1",
    "govid_type": "CADL",
    "govid_issuedby": "ON",
    "govid_number": "D61014070123456",
    "govid_expiry": "2021-05-15"
}

...

POST /client-id/{client_id}/accounts/{account_number}/calculate-interest

Code Block
breakoutModewide
https://{posapi_url}/flexiti/pos-api/v2.5.1/client-id/{client_id}/accounts/12345/calculate-interest

NOTE: the /calculate-interest endpoint has been updated to version 2.5.1, reflected in the URI.

This endpoint retrieves the plan and term configured for the merchant that can be offered to a customer.

Request Parameters:

Type

Parameter

Required

Details

HEADER

authorization

Yes

  • ASCII string (1000)

  • This is the word “Bearer” with a space and then the access_token given in oauth/token API response

  • Default value: Bearer {insert_bearer_token_from_oauth_here/token_api}

HEADER

x-reference-id

Yes

  • ASCII string (32)

  • GUID

  • Unique identifier for the flow for traceability purposes

PATH

client_id

Yes

  • ASCII string (100)

  • This is the Client ID given in the Developer User Account section

PATH

account_number

Yes

  • number (14)

  • The Account Number of the Primary Account Holder

  • his is not the FlexitiCard number (VCC)

QUERY

lang


  • ASCII string (5)

  • Customer Preferred language

  • Available values: (en=English) or (fr=French)

  • Default value: en

BODY

amount

  • number (18,2)

  • Amount of the transaction to calculate interest on

Example Request:

Code Block
{
    "amount": 234.45
}

Response Parameters:

Type

Parameter

Details

BODY

account_number

  • number (14)

  • The Account Number of the Primary Account Holder

  • This is not the VCC (Flexiti Card)

BODY

account_type

  • ASCII string (100)

  • This is the type of account: consumer or business

BODY

amount

  • number (18,2)

  • Authorization amount

BODY

customer.available_credit

  • number (18,2)

  • Customer’s open to buy

BODY

customer.air

  • number (5,4)

  • air for the customer

BODY

customer.first_name

  • ASCII string (35)

  • Customer’s First Name

BODY

customer.last_name

  • ASCII string (50)

  • Customer’s Last Name

BODY

customer.category_type

  • ASCII string (30)

  • Category related to the customer’s risk rating

  • Possible values: preferred, premium, standard

BODY

regular_purchase.term_amount

  • number (18,2)

  • Value to explain the amount to be paid by month (or a deferred payment)

BODY

regular_purchase.air

  • number (5,4)

  • air for the purchase

BODY

regular_purchase.verify

  • boolean

  • Indicate if a customer can use regular_purchase_bypass as a format on the POST /client-id/{client_id}/account/{account_number}/verify endpoint for a regular revolve purchase.

  • This value will be true if:

    • the account_number being passed has made ≤ 3 regular purchases in the past 24HS; and,

    • the amount on the request is ≤ $200

BODY

regular_purchase.fees.description

  • ASCII string (50)

  • Customer facing label of this fee

BODY

regular_purchase.fees.amount

  • number (18,2)

  • Amount of the fees

BODY

regular_purchase.fees.type

  • ASCII String (20)

  • Denotes if the administrative fee amount is a monthly or total amount

  • Possible values:

    • admin_total

    • admin_monthly

BODY

regular_purchase.fees.message

  • ASCII string (1000)

  • Used to convey information necessary to notify the customer

  • Merchant is obligated to display this to the customer

BODY

promotional_purchase.plan_id

  • number (3)

  • ID of the promotional plan

BODY

promotional_purchase.plan_name

  • ASCII string

  • Name of the promotional plan available to the customer

BODY

promotional_purchase.terms.term

  • number (3)

  • Term of the promotional plan

  • Merchant is obligated to display this to the customer

BODY

promotional_purchase.terms.term_amount

  • number (18,2)

  • Value to explain the amount to be paid by month (or a deferred payment)

    • This will include admin fees

  • Merchant is obligated to display this to the customer

BODY

promotional_purchase.terms.annual_rates.description

  • ASCII string

  • Customer facing long-form label of this interest rate

  • Merchant can choose to display either this field or the short-form label to the customer

BODY

promotional_purchase.terms.annual_rates.rate

  • number (5, 4)

  • Applicable interest rate presented in decimal form

  • Merchant is obligated to display this rate to the customer

BODY

promotional_purchase.terms.annual_rates.type

  • ASCII string

  • Customer facing short-form label of the interest rate

  • Merchant can choose to display either this field or the long-form label to the customer

  • Possible values: “APR”, “AIR” depending on the plan type / plan_id

BODY

promotional_purchase.terms.annual_rates.message

  • ASCII string (1000)

  • Used to convey legal disclaimer necessary to notify the customer about their promotional plan

  • Merchant is obligated to display this to the customer within 1-click away from the plan selection

BODY

promotional_purchase.terms.fees.description

  • ASCII string (50)

  • Customer facing label of this fee

  • Merchant is obligated to display this to the customer

BODY

promotional_purchase.terms.fees.amount

  • number (18,2)

  • Amount of the fees

  • Merchant is obligated to display this to the customer

BODY

promotional_purchase.terms.fees.type

  • ASCII String (20)

  • Whether the fees displayed are per month or in total

  • Possible values: admin_total, admin_monthly

BODY

promotional_purchase.terms.fees.message

  • ASCII string (1000)

  • Used to convey information necessary to notify the customer

  • Merchant is obligated to display this to the customer

Success Response - ROC Customer:

Code Block
breakoutModewide
languagejson
{
    "account_number": 116994755,
    "account_type": "consumer",
    "amount": 10.5,
    "customer": {
        "air": 0.3099,
        "available_credit": 14000,
        "first_name": "Flexiti",
        "last_name": "MITester",
        "category_type": "preferred"
    },
    "regular_purchase": {
        "term_amount": 10.5,
        "air": 0.3099,
        "fees": [],
        "verify": true
    },
    "promotional_purchase": [
        {
            "plan_id": 4,
            "plan_name": "EMP - Regular Interest"
            "terms": [
                {
                    "term": 3,
                    "term_amount": 3.56,
                    "fees": [],
                    "annual_rates": {
                        "description": "Annual Promotional Interest Rate:",
                        "first_namerate": "John", 0.0999,
              "last_name": "Smith",         "category_type": "preferred"
    }APR",
    "regular_purchase": {         "term_amount": 250,         "airmessage": 0.289,
        "fees": []
    },
     "promotional_purchase": [
        {
            "plan_id": 4,"Promotional annual interest rate applies during the promotional period and is included in your estimated monthly payments. Account annual interest rate is charged if the promo is cancelled or expires without full payment and applies when promos are not in effect."
             "terms": [      }
          {      },
              "term": 3,  {
                    "term_amount": 20.336,
                    "aprterm_amount": 010.099938,
                    "fees": [
                        {
                            "description": "Administrative fees:",
                            "amount": 49.9950,
                            "type": "admin_total",
                            "message": "Although your administrative fee may be represented as a monthly or annual amount, the fee is due in full if the account is paid off early. See terms and conditions for full details."
                        }
             and conditions for full details."
       ]                 }
            ]         }],
        {             "planannual_idrates": {
5,              "terms": [         "description": "Annual Promotional Interest Rate:",
   {                     "termrate": 6,0.0999,
                        "term_amounttype": 4.67"APR",
                        "aprmessage": 0,
                    "fees": [
        "Promotional annual interest rate applies during the promotional period and is included in your estimated monthly payments. Account annual interest rate is charged if the promo is cancelled or expires without full payment and applies when promos are not in effect."
                {    }
                },
       "description": "Administrative fees:",        {
                    "amountterm": 312,
                    "term_amount": 5.32,
      "type": "admin_monthly",                  "fees": [
          "message": "Although your administrative fee may be represented as a monthly or annual amount, the{
fee is due in full if the account is paid off early. See terms and conditions for full details."          "description": "Administrative fees:",
            }                "amount": 49.99,
   ]                 },        "type": "admin_total",
       {                     "termmessage": 12,"Although your administrative fee may be represented as a monthly or annual amount, the fee is due in full if the account is  "term_amount": 3.83,
      paid off early. See terms and conditions for full details."
             "apr": 0,           }
            "fees": [       ],
                 {   "annual_rates": {
                        "description": "Administrative feesAnnual Promotional Interest Rate:",
   
                        "amountrate": 30.0999,
                            "type": "admin_monthlyAPR",
        
                   "message": "Although your administrative fee may be represented as a monthly or annual amount, the fee is due in full if the account is paid off early. See terms and conditions for full details."
                        }"message": "Promotional annual interest rate applies during the promotional period and is included in your estimated monthly payments. Account annual interest rate is charged if the promo is cancelled or expires without full payment and applies when promos are not in effect."
                     ]}
                }
            ]
        }
    ]
}

Success Response - Quebec Customer

Code Block
breakoutModewide
languagejson
{
    "account_number": 116994859,
    "account_type": 11223344"consumer",
    "amount": 25010.5,
    "customer": {
        "air": 0.31243099,
        "available_credit": 170013500,
        "first_name": "JacquesFlexiti",
        "last_name": "SmithMITester",
        "category_type": "premiumpreferred"
    },
    "regular_purchase": {
        "term_amount": 25010.5,
        "air": 0.31243099,
        "fees": [],
        "verify": true
    },
    "promotional_purchase": [
        {
            "plan_id": 5,
  4,
            "plan_name": "EMP - Regular Interest"
            "terms": [
                {
                    "term": 6 3,
                    "term_amount": 3.56,
                    "term_amountfees": 41.67[],
                    "aprannual_rates": 0, {
                        "feesdescription": []"Annual Promotional Interest Rate:",
             },            "rate": 0.0999,
   {                     "termtype": 12"APR",
                    "term_amount    "message": 20.83,
                    "apr": 0,
                    "fees": []"Promotional annual interest rate applies during the promotional period and is included in your estimated monthly payments. Account annual interest rate is charged if the promo is cancelled or expires without full payment and applies when promos are not in effect."
                 }   }
         ]       },
 },         {      {
      "plan_id": 9,             "termsterm": 6,
   [                 {"term_amount": 1.8,
                    "termfees": 6[],
                    "termannual_amountrates": 250,{
                        "aprdescription": 0.35, "Annual Promotional Interest Rate:",
                        "feesrate": []0.0999,
                },             "type": "APR",
   {                     "termmessage": 12,"Promotional annual interest rate applies during the promotional period and is included in your estimated monthly payments. Account annual interest  "term_amount": 250,
                    "apr": 0.35,rate is charged if the promo is cancelled or expires without full payment and applies when promos are not in effect."
                    "fees": []}
                }
            ]
        }
    ]
}