Skip to content

Commit 1ca783b

Browse files
committed
Update docs
1 parent 251f505 commit 1ca783b

File tree

4 files changed

+160
-53
lines changed

4 files changed

+160
-53
lines changed

.editorconfig

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ trim_trailing_whitespace = true
88
insert_final_newline = true
99

1010
[*.md]
11-
trim_trailing_whitespace = false
11+
trim_trailing_whitespace = false

CODE_OF_CONDUCT.md

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to make participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, sex characteristics, gender identity and expression,
9+
level of experience, education, socio-economic status, nationality, personal
10+
appearance, race, religion, or sexual identity and orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
* Using welcoming and inclusive language
18+
* Being respectful of differing viewpoints and experiences
19+
* Gracefully accepting constructive criticism
20+
* Focusing on what is best for the community
21+
* Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
* The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
* Trolling, insulting/derogatory comments, and personal or political attacks
28+
* Public or private harassment
29+
* Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
* Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies within all project spaces, and it also applies when
49+
an individual is representing the project or its community in public spaces.
50+
Examples of representing a project or community include using an official
51+
project e-mail address, posting via an official social media account, or acting
52+
as an appointed representative at an online or offline event. Representation of
53+
a project may be further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting the project team at conduct@stripe.com. All
59+
complaints will be reviewed and investigated and will result in a response that
60+
is deemed necessary and appropriate to the circumstances. The project team is
61+
obligated to maintain confidentiality with regard to the reporter of an incident.
62+
Further details of specific enforcement policies may be posted separately.
63+
64+
Project maintainers who do not follow or enforce the Code of Conduct in good
65+
faith may face temporary or permanent repercussions as determined by other
66+
members of the project's leadership.
67+
68+
## Attribution
69+
70+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72+
73+
[homepage]: https://www.contributor-covenant.org
74+
75+
For answers to common questions about this code of conduct, see
76+
https://www.contributor-covenant.org/faq

CONTRIBUTING.md

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Contributing
2+
3+
Contributions of any kind are welcome! If you've found a bug or have a feature request, please feel free to [open an issue](https://github.com/stripe-samples/issuing-treasury/issues).
4+
5+
To make changes yourself, follow these steps:
6+
7+
1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository and [clone](https://help.github.com/articles/cloning-a-repository/) it locally.
8+
2. Make your changes
9+
3. Submit a [pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/)
10+
11+
## Contributor License Agreement ([CLA](https://en.wikipedia.org/wiki/Contributor_License_Agreement))
12+
13+
Once you have submitted a pull request, sign the CLA by clicking on the badge in the comment from [@CLAassistant](https://github.com/CLAassistant).
14+
15+
<img width="910" alt="image" src="https://user-images.githubusercontent.com/62121649/198740836-70aeb322-5755-49fc-af55-93c8e8a39058.png">
16+
17+
<br />
18+
Thanks for contributing to Stripe! :sparkles:

README.md

+65-52
Original file line numberDiff line numberDiff line change
@@ -1,95 +1,108 @@
1-
# Example Stripe Issuing and Treasury integration demonstrating Embedded Finance
1+
# Stripe Issuing and Treasury: An Embedded Finance Example
22

3-
This demo is an application that allows you to quickly experiment with an Embedded Finance experience using Stripe Issuing & Treasury APIs.
3+
This demo application enables users to work with an Embedded Finance experience, utilising Stripe's Issuing and Treasury APIs.
44

5-
With this application, you can:
5+
The application provides the following features:
66

7-
- Sign up for a Stripe [Custom connect](https://stripe.com/docs/connect/custom-accounts) Account and for a Stripe Treasury Financial Account
8-
- Onboard using [Connect Onboarding](https://stripe.com/docs/connect/connect-onboarding) for Custom accounts
9-
- Display the Financial Account Balance
10-
- Display a chart to quickly visualize funds coming in and coming out
11-
- Display a transaction report
12-
- Create a cardholder and issue a card, using the Financial Account as the source of funds
13-
- Display the issued card information in a compliant manner by leveraging Stripe Elements
14-
- Display the Financial Account's Routing and Account numbers
15-
- Send money from the Financial Account, either using ACH or Wire Transfers
7+
- Creation of a Stripe [Custom connect](https://stripe.com/docs/connect/custom-accounts) Account and a Stripe Treasury Financial Account.
8+
- Use of [Connect Onboarding](https://stripe.com/docs/connect/connect-onboarding) for Custom accounts setup.
9+
- Financial Account balance display.
10+
- Visualisation of incoming and outgoing funds via a chart.
11+
- Transaction report display.
12+
- Cardholder creation and card issuing, with the Financial Account serving as the funds source.
13+
- Compliance-maintained card information display using Stripe Elements.
14+
- Display of Financial Account's Routing and Account numbers.
15+
- Money transfer from the Financial Account with ACH or Wire Transfers.
1616

17-
In addition to these functions, there is also a *Test Data* section that will help platforms understanding the different mechanisms to fund Financial Accounts by:
17+
Additionally, a *Test Data* section helps to understand different mechanisms for funding Financial Accounts, by simulating the following:
1818

19-
- Simulating receiving a Transfer from an external account to a Financial Account.
19+
- Transfer reception from an external account to a Financial Account.
2020
- Creating a PaymentLink and then, paying out funds from the Connected Account balance to the Financial Account Balance.
21-
<!-- You can watch a recorded live stream about this demo [here](https://www.youtube.com/watch?v=2MiMFJ9c4t8). -->
2221

23-
## Requirements
22+
## Prerequisites
2423

25-
- **A Stripe account**: You can sign up for a Stripe account here: <https://dashboard.stripe.com/register>
26-
- **Onboard onto Issuing and Treasury**:
27-
- Issuing: [Instant Testmode](https://dashboard.stripe.com/setup/issuing/activate)
28-
- Treasury: [Please contact sales](https://go.stripe.global/treasury-inquiry)
29-
- **Stripe API keys**: Available in your Stripe dashboard here: <https://dashboard.stripe.com/test/apikeys>
24+
- **A Stripe account**: Register for a Stripe account here: <https://dashboard.stripe.com/register>
25+
- **Enable Issuing and Treasury in Stripe**:
26+
- Issuing: Use [Instant Testmode](https://dashboard.stripe.com/setup/issuing/activate)
27+
- Treasury: [Contact sales](https://go.stripe.global/treasury-inquiry)
28+
- **Stripe API keys**: Obtain your keys via <https://dashboard.stripe.com/test/apikeys>
3029

31-
## No-code deploy demo to Render.com
30+
## Deploy demo on Render.com
3231

33-
You can deploy this sample app directly to Render.com using the button below. This way you can try it out for yourself
34-
quickly and without any coding. The button below will create a free database and web service instance.
32+
To deploy this sample application directly in Render, click on the button below. It automatically logs into Render and
33+
initiates setup with a free database and web service instance. No coding required.
3534

3635
[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/stripe-samples/issuing-treasury)
3736

38-
When prompted, enter:
37+
Upon prompt, please provide:
3938

40-
* **Blueprint Name**: This can be anything (e.g. "Demo")
41-
* **Under Key / Value**:
42-
* **STRIPE_SECRET_KEY**: Your Stripe account's testmode API key
43-
* **NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY**: Your Stripe account's testmode publishable key
39+
- **Blueprint Name**: Enter any name (e.g., "Demo")
40+
- **Under Key / Value**:
41+
- **STRIPE_SECRET_KEY**: Enter your Stripe testmode API key
42+
- **NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY**: Enter your Stripe testmode publishable key
4443

45-
Once you click "Apply", the infrastructure will begin spinning up. After approximately 5 minutes, click on the link to
46-
"issuing-treasury" on the page to go to the web service. There, you'll see a link at the top to the URL. It'll look
47-
something like "https://issuing-treasury-12gj.onrender.com".
44+
After around 5 minutes, click on the "issuing-treasury" link to access your deployed web service.
4845

49-
## Local installation instructions
46+
## Local Installation
5047

51-
### Installing the dependencies
48+
### Dependency Installation
5249

53-
After cloning this repo, install the dependencies.
50+
Post cloning this repo, install the dependencies using:
5451

5552
npm install
5653

57-
### Populating your .env file
54+
### .env File Setup
5855

59-
Copy the `.env.example` file on the root of your project to `.env`:
56+
Replicate `.env.example` as `.env` (in project root directory) using:
6057

6158
cp .env.example .env
6259

63-
Edit your new `.env` file and update the required information:
60+
Update `.env` to reflect:
6461

65-
- **STRIPE_SECRET_KEY**: Your Stripe private key.
66-
- **NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY**: Your Stripe publishable key.
67-
- **NEXTAUTH_SECRET**: Used to encrypt the NextAuth.js JWT ([learn more](https://next-auth.js.org/configuration/options#nextauth_secret)). You can use `openssl rand -base64 32` to generate a new one.
68-
- **CONNECT_ONBOARDING_REDIRECT_URL**: The host where your application will run (if local you can use `"http://localhost:3000"`)
62+
- **STRIPE_SECRET_KEY**: Your Stripe private key
63+
- **NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY**: Your Stripe publishable key
64+
- **NEXTAUTH_SECRET**: For JWT encryption by NextAuth.js ([learn more](https://next-auth.js.org/configuration/options#nextauth_secret)). Use `openssl rand -base64 32` to obtain a new one
65+
- **CONNECT_ONBOARDING_REDIRECT_URL**: Your application host, for local use, use "<http://localhost:3000>"
6966

70-
### Setting up the database
67+
### Database Setup
7168

72-
On a Mac, follow these instructions to install Postgres:
69+
On Mac, follow these instructions to install Postgres:
7370

7471
brew install postgresql@14
7572
createuser -s postgres
7673

77-
You can learn more about the `createuser` step [here](https://stackoverflow.com/a/15309551).
74+
You'll find more about the `createuser` step [here](https://stackoverflow.com/a/15309551).
7875

79-
Now you need to create the database:
76+
Next, create the database with:
8077

8178
npx prisma db push
8279

83-
If this fails for any reasons such as permissions being denied, there's an included idempotent script you can run:
80+
If it errors out (perhaps due to permission issues), simply run the included script:
8481

8582
./db/setup-database.postgres.sh
8683

87-
This will create a `issuing_treasury` database in your local Postgres instance.
84+
This script creates a local Postgres `issuing_treasury` database.
8885

89-
### Running the application
86+
### Application Launch
9087

91-
In order to run the application, after you installed the dependencies and created the `.env` file run the following command:
88+
After necessary setups, launch the application with `npm run dev`.
9289

93-
npm run dev
90+
*Note: This application serves as an example and should not proceed to production deployment as it is.*
9491

95-
*Notice: This application is intended to be an example, and it should not be run in production as is.*
92+
## Acknowledgment to Devias Theme
93+
94+
The Devias theme significantly contributed to the swift construction of this sample app. Besides providing an elegant display, Devias offers a streamlined integration with Material UI. The effective utilization of this free theme allowed us to deliver a high-quality and engaging sample app.
95+
96+
## Accelerating Development with Devias Pro
97+
98+
Although the free Devias theme was instrumental in building this sample application, for developers who are aiming for a full-featured, production-ready application, we recommend the Devias Pro version.
99+
100+
Devias Pro extends beyond the capacity of the free version, providing an extensive array of advanced components and features designed to expedite and enrich your development process. With Devias Pro, you gain access to additional layouts, advanced React components, and pre-built dashboards, not to mention TypeScript support that underpins clean, robust, and scalable code.
101+
102+
One of the key advantages of Devias Pro is its inclusion of Figma design files. These files empower developers to efficiently build complex user experiences with precision and consistency. The design resources and components available in Devias Pro are patterned after modern UX/UI best practices, providing a smooth, optimized user experience out of the box.
103+
104+
By choosing Devias Pro, you're not just getting a theme; you're getting a robust toolset designed to help you turn your ideas into fully fledged, industrial-strength applications faster. It's a springboard that propels your project from its inception to a production-ready state in less time.
105+
106+
We appreciate the pivotal role Devias themes have played in the development of this sample app, and wholeheartedly recommend a step up to Devias Pro for developers keen on accelerating their development cycles, improving the overall quality of their products, and delivering a top-tier user experience.
107+
108+
You can explore and experience the prodigious benefits of Devias Pro [here](https://material-kit-pro-react.devias.io/).

0 commit comments

Comments
 (0)