Inspiration

Small businesses often agree on a job, collect a deposit through PayPal, and begin preparing the work. Then the customer sends one small message:

“Can we make ten of those hoodies instead?”

That sentence sounds simple, but it changes the order, price, payment, and instructions given to the person doing the work. Today, businesses usually manage this across chats, invoices, spreadsheets, and memory. Details get missed, extra work goes unpaid, and both sides can end up remembering a different agreement.

We built Pact because a customer change should not create confusion. It should become a clear, approved update that keeps the agreement, payment, and final work aligned.

What it does

Pact turns customer change requests into reviewed, payment-ready agreement updates.

A business first creates an agreement describing the work, price, and required deposit. The customer reviews and approves it, then pays through PayPal.

If the customer later asks for a change, Pact uses AI to identify what may have changed. For example, it can understand that “make ten of those hoodies instead” means changing an order from 50 shirts to 40 shirts and 10 hoodies.

The AI does not approve the change or decide the price. It prepares a proposal for the business to review. The business confirms the quantities, sizes, price, and other details before publishing a new version.

The customer then sees exactly what changed, approves that specific revision, and pays any additional amount through PayPal. Once the payment is confirmed, Pact produces an updated job sheet so the fulfillment team works from the latest approved agreement.

Every important decision remains with the business and customer. Pact coordinates the process between them.

How we built it

We started with one complete story: an agreement is created, approved, funded, changed, approved again, and turned into updated work instructions.

Pact has three connected views:

  • A business workspace for reviewing requests, preparing revisions, managing payments, and releasing work.
  • A customer portal for reviewing changes, approving exact agreement versions, and completing PayPal payments.
  • A fulfillment view showing the latest approved and funded instructions.

Gemini helps interpret customer language and produces a structured proposal with evidence from the original message. The business must review this proposal before it affects the agreement.

PayPal handles the original deposit, additional payments, and merchant-reviewed refunds through its sandbox environment. Pact independently verifies payment results instead of trusting that a customer simply returned from the checkout page.

Behind the interface, every published revision is preserved. A new change creates a new version rather than silently editing the agreement everyone previously approved.

How we used Render

We used Render to make Pact available as a public, working demo without spending anything. Render hosts the web application and PostgreSQL database, runs database migrations during deployment, and gives PayPal a stable public endpoint for verified payment notifications.

Pact is deployed directly from our GitHub repository, making it easy to ship fixes and keep the demo current. Because we stayed entirely on Render’s free resources, we designed payment recovery to work through verified PayPal webhooks and an in-app status check instead of depending on a paid background worker.

Render turned Pact from a local prototype into a complete workflow that judges can open and test from anywhere.

Challenges we ran into

The hardest part was realizing that a payment button is only a small part of a reliable payment workflow.

A customer can close the browser, return before a payment is confirmed, refresh the page, or trigger the same notification more than once. Pact must still determine what PayPal actually recorded without charging twice or incorrectly marking an agreement as funded.

Customer messages created a different challenge. People do not describe changes using database fields. They say things like “use the new logo,” “make ten of those hoodies,” or “can we move delivery to Friday?” The AI needs to understand the request without being allowed to make business decisions.

We solved this by separating interpretation from authority. Gemini can suggest what changed, but only the merchant can confirm the scope and price. Only the customer can approve the revision and authorize the payment.

We also had to make a complex workflow understandable in a short demo. Agreement versions, payment states, approvals, and fulfillment rules are complicated internally, but the user should only need to understand one question at each step: who needs to act next?

Accomplishments that we're proud of

We built the complete amendment journey instead of stopping at an AI-generated summary.

In our PayPal sandbox tests, Pact handled the original deposit, a customer-requested amendment, an additional payment, and an updated job sheet. It also handled payment recovery and merchant-reviewed refund behavior without treating a browser redirect as proof of payment.

We are especially proud that the AI remains useful without becoming the decision-maker. It reduces the work required to understand a customer request while keeping pricing, approvals, payments, and agreement records under human control.

The same workflow also works across two different examples: a custom apparel order and a website project. The details change, but the central problem remains the same—keeping changing work aligned with what was approved and paid for.

What we learned

We learned that the difficult part of changing an agreement is not editing a document. It is coordinating everything affected by that change.

The message, scope, price, approval, payment, and work instructions must all refer to the same version. If even one of them falls behind, the business can perform the wrong work or lose money.

We also learned that AI is most valuable here when it helps people notice and organize changes. Giving it authority over prices or payments would make the workflow less trustworthy, not more useful.

Finally, we learned that payment systems need to be designed for uncertainty. A successful-looking screen is not enough. Pact has to verify the result with PayPal and safely recover when the answer is temporarily unknown.

What's next for Pact

Next, we want to test Pact with real small businesses that regularly handle custom orders and project changes. This will help us understand which types of amendments create the most repeated work and where Pact saves the most time.

We also want to make customer requests easier to bring into Pact through channels businesses already use. Pact currently supports its customer portal and Telegram intake; future connectors could include email and the official WhatsApp Business platform.

We plan to improve change comparison, notifications, attachment handling, and long-term deployment reliability. We also want to expand the template system carefully for businesses such as event services, fabrication, repair, and installation.

The long-term goal is simple: whenever a customer changes the plan, Pact makes sure everyone knows what changed, agrees to it, pays the correct amount, and works from the same instructions.

Built With

Share this project:

Updates

Submission history