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

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":"f891346b-f87d-49e2-98e2-85dedaefe6fe","date":"2024-10-16","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": "f891346b-f87d-49e2-98e2-85dedaefe6fe",
  "date": "2024-10-16",
  "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-10-16",
  "firm": {
    "tax": 17.5,
    "logo": "https://api.plannrcrm.com/images/plannr.jpg",
    "name": "Codepotato",
    "slug": "codepotato",
    "uuid": "d5dba9e5-4d9b-4767-8869-24dca23339b3",
    "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-10-16T11:10:17+01:00",
    "updated_at": "2024-10-16T11:10:17+01: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": "ec45b924-8154-426f-8223-90f4c7b2fd96",
  "reason": "Reason",
  "account": {
    "firm": "App\\Http\\Resources\\FirmResource",
    "name": "Gareth Thompson",
    "role": "client",
    "tags": "App\\Http\\Resources\\TagResource",
    "type": "client",
    "uuid": "e750414e-9e74-4edc-b76a-e9b118da1597",
    "email": "gareth@codepotato.co.uk",
    "groups": "App\\Http\\Resources\\GroupResource",
    "owners": "App\\Http\\Resources\\AccountResource",
    "last_name": "Thompson",
    "created_at": "2024-10-16T11:10:17+01:00",
    "first_name": "Gareth",
    "updated_at": "2024-10-16T11:10:17+01: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-10-16T11:10:17+01:00",
    "has_joint_account": true,
    "current_time_entry": "App\\Http\\Resources\\TimeEntryResource",
    "first_contact_date": "2024-10-16T11:10:17+01:00",
    "external_references": "App\\Http\\Resources\\ExternalReferenceResource",
    "assigned_paraplanner": "App\\Http\\Resources\\AccountResource",
    "previous_review_date": "2024-10-16T11:10:17+01:00",
    "primary_phone_number": "App\\Http\\Resources\\ContactDetailResource",
    "assigned_administrator": "App\\Http\\Resources\\AccountResource",
    "anniversary_review_date": "2024-10-16T11:10:17+01:00"
  },
  "category": "initial_fee",
  "metadata": {
    "client_name": "Gareth Thompson"
  },
  "provider": "Aviva",
  "statement": {
    "name": "01/06/2022 - 30/06/2022",
    "uuid": "3bcc780a-06df-4db6-b227-7be03b80c55b",
    "locked": false,
    "end_date": "2022-06-01",
    "locked_at": "2024-10-16T11:10:17+01:00",
    "locked_by": "App\\Http\\Resources\\AccountResource",
    "created_at": "2024-10-16T11:10:17+01:00",
    "start_date": "2022-06-30",
    "updated_at": "2024-10-16T11:10:17+01: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-10-16T11:10:17+01: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-10-16T11:10:17+01:00",
  "client_name": "Gareth Thompson",
  "expectation": {
    "tax": 20,
    "firm": "App\\Http\\Resources\\FirmResource",
    "type": "fee",
    "uuid": "c4777cee-1438-4835-8ca2-83d293b66214",
    "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-10-16T11:10:17+01: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-10-16T11:10:17+01: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-10-16T11:10:17+01: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": "1c6b53e8-eb49-4330-a767-436a1e995e02",
      "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-10-16T11:10:17+01:00",
      "updated_at": "2024-10-16T11:10:17+01:00",
      "bank_statement": "App\\Http\\Resources\\BankStatementResource"
    }
  ],
  "product_reference": "Product reference",
  "provider_statement": {
    "date": "2024-10-16",
    "name": "Aviva",
    "uuid": "f3f88adc-4938-4316-a310-3090c5f35c01",
    "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-10-16T11:10:17+01:00",
    "updated_at": "2024-10-16T11:10:17+01: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": "7ZjJZkONaT"
}