# Pay on Delivery

Pay on Delivery (POD) is a CTRL feature aimed at facilitating payment upon receipt of goods. This feature should enable a seamless process for users who opt for payment upon delivery, providing coordination between users, riders, and receivers to streamline transactions securely.

To utilize our POD feature, please proceed with the following steps.

#### **Booking Stage:**

* [ ] Specify a "podAmount" field on each drop when booking a delivery. This field indicates the cost of each item to be delivered.
* [ ] Information on how to book a POD delivery can be found [here](/delivery-api/bookings/request-delivery.md#sample-success-data-pay-on-delivery).

#### Delivery Stage:

* [ ] Generate an account number by making a POST request to the /drops/payOnDelivery endpoint with a dropId field in the body.
* [ ] Information on how to generate an account number can be found [here](https://app.gitbook.com/o/AbqJZ15X79KABRN1WQFQ/s/-MjBhHPDe_zW7U-q8_Q1/~/changes/85/api/bookings/generate-pod-account-number).

The bank account details are securely generated via Paystack and sent to the receiver of the goods. The account remains valid for 8 hours.

#### **Payment Confirmation:**

* [ ] The receiver uses the provided bank account details to pay for the goods within the stipulated 8-hour window.
* [ ] Upon successful payment, a confirmation is sent to the user and rider, indicating that the item has been paid for.
* [ ] The transaction is marked as complete within the system.

### **Communcation:**

1. Booking Stage: An email is sent to the receiver informing them a POD booking has been made and outlining the POD process
2. Delivery Stage:&#x20;
   * Rider's App Notification: Rider receives a notification upon assignment indicating that the delivery requires POD.
3. Bank Account Creation:
   * Receiver Confirmation: An SMS and email containing the bank account details for payment are sent to the receiver.
4. Payment Confirmation:
   * Upon successful payment, a confirmation is sent to the user and rider, indicating that the item has been paid for.
5. Time-Sensitive Notifications:
   * Payment Deadline Alert: Notifications are dispatched to the receiver, rider, and user when there is limited time left before the payment deadline.
   * Payment Failure: Notifications are sent to both the user and rider in case of payment failure, with instructions on how to proceed.
   * Expired Bank Account: Alerts are sent to the user and receiver if the bank account expires before payment is made, with instructions for reactivation or alternative payment methods.
6. Transaction Summary:  After completion, an email or SMS summarizing the transaction details is sent to the user, rider, and receiver for record-keeping purposes.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sendstackhq.com/guides/pay-on-delivery.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
