Skip to main content
A plan is an on-chain instruction: buy this stock or basket, this much, this often. It lives in the PlanRegistry contract, and an executor (the Portir agent, or yourself) runs it.
Smart timing, buy when fair, baskets

Smart timing, buy when fair, baskets

Plan types

Recurring

Weekly, every 2 weeks or monthly. Runs forever until you pause or cancel it.

Buy when fair (once)

One buy, as soon as the price clears. Watched every 15 minutes for up to 7 days, then the order closes.

Settings

How a run is decided

Before buying, the news check may hold the buy back while the window is still open.
Plan #13 as a flow: trigger, basket, session, Guard, news, funds, six buys, delivery, record

Plan #13 as a flow: trigger, basket, session, Guard, news, funds, six buys, delivery, record

Outcomes

Every run is written to PlanRegistry with a spread and a one-sentence reason:
What happened: every run with its outcome and reason, read from PlanRegistry

What happened: every run with its outcome and reason, read from PlanRegistry

Waited runs are logged sparingly (every 6 hours by default) so they do not cost gas every 15 minutes.

Funding

You approve PlanRegistry (never the agent’s address) for USDT. On a due run the executor calls pullFunds, which moves at most the plan amount for that run. Anything not spent goes back through returnFunds. If your allowance or balance is below one run, nothing is pulled and nothing is recorded.
Each holding needs at least 1perrun.Forbaskets,thesmallestweightsetstheplanminimum:a1 per run. For baskets, the smallest weight sets the plan minimum: a 10 run of a basket whose smallest weight is 10% buys $1 of that holding.
Your plans with their next run and last outcome

Your plans with their next run and last outcome

Managing a plan

From the plan page you can change the amount, cadence or smart timing (updatePlan, the next run date is kept), pause (cancelPlan) and resume (resumePlan). A finished one-time plan cannot be resumed.