Skip to content

Commit

Permalink
donate
Browse files Browse the repository at this point in the history
  • Loading branch information
21fahm committed Dec 25, 2024
1 parent 3032fba commit 22e8fca
Show file tree
Hide file tree
Showing 19 changed files with 389 additions and 58 deletions.
43 changes: 29 additions & 14 deletions content/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,39 +30,54 @@ layout: hextra-home
imageClass="hx-top-[40%] hx-left-[24px] hx-w-[180%] sm:hx-w-[110%] dark:hx-opacity-80"
style="background: radial-gradient(ellipse at 50% 80%,rgba(194,97,254,0.15),hsla(0,0%,100%,0));"
>}}
{{< hextra/feature-card
title="Donations Checkout 🤑"
subtitle="Use our built in donations/tips checkout to get support in seconds"
class="hx-aspect-auto md:hx-aspect-[1.1/1] max-md:hx-min-h-[340px]"
image="https://res.cloudinary.com/dtz5vn3yl/image/upload/v1735131351/iaayyugpvdernrgyenff.png"
imageClass="hx-top-[40%] hx-left-[24px] hx-w-[180%] sm:hx-w-[110%] dark:hx-opacity-80"
style="background: radial-gradient(ellipse at 50% 80%,rgba(194,97,254,0.15),hsla(0,0%,100%,0));"
>}}
{{< /hextra/feature-grid >}}
<div class="hx-mb-10"></div>

{{< hextra/feature-grid >}}
{{< hextra/feature-card
link="docs/autopayments"
link="docs/autopayments/checkout"
icon="globe-alt"
title="Checkout"
subtitle=" Seamlessly receive recurring payments with our checkout system."
>}}
{{< hextra/feature-card
link="docs/autopayments/api"
icon="refresh"
title="Auto-payments"
subtitle="Start receiving recurring payments from your customers and/or business partners. The FIRST auto-payment system that is self-custody!💳"
subtitle="Integrate automated payments into your workflow—secure, decentralized, and effortless!💳"
>}}
{{< hextra/feature-card
link="docs/silent"
icon="lock-closed"
title="Bitcoin Silent Payments"
subtitle="Send and receive silent payments securely within the app or via our SDK.🥷"
>}}
{{< hextra/feature-card
link="docs/private"
icon="lock-closed"
title="Privacy"
subtitle="We're make Bitcoin and Ethereum cypherpunk again. Donate or receive stealth payments through the app or build with our SDK and start receiving private transactions🥷"
subtitle="Enable shielded, private transfers effortlessly—cypherpunk made simple! 🥷"
>}}
{{< hextra/feature-card
link="https://smart.shakesco.com"
icon="finger-print"
title="Smart wallet"
subtitle="Create smart wallets for your dAPP users in seconds. No seed phrase required. Powered by MPC security! 🤯"
>}}
{{< hextra/feature-card
link="docs/userop"
icon="clipboard-list"
title="Userop"
subtitle="Building a smart wallet and want to estimate the amount of gas your user will pay? No problem we got you covered😉"
link="docs/support"
icon="heart"
title="Donations"
subtitle="Receive contributions easily through our checkout or API—secure and seamless! 💝"
>}}
{{< hextra/feature-card
link=https://get.shakesco.com
icon="device-mobile"
title="Download"
subtitle="To perform recurring payments you need to deploy/open an auto account. It is labelled 'Business auto' when you open your business account. 📱"
subtitle="To perform recurring payments you need to deploy/open an auto account. It is labelled 'Business auto' when you create your business wallet. 📱"
>}}
{{< /hextra/feature-grid >}}
139 changes: 127 additions & 12 deletions content/docs/autopayments/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,9 @@ Check if the request is sent to your Shakesco app. If you request business check
This is a POST request
{{< /callout >}}

To request a Customer or a Business, send a request to this url `https://autopay.shakesco.com/request`. Here is an Example:
To check if you can request a certain user [check here](#can-request). To check which payer you are requesting, [check here](#check-payer)

To request a customer or a business, send a request to this url `https://autopay.shakesco.com/request`. Here is an Example:

```javascript {filename="index.js"}
const config = {
Expand Down Expand Up @@ -293,6 +295,103 @@ Amount each splitter will pay. Parse depending on currency code
}
```

### Check Payer

{{< callout type="info" >}}
This is a POST request
{{< /callout >}}

Before requesting, check if the payer is a business or user. Businesses and customers have different [charges](https://shakesco.com/charges) per every successful transaction.

```javascript {filename="index.js"}
const config = {
method: "POST",
url: "https://autopay.shakesco.com/is_business",
headers: {
accept: "application/json",
Authorization: `Bearer ${process.env.YOUR_API_KEY}`,
},
data: {
delegate_address: user_delegate_address,
},
};

axios
.request(config)
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.log(error);
});
```

#### Info

##### user_delegate_address

User's Shakesco/Business card address.

#### Response

```shell {filename="cmd"}
{
id: 1,
is_business: "false"
}
```

### Can Request

{{< callout type="info" >}}
This is a POST request
{{< /callout >}}

Before requesting, check if the payer can be requested. If not, they should accept requests from there Shakesco app.

```javascript {filename="index.js"}
const config = {
method: "POST",
url: "https://autopay.shakesco.com/can_request",
headers: {
accept: "application/json",
Authorization: `Bearer ${process.env.YOUR_API_KEY}`,
},
data: {
delegate_address: user_delegate_address,
network: Network
},
};

axios
.request(config)
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.log(error);
});
```

#### Info

##### user_delegate_address

User's Shakesco/Business card address.

##### Network

Depending on where your Business auto account address is deployed. Enter 1 for Ethereum or 137 for Polygon

#### Response

```shell {filename="cmd"}
{
id: 1,
status: "true"
}
```

### Currency codes

{{< callout type="info" >}}
Expand Down Expand Up @@ -470,50 +569,66 @@ Depending on where your Business auto account address is deployed. Enter 1 for E

#### 400

Check the currency code that you are parsing. Make sure it in Upper case. Ie: BTC, ETH etc

```shell {filename="cmd"}
{
error: "Bad Request";
error: "Bad Request"
}
```

Check the currency code that you are parsing. Make sure it in Upper case. Ie: BTC, ETH etc
Check if you have parsed API_KEY. Also parse API_KEY like so `Bearer API_KEY` in Authorization.

#### 401

```shell {filename="cmd"}
{
error: "Unauthorized";
error: "Unauthorized"
}
```

Check if you have parsed API_KEY. Also parse API_KEY like so `Bearer API_KEY` in Authorization.

#### 402

Make payment because you have reached your request limit.

```shell {filename="cmd"}
{
error: "Payment Required";
error: "Payment Required"
}
```

Make payment because you have reached your request limit.

#### 403

Check if you have parsed or the user has given you a valid Shakesco/Business Card address

```shell {filename="cmd"}
{
error: "Forbidden";
error: "Forbidden"
}
```

#### 404

Check if you have parsed your API_KEY correctly. Also check if you have parsed the auto_address associated with your API_KEY.

#### 500
```shell {filename="cmd"}
{
error: "Not a valid address"
}
```

```shell {filename="cmd"}
{
error: "Internal Server Error";
error: "User Not Found"
}
```

#### 500

Something went wrong. If the issue persists, [contact us immediatelty](https://shakesco.com/contact)

```shell {filename="cmd"}
{
error: "Internal Server Error"
}
```
11 changes: 7 additions & 4 deletions content/docs/autopayments/checkout.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,8 @@ To get started, first you need to send an API call to create a session for a spe
This is a POST request
{{< /callout >}}

Before requesting, check if the payer is a business or user. Businesses and customers have different [charges](https://shakesco.com/charges) per every successful transaction. To check which payer you are requesting, [check here](../api#check-payer)

To get the URL, send a request to this url `https://autopay.shakesco.com/start_session`. Here is an Example:

```javascript {filename="index.js"}
Expand Down Expand Up @@ -205,10 +207,11 @@ Here are the tokens and coins your auto account supports:
###### Polygon

1. **Polygon**
2. **WETH**
3. **USDT**
4. **USDC**
5. **DAI**
2. **WBTC**
3. **WETH**
4. **USDT**
5. **USDC**
6. **DAI**

###### Ethereum

Expand Down
17 changes: 9 additions & 8 deletions content/docs/autopayments/integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,24 +37,25 @@ The user will always return has_paid as true, until you request again. If you re

#### Requesting token

We have added support for you to request tokens from users. For now your Polygon auto-payment account supports WETH, USDT, DAI and USDC. On Ethereum: USDT, DAI and USDC.
We have added support for you to request tokens from users. For now your Polygon auto-payment account supports WETH, WBTC, USDT, DAI and USDC. On Ethereum: USDT, DAI and USDC.

{{< callout type="warning" >}}
When entering token address, please make sure it is a checksummed address. Otherwise your autopayment account will not work properly. Especially with STABLECOINS! If you don't want to accept tokens, just enter an empty string in its place.
{{< /callout >}}

Thankfully, we've done the work for you with Polygon:
Thankfully, we've taken care of the work for you. Starting with Polygon:

1. **WETH** - "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"
2. **USDT** - "0xc2132D05D31c914a87C6611C10748AEb04B58e8F"
3. **USDC** - "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"
4. **DAI** - "0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"
2. **WBTC** - "0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6"
3. **USDT** - "0xc2132D05D31c914a87C6611C10748AEb04B58e8F"
4. **USDC** - "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"
5. **DAI** - "0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"

For Ethereum:

5. **USDC** - "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
6. **USDT** - "0xdAC17F958D2ee523a2206206994597C13D831ec7"
7. **DAI** - "0x6B175474E89094C44Da98b954EedeAC495271d0F"
6. **USDC** - "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
7. **USDT** - "0xdAC17F958D2ee523a2206206994597C13D831ec7"
8. **DAI** - "0x6B175474E89094C44Da98b954EedeAC495271d0F"

#### Split

Expand Down
34 changes: 33 additions & 1 deletion content/docs/autopayments/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ If you want to see the fee charged for every transaction, go [__here__](https://

#### Request user

Send request to user. Ask user for Shakesco card/ Business card address.
To check if you can request a certain user [check here](#can-request). To check which payer you are requesting, [check here](#check-payer)

Send request to user. Ask user for Shakesco/Business card address.

```javascript {filename=index.js}
const address = /* Initialize your automation address. Can be found in your dashboard https://users.shakesco.com */
Expand All @@ -119,6 +121,36 @@ Send request to user. Ask user for Shakesco card/ Business card address.
console.log(requestBusiness);//Requested business successfully
```

#### Can Request

Before requesting, check if the payer can be requested. If not, they should accept requests from there Shakesco app.

```javascript
const your_smart_wallet_address = ""; // get on your dashboard https://users.shakesco.com/login

const shakescocontract = new Automation(your_smart_wallet_address, process.env.SHAKESCOAPIKEY, "1");

const delegateAddress = /*Ask user/business for their Shakesco card/delegate/business card ONLY.*/

const canre = await shakescocontract.canRequest(delegateAddress);
console.log(canre); // {"id":1,"status":"true"}
```

#### Check Payer

Before requesting, check if the payer is a business or user. Businesses and customers have different [charges](https://shakesco.com/charges) per every successful transaction.

```javascript
const your_smart_wallet_address = ""; // get on your dashboard https://users.shakesco.com/login

const shakescocontract = new Automation(your_smart_wallet_address, process.env.SHAKESCOAPIKEY, "1");

const delegateAddress = /*Ask user/business for their Shakesco card/delegate/business card ONLY.*/

const canre = await shakescocontract.isBusiness(delegateAddress);
console.log(canre); // {"id":1,"is_business":false}
```

{{< callout type="info" >}}
Period should be in seconds. Amount should be in USD. Eg: "20" is in USD. Boolean values are returned as __STRINGS__
{{< /callout >}}
Expand Down
9 changes: 2 additions & 7 deletions content/docs/private/integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Stealth Address Integration
type: docs
prev: docs/private/
next: docs/userop
next: docs/support
---

> Special credit to [_umbra-cash_](https://app.umbra.cash/ "Umbra").
Expand Down Expand Up @@ -176,9 +176,4 @@ You have successfully sent a private transaction. We aim to help umbra expand th

### Contribute

If you love what we do to progress privacy, [contribute](https://me-qr.com/text/ytOt1BKQ "eth_addr") to further development

<img
src="/images/ethereum_address.png"
alt="eth_addr" width="300"
height="200">
If you love what we do to progress privacy, [contribute](https://donate.shakesco.com/@shakesco.sns "shakesco_donations") to further development
Loading

0 comments on commit 22e8fca

Please sign in to comment.