Upload a bank statement CSV.

POST /api/v1/bank-statement/upload

Headers

application/json

Body Required

  • statement_uuid string Required

    Payment period statement UUID, must be unlocked.

  • date date Required

    Bank statement date

  • Statement reference given by bank

  • bank_transactions array[string] Required

    An array of payments. Required data are amount, If transaction date is not provided it will use the bank statement date. All amounts must be in pennies. Can also provide extra metadata which can be the rest of the columns of the bank statement.

  • filename string

    Filename of the CSV import payments.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • uuid string

      The UUID of the resource.

    • The timestamp of when the resource was created.

    • The timestamp of when the resource was updated.

    • Client name

    • Unique statement transactions reference assigned by the provider

    • Provider reference of the plan the statement transactions belongs to

    • date string

      Date of when the provider received the statement transactions

    • Gross amount

      Additional properties are allowed.

    • Net amount

      Additional properties are allowed.

    • category string

      Expected payment category for accurate reporting

    • Who is expected to pay this statement transactions

    • Agency number

    • Product reference

    • Adviser name

    • Sender id sib number

    • reason string

      Reason

    • Scheme name

    • Scheme number

    • Customer number

    • Policy market value

    • provider string

      Provider this statement transaction belongs to if provided

    • Provider statement this statement transaction belongs to

      Additional properties are allowed.

    • metadata object

      Any metadata that was saved during a CSV import for statement transactions

      Additional properties are allowed.

    • The expectation that the statement transaction has been reconciled against

      Additional properties are allowed.

    • bank_transactions array[object]

      The bank payments used to reconcile this statement transaction

      Additional properties are allowed.

    • The statement period this statement transaction belongs to

      Additional properties are allowed.

    • account object

      Account that created this statement transaction

      Additional properties are allowed.

    • firm object

      Firm this statement transaction belongs to

      Additional properties are allowed.

POST /api/v1/bank-statement/upload
curl \
 -X POST https://api.plannrcrm.com/api/v1/bank-statement/upload \
 -H "Authorization: Bearer {OAUTH_ACCESS_TOKEN or PERSONAL_ACCESS_TOKEN}" \
 -H "Content-Type: application/json" \
 -H "Accept: application/json" \
 -H "X-PLANNR-ACCOUNT-UUID: {YOUR_PLANNR_ACCOUNT_UUID}" \
 -d '{"statement_uuid":"44fab077-8a49-42c6-8dfe-86ca9a416d5b","date":"2024-11-20","reference":"Natwest Statement #8434","bank_transactions":[{"date":"2022-07-15","amount":12345,"reference":"AvivaRef#34"},{"date":"2022-07-14","amount":19855,"reference":"VIT_LTD"}],"filename":"natwest-statement-2022-04-05.csv"}'
Request examples
# Headers
Authorization: Bearer {OAUTH_ACCESS_TOKEN or PERSONAL_ACCESS_TOKEN}
Content-Type: application/json
Accept: application/json
X-PLANNR-ACCOUNT-UUID: {YOUR_PLANNR_ACCOUNT_UUID}

# Payload
{
  "statement_uuid": "44fab077-8a49-42c6-8dfe-86ca9a416d5b",
  "date": "2024-11-20",
  "reference": "Natwest Statement #8434",
  "bank_transactions": [
    {
      "date": "2022-07-15",
      "amount": 12345,
      "reference": "AvivaRef#34"
    },
    {
      "date": "2022-07-14",
      "amount": 19855,
      "reference": "VIT_LTD"
    }
  ],
  "filename": "natwest-statement-2022-04-05.csv"
}
Response examples (200)
{
  "date": "2024-11-20",
  "firm": {
    "tax": 17.5,
    "logo": "https://api.plannrcrm.com/images/plannr.jpg",
    "name": "Codepotato",
    "slug": "codepotato",
    "uuid": "c5502d22-8ecf-493e-b27c-a8ea82c5ccdf",
    "county": "Hampshire",
    "billing": {
      "invoice_email": "gareth@codepotato.co.uk",
      "invoice_county": "Hampshire",
      "invoice_country": "United Kingdom",
      "invoice_postcode": "PO7 7YH",
      "invoice_address_1": "Suite E, 5 The Briars",
      "invoice_address_2": "Waterberry Drive",
      "invoice_town_city": "Waterlooville"
    },
    "country": "United Kingdom",
    "postcode": "PO7 7YH",
    "address_1": "Suite E, 5 The Briars",
    "address_2": "Waterberry Drive",
    "logo_icon": "https://api.plannrcrm.com/images/plannr-icon.jpg",
    "month_end": 25,
    "town_city": "Waterlooville",
    "created_at": "2024-11-20T13:24:04+00:00",
    "updated_at": "2024-11-20T13:24:04+00:00",
    "ip_whitelist": [
      "192.168.0.1",
      "127.0.0.1"
    ],
    "brand_colours": {
      "sidebar_text": "#ffffff",
      "sidebar_hover": "#0A0A42",
      "email_sub_text": "#ffffff",
      "sidebar_accent": "#36367E",
      "sidebar_active": "#53DBB8",
      "email_background": "#0E0E56",
      "email_button_text": "#ffffff",
      "sidebar_background": "#0E0E56",
      "sidebar_title_primary": "#FFC634",
      "email_button_background": "#36367E",
      "sidebar_title_secondary": "#ffffff",
      "sidebar_title_background": "#36367E",
      "email_logo_background_panel": "#36367E",
      "sidebar_title_secondary_hover": "#ffffff"
    },
    "is_subscribed": true,
    "regulatory_text": "Regulatory text",
    "addon_subscriptions": "App\\Http\\Resources\\Addons\\AddonSubscriptionResource",
    "statement_frequency": "monthly",
    "task_board_template": "App\\Http\\Resources\\Board\\BoardResource",
    "keep_deleted_files_for": 30,
    "welcome_paragraph_html": "<h1>Welcome.</h1>",
    "email_welcome_paragraph_html": "Welcome to Plannr!"
  },
  "uuid": "617f48dd-56f2-491b-9d53-2879fd476575",
  "reason": "Reason",
  "account": {
    "firm": "App\\Http\\Resources\\FirmResource",
    "name": "Gareth Thompson",
    "role": "client",
    "tags": "App\\Http\\Resources\\TagResource",
    "type": "client",
    "uuid": "72ea14aa-a9f2-4c0e-ba9a-d861e163d25e",
    "email": "gareth@codepotato.co.uk",
    "groups": "App\\Http\\Resources\\GroupResource",
    "owners": "App\\Http\\Resources\\AccountResource",
    "last_name": "Thompson",
    "created_at": "2024-11-20T13:24:04+00:00",
    "first_name": "Gareth",
    "updated_at": "2024-11-20T13:24:04+00:00",
    "with_login": true,
    "custom_fields": "App\\Http\\Resources\\CustomFieldValueResource",
    "introduced_by": "App\\Http\\Resources\\AccountResource",
    "primary_email": "App\\Http\\Resources\\ContactDetailResource",
    "can_be_deleted": "false",
    "assigned_adviser": "App\\Http\\Resources\\AccountResource",
    "next_review_date": "2024-11-20T13:24:04+00:00",
    "has_joint_account": true,
    "current_time_entry": "App\\Http\\Resources\\TimeEntryResource",
    "first_contact_date": "2024-11-20T13:24:04+00:00",
    "external_references": "App\\Http\\Resources\\ExternalReferenceResource",
    "assigned_paraplanner": "App\\Http\\Resources\\AccountResource",
    "previous_review_date": "2024-11-20T13:24:04+00:00",
    "primary_phone_number": "App\\Http\\Resources\\ContactDetailResource",
    "assigned_administrator": "App\\Http\\Resources\\AccountResource",
    "anniversary_review_date": "2024-11-20T13:24:04+00:00"
  },
  "category": "initial_fee",
  "metadata": {
    "client_name": "Gareth Thompson"
  },
  "provider": "Aviva",
  "statement": {
    "name": "01/06/2022 - 30/06/2022",
    "uuid": "28b6a6ed-7ebf-4671-87aa-c47be84353dd",
    "locked": false,
    "end_date": "2022-06-01",
    "locked_at": "2024-11-20T13:24:04+00:00",
    "locked_by": "App\\Http\\Resources\\AccountResource",
    "created_at": "2024-11-20T13:24:04+00:00",
    "start_date": "2022-06-30",
    "updated_at": "2024-11-20T13:24:04+00:00",
    "expectations_count": 6,
    "total_expectations": {
      "amount": "124585",
      "currency": "GBP",
      "formatted": "£1,245.85"
    },
    "statement_transactions": "App\\Http\\Resources\\StatementTransactionResource",
    "total_bank_transactions": {
      "amount": "125599",
      "currency": "GBP",
      "formatted": "£1,255.99"
    },
    "statement_transactions_count": 6,
    "total_statement_transactions": {
      "amount": "125599",
      "currency": "GBP",
      "formatted": "£1,255.99"
    },
    "total_expectation_amount_reconciled_to_bank": {
      "amount": "125599",
      "currency": "GBP",
      "formatted": "£1,255.99"
    },
    "total_expectation_percentage_reconciled_to_bank": {
      "amount": "8570",
      "currency": "GBP",
      "formatted": "£85.70"
    }
  },
  "created_at": "2024-11-20T13:24:04+00:00",
  "net_amount": {
    "amount": {
      "example": "4000",
      "description": "Money amount at their lowest denominator (for example: pennies)"
    },
    "currency": {
      "example": "GBP",
      "description": "Currency of the money"
    },
    "formatted": {
      "example": "£40.00",
      "description": "Money amount formatted with currency"
    }
  },
  "updated_at": "2024-11-20T13:24:04+00:00",
  "client_name": "Gareth Thompson",
  "expectation": {
    "tax": 20,
    "firm": "App\\Http\\Resources\\FirmResource",
    "type": "fee",
    "uuid": "472146f1-adc1-4410-8d1d-de36c749b757",
    "amount": {
      "amount": {
        "example": "4000",
        "description": "Money amount at their lowest denominator (for example: pennies)"
      },
      "currency": {
        "example": "GBP",
        "description": "Currency of the money"
      },
      "formatted": {
        "example": "£40.00",
        "description": "Money amount formatted with currency"
      }
    },
    "author": "App\\Http\\Resources\\AccountResource",
    "seller": "App\\Http\\Resources\\AccountResource",
    "account": "App\\Http\\Resources\\AccountResource",
    "category": "ongoing_fee",
    "recurring": true,
    "rmar_type": "adviser_charge",
    "statement": "App\\Http\\Resources\\StatementResource",
    "chargeable": "App\\Http\\Resources\\Plans\\PlanResource",
    "created_at": "2024-11-20T13:24:04+00:00",
    "net_amount": {
      "amount": {
        "example": "4000",
        "description": "Money amount at their lowest denominator (for example: pennies)"
      },
      "currency": {
        "example": "GBP",
        "description": "Currency of the money"
      },
      "formatted": {
        "example": "£40.00",
        "description": "Money amount formatted with currency"
      }
    },
    "percentage": 0.75,
    "tax_exempt": true,
    "updated_at": "2024-11-20T13:24:04+00:00",
    "advice_type": "independent",
    "is_balanced": false,
    "gross_amount": {
      "amount": {
        "example": "4000",
        "description": "Money amount at their lowest denominator (for example: pennies)"
      },
      "currency": {
        "example": "GBP",
        "description": "Currency of the money"
      },
      "formatted": {
        "example": "£40.00",
        "description": "Money amount formatted with currency"
      }
    },
    "service_type": "initial",
    "income_splits": "App\\Http\\Resources\\IncomeSplitResource",
    "payment_origin": "provider",
    "advice_area_net": {
      "deposit": 7500,
      "unknown": 0,
      "non_rmar": 0,
      "non_regulated": 0,
      "retail_investment": 0,
      "regulated_mortgage": 2500,
      "other_fca_regulated": 0,
      "non_investment_insurance": 0
    },
    "charge_schedule": "App\\Http\\Resources\\ChargeResource",
    "chargeable_type": "plan",
    "expected_amount": {
      "amount": {
        "example": "4000",
        "description": "Money amount at their lowest denominator (for example: pennies)"
      },
      "currency": {
        "example": "GBP",
        "description": "Currency of the money"
      },
      "formatted": {
        "example": "£40.00",
        "description": "Money amount formatted with currency"
      }
    },
    "advice_area_gross": {
      "deposit": 7500,
      "unknown": 0,
      "non_rmar": 0,
      "non_regulated": 0,
      "retail_investment": 0,
      "regulated_mortgage": 2500,
      "other_fca_regulated": 0,
      "non_investment_insurance": 0
    },
    "exclude_from_rmar": true,
    "expected_payment_date": "2024-11-20T13:24:04+00:00",
    "statement_transactions": "App\\Http\\Resources\\StatementTransactionResource",
    "unbalanced_expected_amount": {
      "amount": {
        "example": "4000",
        "description": "Money amount at their lowest denominator (for example: pennies)"
      },
      "currency": {
        "example": "GBP",
        "description": "Currency of the money"
      },
      "formatted": {
        "example": "£40.00",
        "description": "Money amount formatted with currency"
      }
    }
  },
  "scheme_name": "Scheme name",
  "adviser_name": "Adviser name",
  "gross_amount": {
    "amount": {
      "example": "4000",
      "description": "Money amount at their lowest denominator (for example: pennies)"
    },
    "currency": {
      "example": "GBP",
      "description": "Currency of the money"
    },
    "formatted": {
      "example": "£40.00",
      "description": "Money amount formatted with currency"
    }
  },
  "agency_number": "Agency number",
  "policy_number": "AVIVA_00001",
  "scheme_number": "Scheme number",
  "payment_origin": "provider",
  "customer_number": "Customer number",
  "bank_transactions": [
    {
      "date": "2022-07-15",
      "firm": "App\\Http\\Resources\\FirmResource",
      "uuid": "eb4437ec-a1cd-43bb-acf0-a5a8c6799f08",
      "amount": {
        "amount": "12399",
        "currency": "GBP",
        "formatted": "£123.99"
      },
      "account": "App\\Http\\Resources\\AccountResource",
      "filename": "Natwest June 2022 Statement.xlsx",
      "metadata": {
        "client_name": "Gareth Thompson"
      },
      "reference": "VitalityLtd",
      "statement": "App\\Http\\Resources\\StatementResource",
      "created_at": "2024-11-20T13:24:04+00:00",
      "updated_at": "2024-11-20T13:24:04+00:00",
      "bank_statement": "App\\Http\\Resources\\BankStatementResource"
    }
  ],
  "product_reference": "Product reference",
  "provider_statement": {
    "date": "2024-11-20",
    "name": "Aviva",
    "uuid": "64587830-fd83-4505-9575-1b6c06c6887b",
    "number": 23,
    "origin": "upload",
    "filename": "aviva-statement-may.csv",
    "provider": "App\\Http\\Resources\\Plans\\ProviderResource",
    "reference": "SW#8434",
    "statement": "App\\Http\\Resources\\StatementResource",
    "created_at": "2024-11-20T13:24:04+00:00",
    "updated_at": "2024-11-20T13:24:04+00:00",
    "total_amount": {
      "amount": "345895",
      "currency": "GBP",
      "formatted": "£3,458.95"
    },
    "statement_transactions": "App\\Http\\Resources\\StatementTransactionResource",
    "statement_transactions_count": 6,
    "reconciled_expectations_amount": {
      "amount": "12849",
      "currency": "GBP",
      "formatted": "£128.49"
    },
    "reconciled_expectations_percentage": 95.68,
    "is_fully_reconciled_to_expectations": true,
    "reconciled_bank_transactions_amount": {
      "amount": "22985",
      "currency": "GBP",
      "formatted": "£229.85"
    },
    "reconciled_bank_transactions_percentage": 95.68
  },
  "policy_market_value": "Policy market value",
  "sender_id_sib_number": "Sender id sib number",
  "transaction_reference": "TiqsUwf6Ea"
}