@@ -37,51 +37,70 @@ Submitting for verification has the same data requirements as production: full n
3737
3838Fix-and-resubmit example — the standard integration loop:
3939
40- ``` bash
41- # 1. Create a customer whose fullName ends in "001" (stays PENDING, submission allowed)
42- curl -X POST " https://api.lightspark.com/grid/2025-10-13/customers" \
43- -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
44- -H " Content-Type: application/json" \
45- -d ' {
46- "customerType": "INDIVIDUAL",
47- "fullName": "Jane Doe 001",
48- "birthDate": "1990-01-15",
49- "nationality": "US"
50- }'
51-
52- # 2. First verification attempt: RESOLVE_ERRORS lists every missing field and document
53- curl -X POST " https://api.lightspark.com/grid/2025-10-13/verifications" \
54- -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
55- -H " Content-Type: application/json" \
56- -d ' { "customerId": "Customer:..." }'
57-
58- # 3. Supply the missing fields...
59- curl -X PATCH " https://api.lightspark.com/grid/2025-10-13/customers/Customer:..." \
60- -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
61- -H " Content-Type: application/json" \
62- -d ' {
63- "customerType": "INDIVIDUAL",
64- "taxIdType": "SSN",
65- "taxIdentifier": "111-22-3333",
66- "address": { "line1": "123 Main St", "city": "Seattle", "state": "WA", "postalCode": "98101", "country": "US" }
67- }'
68-
69- # ...and the identity document (any JPEG, PNG, or PDF works in sandbox)
70- curl -X POST " https://api.lightspark.com/grid/2025-10-13/documents" \
71- -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
72- -F " documentHolder=Customer:..." \
73- -F " documentType=PASSPORT" \
74- -F " country=US" \
75- -F " documentNumber=A12345678" \
76- -F " issuingAuthority=U.S. Department of State" \
77- -F " file=@./passport.jpg"
78-
79- # 4. Resubmit — now advances to PENDING_MANUAL_REVIEW
80- curl -X POST " https://api.lightspark.com/grid/2025-10-13/verifications" \
81- -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
82- -H " Content-Type: application/json" \
83- -d ' { "customerId": "Customer:..." }'
84- ```
40+ <Steps >
41+ <Step title = " Create a customer with a 001 suffix" >
42+ A ` fullName ` ending in ` 001 ` keeps the customer ` PENDING ` , so submission is allowed. Persist the returned ` id ` for the following steps.
43+
44+ ``` bash
45+ curl -X POST " https://api.lightspark.com/grid/2025-10-13/customers" \
46+ -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
47+ -H " Content-Type: application/json" \
48+ -d ' {
49+ "customerType": "INDIVIDUAL",
50+ "fullName": "Jane Doe 001",
51+ "birthDate": "1990-01-15",
52+ "nationality": "US"
53+ }'
54+ ```
55+ </Step >
56+
57+ <Step title = " Submit for verification" >
58+ The first attempt returns ` verificationStatus: RESOLVE_ERRORS ` with every missing field and document listed in ` errors ` .
59+
60+ ``` bash
61+ curl -X POST " https://api.lightspark.com/grid/2025-10-13/verifications" \
62+ -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
63+ -H " Content-Type: application/json" \
64+ -d ' { "customerId": "Customer:..." }'
65+ ```
66+ </Step >
67+
68+ <Step title = " Supply the missing fields and document" >
69+ Patch the missing fields onto the customer, then upload the identity document. Any JPEG, PNG, or PDF works in sandbox.
70+
71+ ``` bash
72+ curl -X PATCH " https://api.lightspark.com/grid/2025-10-13/customers/Customer:..." \
73+ -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
74+ -H " Content-Type: application/json" \
75+ -d ' {
76+ "customerType": "INDIVIDUAL",
77+ "taxIdType": "SSN",
78+ "taxIdentifier": "111-22-3333",
79+ "address": { "line1": "123 Main St", "city": "Seattle", "state": "WA", "postalCode": "98101", "country": "US" }
80+ }'
81+
82+ curl -X POST " https://api.lightspark.com/grid/2025-10-13/documents" \
83+ -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
84+ -F " documentHolder=Customer:..." \
85+ -F " documentType=PASSPORT" \
86+ -F " country=US" \
87+ -F " documentNumber=A12345678" \
88+ -F " issuingAuthority=U.S. Department of State" \
89+ -F " file=@./passport.jpg"
90+ ```
91+ </Step >
92+
93+ <Step title = " Resubmit" >
94+ The verification now advances to ` verificationStatus: PENDING_MANUAL_REVIEW ` and the customer's ` kycStatus ` is ` PENDING ` .
95+
96+ ``` bash
97+ curl -X POST " https://api.lightspark.com/grid/2025-10-13/verifications" \
98+ -u " $GRID_CLIENT_ID :$GRID_CLIENT_SECRET " \
99+ -H " Content-Type: application/json" \
100+ -d ' { "customerId": "Customer:..." }'
101+ ```
102+ </Step >
103+ </Steps >
85104
86105### Business customer verification (KYB)
87106
0 commit comments