Giter Club home page Giter Club logo

companieshouse.payment-reconciler's Introduction

payment-reconciler

A lambda to reconcile payments. This service collates data from a payment reconciliation database and writes it to CSV's on an SFTP server.

The Lambda function

This API runs on AWS Lambda. Release and deployment of the lambda is similar to that of other trunk based services. After performing relevant unit tests, a github release task is run and the zip is uploaded to the S3 release bucket. Terraform is then run to deploy the new version.

Terraform deployment

All dependent AWS resources are provisioned by Terraform and deployed from a concourse pipeline. Click "plan" then "apply" jobs with desired environment to deploy the lambda. The pipeline is capable of deploying everything so manual deployment should not be necessary. For instructions on Terraform provisioning, see here.

Environment Variables

Environment variables required to execute the lambda:

Name Description Examples
MONGODB_PAYMENT_REC_TRANSACTIONS_COLLECTION The name of the collection within the payment reconciliation database from which to fetch transactions data.
MONGODB_PAYMENT_REC_PRODUCTS_COLLECTION The name of the collection within the payment reconciliation database from which to fetch products data.
MONGODB_PAYMENT_REC_DATABASE The name of the payment reconciliation database.
MONGODB_URL The Mongo database URL. 'mongodb://<mongo_host>:27017
SFTP_SERVER The SFTP server host name.
SFTP_PORT The port over which to connect to the SFTP server. '22'
SFTP_USERNAME The username of the SFTP server credentials.
SFTP_PASSWORD The password of the SFTP server credentials.
SFTP_FILE_PATH The file path, relative to the root of the SFTP server, to which to upload CSV files. 'uploadPath' (will result is CV's uploaded to directory: ~/uploadPath)

companieshouse.payment-reconciler's People

Contributors

bsaunders95 avatar gareth-e avatar jsimons1989 avatar klawani avatar mateuszc-kainos avatar mattystone avatar sroberts2 avatar vaughanjackson123 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.