Skip to content
NEWCollect for MSMEs: UPI Autopay, eNACH & remindersExplore app ↗

Order Integration

Order Integration is used when you need to collect a payment without first creating a student record in Jodo.

Use this pattern for event fees, application fees, registration payments, one-time charges, or other ad-hoc collections where the payer and payment details are enough to create checkout.

  1. Your system creates a Pay Order with payer details, amount details, and an optional callback URL.
  2. Jodo returns an order_id and hosted redirect_url.
  3. Your application opens the redirect_url for the payer.
  4. Jodo collects the payment.
  5. Your system receives webhook events and can fetch order status for reconciliation.

This API can be used to create the pay order.

POST {{base_url}}/api/v1/integrations/pay/orders
{
"name": "Customer name",
"phone": "9876543210",
"identifier": "any_ref_id",
"email": "you@example.com",
"custom_identifier": "test4567",
"grade": "grade_5733",
"new_admission": false,
"academic_year_start": "2022",
"academic_year_end": "2023",
"student_name": "Student Name",
"collector_code": "1",
"details": [
{
"component_type": "Payable Amount",
"amount": 1000.0
}
],
"callback_url": "https://erpsystem.com/order-status"
}
{
"name": "Customer Name",
"phone": "9876543210",
"identifier": "any_ref_id",
"email": "you@example.com",
"custom_identifier": "test4567",
"grade": "grade_5733xxx",
"new_admission": false,
"academic_year_start": "2022",
"academic_year_end": "2023",
"student_name": "Student Name",
"collector_code": "1",
"details": [
{
"component_type": "COURSE_FEE",
"amount": "1.0"
},
{
"component_type": "ADMISSION_FEE",
"amount": "1.0"
},
{
"component_type": "TUITION_FEE",
"amount": "1.0"
}
],
"callback_url": "http://example.com",
"notes": [
{
"key": "user_id",
"value": "123"
}
]
}
{
"data": {
"order_id": "order_123456789",
"redirect_url": "https://pay.jodo.in/p/<order_xxx>/<transaction_id>?callback_url=xxx"
}
}

This API can be used to get the order details.

GET {{base_url}}/api/v1/integrations/pay/orders/:order_id
{
"status": "success",
"data": {
"id": "order_12345",
"name": "Customer name",
"phone": "9876543210",
"identifier": "any_ref_id",
"email": "you@example.com",
"custom_identifier": "test4567",
"grade": "grade_5733xxx",
"new_admission": false,
"academic_year_start": "2022",
"academic_year_end": "2023",
"student_name": "Student Name",
"paid_at": null,
"status": "unpaid",
"details": [
{
"component_type": "Payable Amount",
"amount": 1000.0,
"settlement_utr": null,
"settled_at": null
}
],
"notes": [
{
"key": "user_id",
"value": "123"
}
]
}
}
{
"status": "success",
"data": {
"id": "order_12345",
"name": "Customer name",
"phone": "9876543210",
"identifier": "any_ref_id",
"email": "you@example.com",
"custom_identifier": "test4567",
"grade": "grade_5733xxx",
"new_admission": false,
"academic_year_start": "2022",
"academic_year_end": "2023",
"student_name": "Student Name",
"paid_at": "2022-03-01T10:05:45Z",
"status": "paid",
"details": [
{
"component_type": "Payable Amount",
"amount": 1000.0,
"settlement_utr": null,
"settled_at": null
}
],
"notes": [
{
"key": "user_id",
"value": "123"
}
]
}
}
{
"status": "success",
"data": {
"id": "order_12345",
"name": "Customer name",
"phone": "9876543210",
"identifier": "any_ref_id",
"email": "you@example.com",
"custom_identifier": "test4567",
"grade": "grade_5733xxx",
"new_admission": false,
"academic_year_start": "2022",
"academic_year_end": "2023",
"student_name": "Student Name",
"paid_at": "2022-03-01T10:05:45Z",
"status": "paid",
"details": [
{
"component_type": "Payable Amount",
"amount": 1000.0,
"settlement_utr": "settl_1234",
"settled_at": "2022-03-02T10:05:45Z"
}
],
"notes": [
{
"key": "user_id",
"value": "123"
}
]
}
}